• Answers will occasionally be moved to the Sandbox archive when there are too many of them. When using them to report bugs, keep an eye on the post.

  • You may also want to take a look at the Stack Exchange's Sandbox chat room

  • This site, Meta Stack Exchange, is usually used as a "test bed" for pending changes happening to the way text is rendered on all network sites. Changes to text rendering that are going to be rolled out to the network are usually deployed here first to test them out and fix any potential glitches. Currently, there are no such changes pending, but if there were, keep in mind that text posted here may render differently from the other sites until the changes roll out to them as well.

As per Jeff's suggestion in this comment:

You can use this question as a formatting sandbox. You can:

  • edit this question itself (Community Wiki questions such as this one require only 100 reputation to edit instead of 2,000)
  • post answers to this question (This question might be protected, requiring earning 10 reputation on this site to answer)
  • post comments to this question or its answers
  • test suspected bugs with the editor or the rendering
  • post ponies (only when mods are asleep)

Beware that since the changes to syntax highlighting in December 2010, and the inline hints added in March 2011, no syntax highlighting is applied unless the question's tags or an inline hint enable it. So, to test highlighting here in the sandbox:

  1. As of January 8, 2019, you can use GitHub-flavor fenced code blocks in your posts, specifying the language after the opening fence:

    While not hinted otherwise: <html></html> source <b>goes</b> "here".
    var a = 3;
    while (not (a > 0)) {
        alert("JavaScript code <b>goes</b> here.");
  2. Or:

    • Create code blocks in any way (using the fence notation above, the four-space indent form, or using HTML <pre><code> tags).

    • Save your post!

    • Use your browser's developer tools to edit the resulting HTML. To open developer tools, press F12, or ⌥⌘ I on Mac.

    • Find the <pre> element and add the attribute class="prettyprint", or change it into one of the valid syntax hints linked above, like class="lang-vb prettyprint".

    • Run the following in the location bar: javascript:prettyPrint(); or prettyPrint() in the console.

Answers that are considered annoying or obnoxious, or that cause breakage for users, will be deleted. This is codified as a policy as of March 29, 2018.


290 Answers 290

8 9 10

testing data: scheme for inline svgs, doesn't work :-(

Testing !enter link description here




  • 1
    YouTube embedding isn't enabled here if that's what you were trying to test. Nov 30, 2022 at 19:15

[Paragraph in square brackets, containing a link https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem and some other text.]

Same test with backslashes… [Paragraph in square brackets, containing a link What is the XY problem? and some other text.]



okay, weird. So if you do:

> hi
> -1

, it looks like > hi -1 in the editor preview, but in the actual post, it looks like a quoted large heading. Why?

This, however,

> hi
> -

Looks like a quoted heading in both preview and the post. So I guess this is a bug with the reStructuredText section title formatting syntax?


Hm. To test that theory:


> hi
> =1

What if you do something other than a single 1?


> hi
> =2


> hi
> =a

hi =abc123

> hi
> =abc123

hi =ab

> hi
> =ab


> hi
> =⭐


> hi
> ==⭐

Oh but Zero-Width-Joiner sequence emoji (such as polar bear) don't do it:

hi ==🐻‍❄️

> hi
> ==🐻‍❄️


Trying out the code blocks:

four spaces:

import antigravity
#this is a comment

with ```python in front:

import antigravity
#this is a comment



Anchor tag link with scroll to text fragment

Markdown link with scroll to text fragment

  • Edit? hehehehe Apr 6, 2021 at 22:05
  • anchor tag workaround works, thanks
    – yurenchen
    Dec 28, 2022 at 0:22

A table where the markup for a row is commented out:

Col 1 Col 2 Col 3
hello world !

hello | world | ! |

| hello | world | ! |

A table where the markup for a row is commented out, but put at the end of the previous row's line:

Col 1 Col 2 Col 3
hello world !
hello world !
hello world !

Link to spec docs: https://github.github.com/gfm/#tables-extension-

The table is broken at the first empty line, or beginning of another block-level structure




[Tests for https://meta.stackoverflow.com/questions/422992/markdown-rendering-bug-different-between-preview-and-actual]



Posting a bug report on Stack Apps, I tried to link to its API docs:


It was unsuccessful, and making the link explicit with [http://url.com][1] doesn't work either because the link doesn't show up. E.g., this is supposed to be a link.

  • 1
    The Markdown for this answer is a direct copy of revision 4 of "Curly brackets in URLs" by Nikita Rybak et al. and is under a CC BY-SA 3.0 license. It was posted here to determine if SE's backend conversion of Markdown to HTML continued to have the problem which was asked about in that question.
    – Makyen
    Feb 6, 2023 at 21:24

This is just a test answer for images.

(source: googleapis.com)

  • @Glorfindel lol you should put exception in your script to ignore the sandbox, can't see much point fixing broken images here. (Unless of course you post them on purpose for testing, but that's not the case.) Feb 16, 2023 at 12:16
  • 1
    @ShadowWizardChasingStars yes, you're right ...
    – Glorfindel Mod
    Feb 16, 2023 at 12:17

The MusicBrainz API has information about artists and music bands. 1
An example – a request for the British rock band Coldplay is:
The JSON response contains – among other things – the 25 earliest album titles by the artist/band.
This information is in the release-groups array.
The start of this array, including its first object, is:

  "release-groups": [
      "id": "1dc4c347-a1db-32aa-b14f-bc9cc507b843",
      "secondary-type-ids": [],
      "first-release-date": "2000-07-10",
      "primary-type-id": "f529b476-6e62-324f-b0aa-1f3e33d313fc",
      "disambiguation": "",
      "secondary-types": [],
      "title": "Parachutes",
      "primary-type": "Album"

This JSON snippet shows that the first album by Coldplay is Parachutes.
It also gives an id, in this case 1dc4c347-a1db-32aa-b14f-bc9cc507b843,
which is a unique identifier of the album.

This identifier can be used to make a lookup in the Cover Art Archive API :
http://coverartarchive.org/release-group/1dc4c347-a1db-32aa-b14f-bc9cc507b843. 2

For each album, the JSON response contains some images, one of which is the front cover of the album.
The first few lines of the response to the above request are:

  "images": [
      "approved": true,
      "back": false,
      "comment": "",
      "edit": 22132705,
      "front": true,
      "id": 4086974851,
      "image": "http://coverartarchive.org/release/435fc965-9121-461e-b8da-d9b505c9dc9b/4086974851.jpg",
      "thumbnails": {
        "250": "http://coverartarchive.org/release/435fc965-9121-461e-b8da-d9b505c9dc9b/4086974851-250.jpg",
        "500": "http://coverartarchive.org/release/435fc965-9121-461e-b8da-d9b505c9dc9b/4086974851-500.jpg",
        "1200": "http://coverartarchive.org/release/435fc965-9121-461e-b8da-d9b505c9dc9b/4086974851-1200.jpg",
        "large": "http://coverartarchive.org/release/435fc965-9121-461e-b8da-d9b505c9dc9b/4086974851-500.jpg",
= = >   "small": "http://coverartarchive.org/release/435fc965-9121-461e-b8da-d9b505c9dc9b/4086974851-250.jpg"

Of interest here is the line
"small": "http://coverartarchive.org/release/435fc965-9121-461e-b8da-d9b505c9dc9b/4086974851-250.jpg".
That URL is a direct link to the front cover of the Parachutes album.

The code to create and visualize the API

The overall task is to use Postman to visualize all the album titles and front covers of a music band.
How to write code that achieves this has already been described in quite some detail in an answer to
How can I visualize an API mashup in Postman?
– Therefore, I will avoid lengthy discussions here and just present the code and a screenshot of the result:

const lock = setTimeout(() => {}, 43210);
const albumsArray = [];
const urlsArray = [];
const urlOuter = 'https://musicbrainz.org/ws/2/artist/' +
  pm.collectionVariables.get('MBID') + '?fmt=json&inc=url-rels+release-groups';
pm.sendRequest(urlOuter, (_, responseO) => {
  const bandName = responseO.json().name;
  const albums = responseO.json()['release-groups'];
  for (const item of albums) {
    urlsArray.push('https://coverartarchive.org/release-group/' + item.id);
  albumsArray.length = urlsArray.length = 15;
  const images = [];
  let countDown = urlsArray.length;
  urlsArray.forEach((url, index) => {
    asynchronousCall(url, imageURL => {
      images[index] = imageURL;
      if (--countDown === 0) { // Callback for ALL starts on next line.
        clearTimeout(lock); // Unlock the timeout.
        const albumTitles = albumsArray.map(value => ({ title: value }));
        const albumImages = images.map(value => ({ image: value }));
        const albumsAndImages = albumTitles.map(
          (item, i) => Object.assign({}, item, albumImages[i]));
        const template = `<table>
          <tr><th>` + bandName + `</th></tr>
          {{#each responseI}}
          <tr><td>{{title}}<br><img src="{{image}}"></td></tr>
        pm.visualizer.set(template, { responseI: albumsAndImages });
  function asynchronousCall (url, callback) {
    pm.sendRequest(url, (_, responseI) => {
      callback(responseI.json().images.find(obj => obj.front === true)
        .thumbnails.small); // Individual callback.

The result for Coldplay – and the documentation

Result and docs | Coldplay

How to download and run the Postman Collection

Running the Postman Collection should be straightforward.
Assuming you are using the desktop version of Postman, do as follows:

  1. Download and save
    in a suitable place on your hard drive.

  2. In Postman, Ctrl + O > Upload Files > MusicBands.pm_coll.json > Import.
    You should now see MusicBands among your collections in Postman.

  3. Collections > MusicBands > DummyRequest > Send. 3

  4. In the Postman Response Body, click Visualize.

  5. There should now be 15 albums if you scroll down – as indicated by the above screenshot.

The result for Kate Bush

The Postman collection includes detailed documentation on
how to perform the same request for a different artist / music band.
Here is what it looks like when using the MBID for Kate Bush.

Result for Kate Bush


1 This post relies heavily on How can I visualize a mashup API in Postman?.

2 This URL is automatically redirected to: https://ia800503.us.archive.org/29/items/mbid-435fc965-9121-461e-b8da-d9b505c9dc9b/index.json.

3 If you get an error, Something went wrong while running your scripts, try hitting Send again.


Testing markdown formatting followed by a forward slash





Result in comments:

Result in comments is the same as the unrendered markdown above.

Strike, bold italic etc. work again with code highlighting?
Even subtext or super?
SELECT * FROM tbl ORDER BY col1 , col2;
Strike, bold italic etc. work again with code highlighting?
Even subtext or super?
SELECT * FROM tbl ORDER BY col1 , col2;

This had been broken for the longest time ..


why doesn't this work in comments? S


Comparison, user custom sizing vs standard markdown + options/variations.
Re: Allow pasting images in HTML format

Using img src @700px

Additional disadvantage here is that there's no click-through to full size, even though all the image data must be downloaded to view in-line.

All these have clickthrough to the full image. More important for larger images, detailed photos etc.
Using standard markdown
enter image description here

Using imgur's built-in data save resizing on a fresh upload of the previous image to save cross-referencing
Admittedly, this is even more effort than img src
Size l
enter image description here
Size m
enter image description here

Image pre-resized to 700 & saved as 50% jpg
enter image description here


Badges :)

(Working tooltip with explanation and link to page)

🟤 Informed

This is a modified version of the tao excercise 3.2.3. (misinterpreted the question, and ended up with a different question).
(This post is long, I'm raising only two math questions, MQ1 and MQ2, The rest can be viewed as interpretation and reasoning behind those questions).

We are given two ways of creating a set.

  1. (A1) (universal specification on set) Suppose that for every set x, $P(x)$ is either true or false, then there exists a set ${x: P(x)}$ such that.
    $y \in {x: P(x)} \iff P(y)$

  2. (A2) (informally) any unordered collection of sets is a set.
    A set can have a set as an element.
    (Since we can talk about universal set, I wanted to express every set which is element of the universal set.)

A1 let us build sets whose elements are sets and there's a $P(x)$ associated with it.
A2 let us build sets whose elements are sets (and we don't have to think about $P(x)$)

So you have two way of creating a set.
I ask myself if both way of creating a set has equal power, ie all the sets which can be created by the 2nd can be also created by the first and vice versa.

Below are the proof I attempted to prove A2 $\to$ A1

Suppose you have an arbitrary set A which has sets as elements.
Now construct $P(x)$ such that $P(x) := x \in A $.
Now you have $y \in {x: P(x)} \iff P(y) := y \in A $.

Thus we showed all the sets that are expressable by A2 are subsets that are expressable by A1.

The first question to ask is,

(MQ1) Is the proposition and the proof above well-defined (not ill-formed) mathematically?

The rest goes on to ask another question if the answer to MQ1 is "at least partially" positive.

("at least partially", could mean, if they were asked in pre-1900 when the paradoxical set was not discovered, would it be a well-defined statement.
Or it could mean, to students who are studying not too rigorous elementary math (maybe someone who's studying pre-college math). It seems hard for me to see an intuitive reason why the answer is not even "partially" positive.)

Statements below this point are not mathematical statements.

Now, I'm not sure if the proof is ok..

Because.. without constructing the set A, $y \in A$ seems hypothetical.

My main concern is the argument: we have not built the set A, and yet claims if you give me set A, I would build $P(x)$ from it.
I wonder if that argument can be made safely.

I ask the following questions to investigate the concern.

QQ1. Given A2,
"assuming an arbitrary set A exists" statement does capture all the sets expressed by "set that has sets as elements"? (or it misses some?).

QQ2. Does the answer to QQ1 depends on the object we are dealing with?, (some object other than set, such as function, number etc)

I suspect the answer to QQ2 does depend on what kind of object we are dealing with.
The reasoning is the following.

If I say the answer is yes to the QQ1, and does accept the proof given below to conclude A1 $\iff$ A2, we can replace the universal specification with A2.
Then we got rid of the paradoxical set, because all the sets expressed by A2 can be assumed exist and the paradoxical set doesn't exist. (We have no way of stating the paradoxical set)
Yet with A1, we know we can build the paradoxical set. (we have a way of stating the set)
So we have a contradiction.

The paradoxical set (RS1) is ${x: P(x):= \text{ x is a set, and x} \notin x}$

If I say the answer to QQ1 is no, then I guess the answer to QQ2 is yes. (Because I think I have seen similar argument being made with different object than set).
So then the question becomes, when is it safe to make argument "some arbitrary A exists"?

I could ask a general question of "an arbitrary A exists" is always safe statement to make?
Then it feels harder to answer, so I had to lean on the set example.

The following counterfactual thinking would help to understand my question.

Suppose the paradoxical set was not found.

The equivalence of A1 and A2 was proved as above.
Some mathematical community adopted A2, some adopted A1 thinking they are describing the same mathematical facts.

But then, for someone who knows the paradoxical set exists, the two mathematical communities seems not to describe the same mathematical facts

So how do we resolve the issue?

(If mathematics have no definitive way of preventing such counterfactual happening, I think it adds more validity of asking such a question. Even though this begs a yet different question, I am mentioning it because I don't know the answer)

We assume some rational number exists and express an arbitrary rational number as $\frac{p}{q}$ to prove the irrationality of root 2.
I guess the validity of "assuming such number exist" comes from the fact that the rational number is defined (constructed) by the formula. Well that was the first difference I could see, maybe there's a different reason which I don't know.

But then, why would it be different to "assuming a set exist" when a set is defined (constructed) by "set that has sets as elements" (A2)

Another similar proof technique is used in diagonalization proof.

Where it goes, let's suppose there's such a mapping, then we can show there's an element (by inverting the diagonal elements) that couldn't be in the mapping.

The diagonalization proof is particularly (non-constructional? yet constructional?) in that, it assumes that your mapping is finalized at the time of "inverting the diagonal entries and testing".
(Maybe I am only exposed to the conceptually simple and not rigorous proof of it.)

So here again, the question I ask is essentially "assumption can be made?"
This post is an attempt to formulate the question by presenting the relevant cases.
(If I ask simply, why, when "making an assumption A exists" makes sense, I guess it's hard to deliver what I'm asking and consequently also hard to answer.)

I guess many different answers are possible.

It might be the case that the question I asked or formulated could be so ill-formed, it has no way of making sense of it to any mathematically thinking person.
(I want to find out if it is by asking the question).

Assuming the other possible, that there's some sense to my question.

I'm trying to summarize my interpretation. (I had to ask the questions to arrive at the interpretation. After thinking over my questions, this is the interpretation I have atm. I saw the definition of axiom of choice yesterday for the first time.)

People interpret (or react to) Russel's set differently.

Since it has a property that the statement's truth value can't be determined,

(B1) Exclude the statement from math, by choosing appropriate axioms.
(B2) Exclude such statement from happening (yet we not knowing), by taking an axiom that mathematical statement can be made only when it has a way of constructing it

B1's answer to hypothetical object creation

  • Making an assumption "an arbitrary A exists" is valid (until proven otherwise).

B2's answer to hypothetical object creation

  • Making an assumption "an arbitrary A exists" is valid if there is a way to construct A.

I think the above statements are close to "factual" statements.
And even though my original question may be ill-formed, the general question I raised might not be such ill-formed, if I take the existence of people with B1 and people with B2 exist as an evidence to "maybe I'm not so delusional in asking the general question"

Below statements are "my interpretation" on B1 & B2.
So they are not mathematical statements in nature.

B1 is practical, efficient and takes more expanding view of what mathematics is.

  • If we take the view that we fix can inconsistency when it arises, we can move faster and explore more.
  • Mathematical is a model and it is effective as long as inconsistency is not found in the model
  • Mathematics can create an unintuitive model that doesn't resemble the model we observe outside of mathematics and it doesn't matter
  • Some inconsistency can invalidate some or most of a mathematical model, but we don't have to constraint our reach when we can't pinpoint what are the reasons that can create inconsistency

B2 is more conservative, and try to avoid breaking the base after piling up many statements above the base

  • Some inconsistencies seem to stem from hypothetical creation, we avoid that
  • (B3?, I don't know) Maybe some people try to embrace or redefine what inconsistency and effectively expand or take a different route to explore a new mathematics

And I guess (I suspect such logicians exists purely by the name (constructivism) nothing more than that), there doesn't seem to be definite criteria that B2 can use to secure the goal either.


One could take B1's view and there's no reason to believe mathematics as of now has inconsistency and there's an objective world where future inconsistency can always be dealt with.

And I guess there are many possible different interpretations (on questions such as what mathematics is or any other meta questions) among who takes the B1, (and among who takes the B2).

It seems mathematics doesn't answer any of the meta questions, yet mathematicians seems to have 'interpretations, answers' to those questions.

Some may take B1's position and disregard my question as invalid or not meaningful. And there's no objective way to disprove such interpretation.

And there doesn't seem to (and some people seem to claim there can't be) be a definitive answer to whether B1 or B2 or some other view are more objective.

So my answer to my question is..

When is it valid to "assume A exists"? can be asked and answered mathematically..
(and to me, the answer seems to depend on the axioms of the mathematicians, and some can disprove that the answer is dependent on something other than objective truth.. and so on).

But if I ask why is it valid, it can't be asked and answered mathematically..
(I'm sure mathematicians had valid reasons to chose some answers, but the reason is not expressed in mathematical terms. I can only guess)

Route N1

So is that it?
Did I get the answer for the question I asked?


What was the question and answer?
Well it's expressed in the post.

But we usually infer something more from the post (expression) assuming there's another intention or meaning that the writer has.

What we express &
What we mean by what we express.

If I assume there's something beyond the first, I could ask the higher meaning behind the expression.
But then, upon understanding the meaning, I could pursue another higher meaning.

Soon, it seems that nothing can be answered fully.

If I ask myself why I asked the question, I won't be able to answer fully.
Yet if I were to be someone else who sees me asking the question and answering it, I (as the someone else) would have thought what I am thinking.

I guess that's just the way it is.
I have to settle somewhere to get off the ground.
And I also want to see what lies below the ground.

There seems to be a lot of people who talked about the limit of reasons in various ways.

Route N2

Wait a minute, what was the problem with RS1 in the first place?

(RS1) ${x: P(x):= \text{ x is a set, and x} \notin x}$

It is not constructive enough to let us foresee the everything there is that can be constructed with the form. (Probably B2 side has some definition of what 'constructive' means, but I am not aware more than the word 'constructivism' about it).

So then it can be thought as yet another instance of 'assume A exists'.

It also has self referential property where an object test something against itself ($x \notin x$).
And I have seen a few instances where self referential object causes interesting problem.

There could be yet another property why RS1 caused the problem.
And we can inspect further the self referential property on other problems...
It is interesting property as its own.

It is also interesting to note that the other questions I am questioning can be viewed as questioning the hidden assumptions of the self, ie what the statements is assuming it can be applied to. (MP, and hypothetical object creation).

.. tbc..

Route N3

Wait a minute, I have seen this.

What you define is the boundary of your definition vs
Your definition is the boundary of your world

I could see "assuming A exists (makes sense because we decided it makes sense only when it seems to make sense)" as a statement of the form $\forall x P(x)$ (where P is applicable to x only when P(x) is true).

I have seen something similar.

"modus ponens".

Modus ponens (MP) says,

$\forall x, P(x) -> Q(x)$ and $P(x)$
$\therefore Q(x)$

I was wondering how could I know if my new x I found found (created) works with the MP?
Can you say something about what "x in the $forall x$" has to satisfy?
(I think I could view RS1 was something that looked like valid x but it was not.)

There's a similar question (I think) asked by a philosopher.

I think there are other ways to capture the essence of the paradox or my question on MP. It seems to ask what is the boundary that your statement is asserting. Mathematical truth has a property that it has to be defined deterministically or inwardly
The inward statement doesn't change itself, it rather shrinks the world to make itself a tautology.
The wikipedia article says making MP tautology is an answer to the infinite regression problem.
And I'm contemplating the consequence, what does it mean to be a tautology when it has no way of describing what objects it can refer to.

Even statements about infinite object has to have that property. For instance, for an infinite set, a mathematical statement such as $x \in A$ is considered to be true or false (deterministic) when the question is asked.
So it has no notion of 'not in then state to be able to answer because my state is changing' (from the object's perspective)

Diagonalization argument shows the deterministic truth.

(DA1) There's no surjective $f$ from set S to power set $P(S)$.

$RA = {x \in S | x \notin f(x) } \subset S$.
$RA$: The elements of S that their image of $f$ doesn't contain itself.

Since RA is an element of $P(S)$ and f is surjective, there's $y \in S, f(y) = RA$

We ask, is $y \in RA$?
if $y \in RA, f(y) \neq RA$ by definition of RA, this can't be
if $y \notin RA, and f(y) = RA$, then it must be that $y \in RA$ by definition of RA.

So there can be no y that is $f(y) = RA$, therefore $f$ is not surjective

$RA$ looks familiar and it resembles RS1 ${x: P(x):= \text{ x is a set, and x} \notin x}$.

(MQ2) Are we sure that it's ok to state $RA$ exists?

We are using it to disprove $f$ is surjective here, and I'm not sure what's the validation for accepting $RA$ and rejecting RS1.
Anyway, if we don't reject the statement as invalid, we have to state its truth value, and we are saying it as truthful because it almost seems possible to exist.
And the statement has the "inward property" that it forces $y$ to abide by the definition A was created with.

There are alternative interpretation that might show a gap between the argument and my intuition (maybe it's due to the infinity is so hard to grasp and offers many different way to look at it)
(Another one is, where the diagonal argument goes, assume f, I'll show you it's not surjective for some elements, what happens if we change the reasoning backward, show me the elements, I'll show you I can make them the image of f.

There are other ways of stating unclearness.. but too long.
The other way of presenting the diagonal argument has different flavors of unclearness.. )

The diagonal argument makes sense, it might be a perfectly valid way with specific property (deterministic truth, non-hard-construction of $RA$..)

But I'm just questioning the underlying assumptions are subtle and sometimes hard to know for sure if its proof technique is consistent. Consistent in a sense that (generally whatever we do, we do it the same way, I find it particularly hard to tell when reasoning about infinity), maybe the construction of RA is not possible at all, so it can't be assumed to exist? (I'm sure it's valid, because that's how it's setup, valid until valid)

Yet another interpretation would be that, the notion of deductive reasoning is expressed inside the MP, but to find out what P it can deal with is conducted from inductive reasoning.
So the process of applying it seems rather inductive as a whole.
(The boundaries of the definitions seems to get blurred again.)

So here again, I see the pattern where definition defines the boundary of the object it refers to.
And it is fascinating that mind can imagine the boundary what MP assumes it applies to in multiple ways.

Then with realizing these "assumption A exists" + "modus ponens" having the same property, I could go further to explore the possible interpretations.

Q) When is it valid to state "assuming an A exists"?
A) We assume it's valid for all cases when we do assume it.
And it seems very intuitive that we can assume it in all the cases.

Q) What happens if something bad happens?
A) Something bad?
Q) inconsistency?
A) Oh, that bad, We have reason to believe that we won't see the bad.
Q) But what if it happens? do you have guarantee it won't happen?
A) Hard to answer, do you have guarantee it will happen?

Q) Suppose it did happen, what do we change?
Are we gonna track down the cause, probably an axioms that cause the bad? A) That's a possibility.
Q) Is it also possible to change the definition of inconsistency?
A) What do you mean, the definition of inconsistency is clear, we are not going to change it.
Q) Oh then, the objects that consistency can be applied to changes?
Because some axioms or statements that caused inconsistency would have to be removed.
A) Possibly

Q) So there's a statement, axiom, definition that's not gonna change but what it can refer to can change?
Then can we say that the definition changes?
A) Hard to answer. That doesn't look like a well defined question.

So taking an axiom is a smart move in a sense that it lets you start off somewhere.

Some world is constructed (defined) from the selecting axioms and expanding the axioms.

And, it may happen that the definition of the world depends on the axioms the constructor choose.

And the constructor-A might decide if some objects belong to the world by whether the object passes the test of his or her axioms.

Then another constructor-B who has a different world might come along and ask the constructor-A why A's axiom says $\forall x, M(x)$ when B have seen some y that's not $M(y) = \text{true}$.

A says to B, such "y" is not something we are referring with $\forall x$ we only have objects in our world where $M(x) = \text{true}$.

B says, that's understandable, but we happen to have something called $M2$ in our world, and it is very similar to your $M1$ but our definition of $M2$ is different.

A says, that's not possible, $M$ has to be that way, can you show me our $M$ is wrong?
B says, yeah I can do that.. A says, but if you use something that doesn't pass the test of $M1(x)$, I can't accept it as convincing. Because $M1$ is an axiom and a tautology
B says.. oh.. then it's hard..

A further contemplates..

So love is something of a nature $P(x, y) := Love(x, y)$.
When x, y can be changed, are we changing the definition of "Love" or not?
If we change the set of x, y that the function Love(x, y) can handle, what the definition of Love is supposed to mean?
Are we changing the definition of defining?

By now, I get to a point asking the meaning or validity of "$\forall x M(x)$".

So I could ask when or why it is valid to define something?
And what is the meaning of 'meaning' or 'definition'?

In this line of thinking, mathematics seems like an attempt to create a closed system in our mind where one draw boundaries so that one can feel what it is like defining something. (It's not about invention or discovery, maybe it is both).
Much like I try hard to draw a boundary of my body and myself from environment when (I assume) it would be blurry where the boundary actually is.
But then, I could start asking myself why I would I want to draw the line.

And go on asking mathematically, because mathematics is the only way I know I can define something unambiguously and ask, When or Why is it valid

  • @starball oh so there's different sandbox for different site? ;;
    – Eugene
    May 10, 2023 at 2:47
  • I don't know :P I suppose that would be useful if you want to test mathjax somewhere or latex. May 10, 2023 at 2:53
  • @starball thanks for suggestion, couldn't find separate formatting-sandbox for math site though .. yet.
    – Eugene
    May 10, 2023 at 2:57

This is to test the rendering problem mentioned in Code highlighting and image placement breaks despite correct syntax. See the earlier revisions for various tests.

The image used is:

Reduced example


A paragraph

<img src="https://i.sstatic.net/wRMuO.png">
paragraph #2, which should be separate.
<img src="https://i.sstatic.net/wRMuO.png">
paragraph #3, which should also be separate.

paragraph #4, which should also be separate.


A paragraph

paragraph #2, which should be separate. paragraph #3, which should also be separate.

paragraph #4, which should also be separate.

Using workaround of not having a space character on blank lines (renders correctly)


A paragraph

<img src="https://i.sstatic.net/wRMuO.png">

paragraph #2, which should be separate.

<img src="https://i.sstatic.net/wRMuO.png">

paragraph #3, which should also be separate.

paragraph #4, which should also be separate.


A paragraph

paragraph #2, which should be separate.

paragraph #3, which should also be separate.

paragraph #4, which should also be separate.

  • Comment rate limit test 001. This is an attempt to invoke the comment rate limit in order to test handling of the response. iaoe opake poakepr poaksdfp oepr fpwaerj
    – Makyen
    Jul 23, 2023 at 17:49
  • Comment rate limit test 002. This is an attempt to invoke the comment rate limit in order to test handling of the response. oiwqehrkmnsaoinm iowe injeoiewjroi qoimq
    – Makyen
    Jul 23, 2023 at 17:49
  • Comment rate limit test 003. This is an attempt to invoke the comment rate limit in order to test handling of the response. pjpeworkm epokw foka pofk
    – Makyen
    Jul 23, 2023 at 17:49
  • Comment rate limit test 004. This is an attempt to invoke the comment rate limit in order to test handling of the response. p[oqwkepo q owkepq kwpoke
    – Makyen
    Jul 23, 2023 at 17:50
  • Comment rate limit test 005. This is an attempt to invoke the comment rate limit in order to test handling of the response. lsajfpok pq,mwepoqwm 232 oaksd
    – Makyen
    Jul 23, 2023 at 17:50
  • Comment rate limit test 006. This is an attempt to invoke the comment rate limit in order to test handling of the response. 329i4- okj pojp kj posa093 akmlfkmmv
    – Makyen
    Jul 23, 2023 at 17:51
  • Another test comment that should show up in the WebSocket.
    – Makyen
    Oct 15, 2023 at 16:37

Testing SVGs








Does this SVG display?

title-A title-B

><> (Fish), 25 bytes

-1:/ ;n\?- /

Hover over any symbol to see what it does

Try it


You can put code inside code

&&&&&&&&&&&&&&&&&&&&&&&&———————————— 3 per em dash


Yea this banana guy is crazy

BI JavaScript brackets {}

  • Hhh
  • High
  • Hhhhnbn


Heading ##


  1. f
  2. H
  3. G
  4. H
  5. ggg
  6. fddff
alert("injected JavaScript");



Alt F4

clicky code


when i run this program it giving me only none

Var code = too much

this is a lot of code

help I'm stuck in a codeblock



Lots of code

Lots and lots
Var code = too much

this is a lot of code

help I'm stuck in a codeblock



Lots of code

Var code = too much

this is a lot of code

help I'm stuck in a codeblock




Lots of code

To exit Vim code block, just press Enter in the code and type ```. It works!

  • 1
    @ankii seeing if I get the warning that it’s mostly code (see here).
    – anon
    Sep 15, 2019 at 16:31
  • 1
    [mre] does this work (typed [mre])
    – anon
    Sep 22, 2019 at 5:13
  • 1
    @ankii oh that pinged you :P?
    – anon
    Sep 22, 2019 at 5:15

Syntax highlighting test with in <pre><code> blocks

SELECT a, not_b FROM tbl WHERE a < b;

Mini web browser

function openurl() {
  document.getElementById("browser").setAttribute("src", document.getElementById("text").value)
<center><h1>Simple Browser</h1></center>
<center><input id="text" width="200"> <button onclick="openurl()">Open URL</button><center>
<iframe src="" id="browser" width="550" height="250"></iframe>


Testing tags in answers. It works on Law.SE and in the preview, but is it network-wide?

What about tags that aren't recognized by the site?


tiny text 🐱

Is the full stop or .?


Instead of iterating over all possible integer numbers, let's iterate over all possible sequences
a1n + a2n + a3n + .. + ann = A, where 0 ≤ ai ≤ 9
and checking corresponding sums A for "Armstrongeness".

As sum is commutative (a+b = b+a) we need to iterate only over non-decreasing sequences:
a1n ≤ a2n ≤ a3n ≤ .. ≤ ann

For example, lets find all 3-digit Armstrong numbers:
03 + 03 + 03 = 0
03 + 03 + 13 = 1
03 + 03 + 23 = 8
03 + 33 + 63 = 243
03 + 33 + 73 = 370 <-- Armstrong number
03 + 33 + 83 = 539
03 + 43 + 63 = 280
03 + 43 + 73 = 407 <-- Armstrong number
03 + 43 + 83 = 576
13 + 33 + 43 = 92
13 + 33 + 53 = 153 <-- Armstrong number
13 + 33 + 63 = 244
13 + 33 + 73 = 371 <-- Armstrong number
13 + 33 + 83 = 540
93 + 93 + 93 = 2187

There is 900 3-digit numbers, but only 178 possible 3-digit permutations. Does not sound like big deal, however for 900'000'000'000'000'000 18-digit numbers, there is only 4'515'854 permutations.

My written on Java implementation computes all numbers by ~2 sec on my machine:

package org.example;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
  private static int[] digits;
  private static long sumOfPows = 0;
  private static long[] pows;
  private static long min = 0;
  private static long max = 0;
  private static List<Long> result = new ArrayList<>();

  public static void main(String[] args) {
    for (int numOfDigits = 1; numOfDigits <= 19 ; numOfDigits++) {


  private static void search(int numOfDigits) {
    digits = new int[numOfDigits];
    sumOfPows = 0;
    pows = new long[10];
    min = powerN(10, numOfDigits-1);
    max = powerN(10, numOfDigits);
    if (max < 0) { // check for overflow
      max = Long.MAX_VALUE;
    for (int i = 0; i < pows.length; i++) {
      pows[i] = powerN(i, numOfDigits);
    searchRecursively(0, 0);

  // fast power alhorithm, not relevant here
  private static long powerN(int number, int power){
    long res = 1;
    long sq = number;
    while(power > 0){
      if(power % 2 == 1){
        res *= sq;
      sq = sq * sq;
      power /= 2;
    return res;

  private static void searchRecursively(int curI, int minDigit) {
    if (curI == digits.length) {
      if (min <= sumOfPows && sumOfPows < max) {
        int[] digitsSorted = toDigits(sumOfPows, digits.length);
        if (Arrays.equals(digits, digitsSorted)) {
          result.add(sumOfPows); // we found it!
    } else {
      for (int j = minDigit; j <= 9; j++) {
        digits[curI] = j;
        sumOfPows += pows[j];
        if (sumOfPows >= 0 && sumOfPows < max) { // check for overflow
          searchRecursively(curI + 1, j);
        sumOfPows -= pows[j]; // backtracking

  private static int[] toDigits(long num, int len) {
    int[] result = new int[len];
    while(num > 0) {
      result[--len] = (int)(num % 10);
      num /= 10;
    return result;
  • What are you testing here? Oct 7, 2023 at 9:13
  • @ShadowTheGPTWizard, typical "Your post appears to contain code that is not properly formatted as code. Please indent all code by 4 spaces using the code toolbar button or the CTRL+K keyboard shortcut. For more editing help, click the [?] toolbar icon." Unfortunately I cannot reproduce this on meta.stackexchange.com Oct 8, 2023 at 19:43
  • Yeah this filter isn't active here or even in Meta Stack Overflow. Oct 9, 2023 at 7:16
8 9 10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .