---
metadata:
  - name: generator
    content: Diplodoc Platform v5.63.0
alternate:
  - en/dashboard/markdown
  - ru/dashboard/markdown
  - href: en/dashboard/markdown.md
    type: text/markdown
    title: Markdown version
csp:
  - script-src:
      - https://mc.yandex.ru
    img-src:
      - https://mc.yandex.ru
    connect-src:
      - https://mc.yandex.ru
      - wss://mc.yandex.ru
    child-src:
      - 'blob:'
      - https://mc.yandex.ru
    frame-src:
      - 'blob:'
      - https://mc.yandex.ru
    frame-ancestors:
      - 'blob:'
      - https://mc.yandex.ru
title: Markdown in DataLens On-premises
description: In this tutorial, you will learn how to use Markdown in DataLens On-premises.
canonical: en/dashboard/markdown.html
vcsPath: en/dashboard/markdown.md
---

# Markdown in DataLens On-premises

DataLens lets you use the Markdown markup language in the [Text](./widget.md#text) widget on the dashboard.
You can insert explanatory text, links, tables, images, or use formatting to highlight key points.

In text widgets, you can use the following elements:

* [Headers](#headings)
* [Highlighting text](#emphasizing)
* [Text color](#text-color)
* [Lists](#lists)
  * [Simple unordered list](#unordered-list)
  * [Nested unordered list](#unordered-sublist)
  * [Simple ordered list](#ordered-list)
  * [Nested ordered list](#ordered-sublist)
* [Tables](#tables)
* [Cuts](#cuts)
* [Tabs](#tabs)
* [Links](#links)
* [Code formatting](#code)
  * [Inline code snippet](#inline-code)
  * [Code block](#codeblock)
* [Image](#image)
* [Emoji](#emoji)
* [Mermaid diagrams](#mermaid)

## Headings {#headings}

You can use four levels of headings in the widget.
Use `#` to mark up headings.

Syntax example:

```markdown
# Level 1 heading
## Level 2 heading
### Level 3 heading
#### Level 4 heading
```

## Highlighting text {#emphasizing}

Use formatting to highlight the key points in your text:

* Use `**` on both sides for **bold**:

  ```markdown
  This text is **bold**.
  ```

* Use `_` on both sides for _italics_:

  ```markdown
  This text is _italic_.
  ```

* For _**bold and italics**_ together, use `**_` or `_**` on both sides:

  ```markdown
  This text is _**bold and italic**_.
  This text is **_bold and italic_**.
  ```

* To <u>underline</u> text, add `++` on both sides:

  ```markdown
  This text is ++underlined++.
  ```

* To ~~strikethrough~~ text, add `~~` on both sides:

  ```markdown
  This text is ~~strikethrough~~.
  ```

* Subscript

  For <sub>subscript</sub>, add `~` on both sides:

  ```markdown
  This text is in ~subscript~.
  ```

* Superscript

  For ^superscript^, add `^` on both sides:

  ```markdown
  This text is in ^superscript^.
  ```

* For <samp>monospaced</samp> text, add `##` on both sides:

  ```markdown
  This text is ##monospaced##.
  ```

* For a <mark>highlight</mark>, add `==` on both sides:

  ```markdown
  This text is ==highlighted==.
  ```

## Text color {#text-color}

You can set the text color this way: `{color}(text)`. The following colors are supported:

* gray
* yellow
* orange
* red
* green
* blue
* violet

For example, the following markup:

```markdown
This text is {green}green.
```

will be displayed as:

This text is <font color=green>green</font>.

## Lists {#lists}

You can use multiple list types to arrange the data on the dashboard.

### Simple unordered list {#unordered-list}

To make an unordered bulleted list, use `*`, `-`, or `+`.

For example, the following markup:

```markdown
* Item 1
* Item 2
* Item 3
```

will be displayed as:

* Item 1
* Item 2
* Item 3

### Nested unordered list {#unordered-sublist}

To make a nested unordered list, add an indent for the lines with the nested list items. The indent can be from two to five spaces.

For example, the following markup:

```markdown
- Item 1
   - Item A
   - Item B
- Item 2
```

will be displayed as:

* Item 1
   * Item A
   * Item B
* Item 2

### Simple ordered list {#ordered-list}

To make an ordered list, use numbers with a `.` or `)`.

For example, the following markup:

```markdown
1. Item 1
1. Item 2
1. Item 3
```

will be displayed as:

1. Item 1
1. Item 2
1. Item 3

### Nested ordered list {#ordered-sublist}

To make a nested ordered list, add an indent for the lines with the nested list items. The indent can be from three to six spaces.

For example, the following markup:

```markdown
1. Item 1
   1. Nested item
   1. Nested item
1. Item 2
```

will be displayed as:

1. Item 1

   1.1. Nested item<br>
   1.2. Nested item
1. Item 2

## Tables {#tables}

A table consists of a single row with headers, a separator row, and rows with data.

Each table row consists of cells that are separated from each other by `|`.

In the separator row cells, only `-` and `:` can be used. The colon (`:`) is used at the beginning, end, or on both sides of the separator row cell content to indicate left, right, or center alignment of text in the column, respectively.

A table should be separated from the surrounding text with empty lines.

For example, the following markup:

```markdown
Left-aligned | Right-aligned | Centered
:--- | ---: | :---:
Text | Text | Text
```

will be displayed as:

Left-aligned | Right-aligned | Centered
:--- | ---: | :---:
Text | Text | Text

To add a line break or a more complex element, e.g., a list or code block, to a table cell, use an alternative markup:

```
#|
|| **Heading1** | **Heading2** ||
|| Text | Text ||
|#
```

Example of a markup with line breaks and a list:

```
#|
||Text
in two rows
|
- Item 1
- Item 2
- Item 3
- Item 4||
|#
```


## Cuts {#cuts}

Use cuts to hide content, e.g., additional information or long code blocks.

For example, the following markup:

```markdown

{% cut "Cut title" %}

Content displayed on click.

{% endcut %}

```

will be displayed as:

{% cut "Cut title" %}

Content displayed on click.

{% endcut %}

## Tabs {#tabs}

Use tabs for mutually exclusive sections, e.g., to separate instructions for different operating systems.

For example, the following markup:

```markdown

{% list tabs %}

- Tab 1 name

  Tab 1 text

  * You can use lists.
  * And **other** markup.

- Tab 2 name

  Tab 2 text

{% endlist %}

```

will be displayed as:

{% list tabs %}

- Tab 1 name

  Tab 1 text

  * You can use lists.
  * And **other** markup.

- Tab 2 name

  Tab 2 text

{% endlist %}

If you want an item to be expanded by default, add the `{selected}` attribute to it.

For example, the following markup:

```markdown

{% list tabs %}

- Tab 1 name

  Tab 1 text

- Tab 2 name {selected}

  This item will be expanded by default.

- Tab 3 name

  Tab 3 text

{% endlist %}

```

will be displayed as:

{% list tabs %}

- Tab 1 name

  Tab 1 text

- Tab 2 name {selected}

  This item will be expanded by default.

- Tab 3 name

  Tab 3 text

{% endlist %}


## Links {#links}

You can use links to enter information related to the dashboard or charts.
For example, you can add links to other dashboards and specify data sources.

A link consists of two parts:

* `[text]`: Link text.
* `(link)`: URL or path to the referenced file.

For example, the following markup:


will be displayed as:



## Code formatting {#code}

You can use inline code snippets or code blocks.

### Inline code snippet {#inline-code}

Use <code>`</code> to format an inline code snippet.

For example, the following markup:

```markdown
A sentence with a `code snippet`.
```

will be displayed as:

A sentence with a `code snippet`.

### Code block {#codeblock}

Use triple <code>`</code> and the appropriate programming language name to format your snippet as a code block.

For example, the following markup:

```markdown
    ```kotlin
    val a: Int = 1
    ```
```

will be displayed as a highlighted Kotlin code snippet:

```kotlin
val a: Int = 1
```

## Image {#image}


You can add images of any format.



To add an image, paste the following code in the widget:

```markdown
![alt text](https://link_to_image "Text for tip on hover" =100x200)
```


## Emoji {#emoji}

To add an emoji, enter a keyword and add `:` on both sides. You can see the list of available keywords in the visual editor.

For example, the following markup:

```markdown
Emoji :smiley:.
```

will be displayed as:

Emoji 😀.

## Mermaid diagrams {#mermaid}

Mermaid is a library for creating diagrams and flowcharts in a browser using an easy-to-use markup language. It allows you to create diagrams using a syntax similar to Markdown.

Mermaid has many built-in templates and functions for creating various types of diagrams, such as flowcharts, graphs, trees, Gantt charts, mind maps, and C4 diagrams.

Using text definitions, you can set a description of the structure, which is then converted into a diagram. For example, the following markup:

<pre><code>
```mermaid
graph TD;
    A-->B
    A-->C
    B-->D
    C-->D
```
</code></pre>

will be displayed as:

<!-- diplodoc:svg ![mermaid-flowcharts-example](../_assets/datalens/internal/editor/mermaid-flowcharts-example.svg) --><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="101" height="202" style="background-color:#fff" viewBox="-0.5 -0.5 101 202"><rect width="100%" height="100%" fill="#fff"/><g data-cell-id="0"><g data-cell-id="1"><g data-cell-id="vICzElCYx1xnmrUo5Y4q-1"><path fill="#FFF" stroke="#000" stroke-width="2" d="M37 1h26v33H37z" pointer-events="all"/><switch transform="translate(-.5 -.5)"><foreignObject width="100%" height="100%" pointer-events="none" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow:visible;text-align:left"><div xmlns="http://www.w3.org/1999/xhtml" style="display:flex;align-items:unsafe center;justify-content:unsafe center;width:24px;height:1px;padding-top:18px;margin-left:38px"><div data-drawio-colors="color: rgb(0, 0, 0);" style="box-sizing:border-box;font-size:0;text-align:center"><div style="display:inline-block;font-size:12px;font-family:Helvetica;color:#000;line-height:1.2;pointer-events:all;white-space:normal;overflow-wrap:normal">A</div></div></div></foreignObject><image xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABECAYAAAB+pTAYAAAAAXNSR0IArs4c6QAAA7ZJREFUeF7tmk3IDlEUx39vQpJENmxkYSHFjmKjUDa+SSgpiiKSUpQk5atQsqAo+Vz4tlGirBQlWUhWsmFhIcnCQsxhnrrd7vPMzPOO55xbZ+rdvM+dOd3/757zP/fODOGXqgJDqtE9OA5AeRE4AAegrIByeM8AB6CsgHJ4zwAHoKyAcvgcM2AycAVYFGj3Dlhb/L1V1rNx+BwBrALuJGa6FzgD/G6sguINuQEYDZwEdiU0ewJsAj4r6tk4dG4AZgK3gBnlTEVsKUmdazVwt7EKijfkBmAbcD4Q/yhwIIBwGdgJ/FDUtFHonABMAC4BK8sZPgN2AyeAJeX/sjPjnADMAe4Hq/0CIMa7BzgSLLuszDgXACOK7uYQcDAQensBQyDMBx4B48rfsjLjXABMAa4DC4L6vxR4BUwCrgZlSIZkY8a5AIh7/9vA1qL8fIO/7zSkDJ0KsiMbM84BwJhygyUdUOeK63zsD9KedjKkUVcy6ME5AEj1/rG444GLwJrczDgHAFJeTgfCSr3fUXRA36PVGu4R5KcszNg6gLj3F2Gl9st+IL7iTMnCjK0DiFvMN8A64H0CwNiiIzoHbM7JjC0DSPX+Z4F9wM8uZrkRuBb8Jma8Ang5aHOtG88ygKnADWBeMJmq/n4acLPYmM3NxYwtA4h7/+fABuBjj9U1Cjhe7gs6w0ybsVUAqXp+rDyK+FWR3ouLrHkcjanKnLoVo/VxVgHEHY20nHIK+rSGAqlXlmZ3xlYBxL1/kzKSMm+zZmwRQKr3r7HwK4fIkfXhooxVlbDKB7U5wCKAhcC94Hi5rfk2yaK2YlY+xxqAVPmonESDAebM2BqAVB//ujj7+dJA5M7QkUUmzQYmWt4ZWwMQ9/7DMc/UJyzDeV4fa6D6FksAUr1/t5PP6pn9G7EMeBANNmXGlgDMAuRN1/RAsG4nn3UBpPYE8jWFnBl9qvuQ/znOCoDUa8VeJ591NUk9V+41Y8ZWAKR6/6qTz7oQUpllZmdsBUCq918OPKyrco9xKW8xY8YWAEjvL8a4PxCx7U1T6otqE2ZsAUCq929bnPi7ImH9onizth740EKW9f0ICwAG8Rar2w5b3Yy1AaTqs5wDbSk+vP3a97JK3xh/OySj1M1YG0DLGuf3OAegzMwBOABlBZTDewY4AGUFlMN7BjgAZQWUw3sGOABlBZTDewY4AGUFlMN7BjgAZQWUw3sGOABlBZTDewY4AGUFlMN7BjgAZQWUw3sGOABlBZTDewY4AGUFlMP/AR6yrkXYClwpAAAAAElFTkSuQmCC" width="24" height="17" x="38" y="11.5"/></switch></g><g data-cell-id="vICzElCYx1xnmrUo5Y4q-2"><path fill="#FFF" stroke="#000" stroke-width="2" d="M1 84h24v33H1z" pointer-events="all"/><switch transform="translate(-.5 -.5)"><foreignObject width="100%" height="100%" pointer-events="none" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow:visible;text-align:left"><div xmlns="http://www.w3.org/1999/xhtml" style="display:flex;align-items:unsafe center;justify-content:unsafe center;width:22px;height:1px;padding-top:101px;margin-left:2px"><div data-drawio-colors="color: rgb(0, 0, 0);" style="box-sizing:border-box;font-size:0;text-align:center"><div style="display:inline-block;font-size:12px;font-family:Helvetica;color:#000;line-height:1.2;pointer-events:all;white-space:normal;overflow-wrap:normal">B</div></div></div></foreignObject><image xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFgAAABECAYAAAAFgfLUAAAAAXNSR0IArs4c6QAAA0dJREFUeF7tmkvoT0EUxz9/pCwQ2SslC8qCUigrUhZSirzK3iORUAgLj7IhIo88s2HBzmOJUggbKSkLWbEgeSTcU3Nruv1l7u83x/zu6czy/uZ+f3c+93tnzjkzQ3hTJTCkqu7iOGBlEzhgB6xMQFneHeyAlQkoy7uDHbAyAWX50g5eDVzpcYyvgNfAI+A28Az40aOW2m1dBtyEIsD3AzeA72rEWgpbAlwP/QywA/jYkoVKd4uABdRJYDvwRYVaC9FBAyxzqczLH/4xhlHAWGAKsATYDExs3LMGuNqChUrXrgJuwpgBnAXmRD/cA9YB71XIJYpaASzDXQpcDs6uh78IuJvIQqWbJcCTAuDFEaldwEEVcomilgCPBg4BW6Kxy2K3tYoqviXyyN7NEmCBszvEwjWo0wH41+zkEgUtAR4JHKiSjJ3R2PeEa4k48nezBHgCcA5YFmGShe9WfmzpipYAS8RwPYoiPEwLSUVc7ElNNJoWmgWcaMTBa0Oi8Tvdb/l7dtXBI4DxFcCpwCpAYMaZnKfKwSv9lCuHs9tn4Eg1TRwFikUO8YMNmoP7+UbfANuAm8CvfoRy3msJcM3lGnAYeAEUnX/lgSwClnHJVCFp8ingZ05HttUaNMBtoogxwDhgZohGJP6VEmbdBLKkzedLOrnLgJtrydwQqgnwur0FlgOP2zovV38rgGseC4CLwOQI0LGwu1Fkn84aYNnp2Bfm35rxE2Bl2IHOZcxkHWuAZeALgTsNAvOr6w+SqWTsaBHwPOB+g1Gx/TkHnNGtw0lZBOxTRPSmm7WINnHwcIaRovvesLNR//4cWAHIyZ//3qw5eHaoCcdh2gVgQ6lDKJYATwdkD04WuTibk1KmFICKtC4DlmeXVHnaX2rCAvRSdUpoI/CpCF3DxR7hKcda11fz78tScOV/B83BuVhIUrEJeJpLsFcda4AlUjgOyMJW/GRl1x0s5Ug51f4OeBhSYSmyF63/Np1e2sG9fnmduc8BK78qB+yAlQkoy7uDHbAyAWV5d7ADViagLO8OdsDKBJTl3cEOWJmAsrw72AErE1CWdwc7YGUCyvLuYAesTEBZ3h3sgJUJKMu7gx2wMgFleXewA1YmoCz/BxJzs0V9qKaPAAAAAElFTkSuQmCC" width="22" height="17" x="2" y="94.5"/></switch></g><g data-cell-id="vICzElCYx1xnmrUo5Y4q-3"><path fill="#FFF" stroke="#000" stroke-width="2" d="M75 84h25v33H75z" pointer-events="all"/><switch transform="translate(-.5 -.5)"><foreignObject width="100%" height="100%" pointer-events="none" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow:visible;text-align:left"><div xmlns="http://www.w3.org/1999/xhtml" style="display:flex;align-items:unsafe center;justify-content:unsafe center;width:23px;height:1px;padding-top:101px;margin-left:76px"><div data-drawio-colors="color: rgb(0, 0, 0);" style="box-sizing:border-box;font-size:0;text-align:center"><div style="display:inline-block;font-size:12px;font-family:Helvetica;color:#000;line-height:1.2;pointer-events:all;white-space:normal;overflow-wrap:normal">C</div></div></div></foreignObject><image xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAABECAYAAAAMalKuAAAAAXNSR0IArs4c6QAABGFJREFUeF7tm0uoVlUUx3+GGiIaNsl0IAhqTRJBVIRS8TFKRDKwF2qIRfgEaeADRcEXaiANDLTUHhKFOmlQpPZQqUHgQElJRZHKiYpBhNHD/Yf9weF4vts53z1n7/3Z2nC5cL991trrd9a39tp7rdsHG0EJ9AmqzZRhwAM7gQE34IEJBFZnHm7AAxMIrM483IAHJhBYXbd4eF/gKeAZYAowAhiXYfUdcAE4BXwJXAf+CcyylLrUgT8OLAKWeMiljAI+B7YDX6cGPlXgAz3kdcCjZSkXzHsXWAvc6IWMWh9NEbjCxVvA3B4sveg8/5r/vB8wtocXcxp4DThfK7kOhaUG/EkXOt4DJubsuQW8D3wEnAX+zH3+EDAUeAFYVhB+vveh6ccOOdX2WErAHwPeAebkrDvsAK8Brpa0WuB3AK/k5n/iPf12STmNTEsF+AAPaWnOyo3+739UtF57gKC/kXtOm+8+4N+K8mqbngpwebVCxqCMZbsBbZpVYbdEDPcyp2VkKp6/XOHbUhvolqAUgA8B9uc2yc+AxTVkFy8BH+SoSa70RRkpAJ/usoyjOe9+zh10jtRARHn8IXcgmpGRdQBQ6Pq9BvmVRcQG3h/YBqzKrPwrQJ75S2Vr7n9A9q0AJgPHgW/cZnq5IMupQVU5EbGBDwM+BKZmlrsVWO9+/i5nQnfNig18kvO+L3LhZD7wcXdhLL/a2MDzm9qvwGz380N5E7prZmzgCh2bMsjOAC9mju3dRbPEalMDrls+ef3NEmvvyikxget0qUsqXSy1hvJvHcmjHr+bfJOpAdddilLETk+XTbKqRXZM4EU5uIWUWl5reyH5TdOANwxc8XtvRofSQeXhlxrWG018zJAio2f6g08LgOXhDbuCKvGfuuP9qIweO2k2CP0RXxCY1+Bdiu5rlH6ec20WJ/zvOw3a1KPo2CFF+lVV35xZZZ23hRJbdP0b7VsUG7iATACOuXqm7q5bQ1UZ3SL2djzsS23LM4JUSH4+VhU/BeCqP77tyl4LM1BO+hPnz70kPt7vEWq9aI09wJvA3V7K7ujxFIBr4bM8mGxNc4sr9m5wdc2/OrIMiroAlAUpnKgQEWWkArxd1V7tESomV/XGdlX7XX7PqCqvtpeTCnAZ1K4JSDVJeXrZvpSRwM6Czi01A+li7Kfa6HUgKCXgWr46Yw8WdE79V+eV7mWeAF71UPP9iGqLW+CbOzvAVN8jqQHXegRdx/0xPZip9uTf/OeDAZXq2g31Ib7uYUdrAGotLjXgrXW1CwtVXU3tF6uBK1UfbGp+qsBlr5rw5e0rgWcrAvjW94erOT/aBlm05pSBZ7+FSvHUSvG066Ad7e9esrm1/QdERY/830zvBg9/oF6GAQ/8Og24AQ9MILA683ADHphAYHXm4QY8MIHA6szDDXhgAoHVmYcb8MAEAqszDzfggQkEVmcebsADEwiszjzcgAcmEFidebgBD0wgsDrzcAMemEBgdebhgYHfA0uxo0UynWu0AAAAAElFTkSuQmCC" width="23" height="17" x="76" y="94.5"/></switch></g><g data-cell-id="vICzElCYx1xnmrUo5Y4q-4"><path fill="#FFF" stroke="#000" stroke-width="2" d="M38 168h25v33H38z" pointer-events="all"/><switch transform="translate(-.5 -.5)"><foreignObject width="100%" height="100%" pointer-events="none" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow:visible;text-align:left"><div xmlns="http://www.w3.org/1999/xhtml" style="display:flex;align-items:unsafe center;justify-content:unsafe center;width:23px;height:1px;padding-top:185px;margin-left:39px"><div data-drawio-colors="color: rgb(0, 0, 0);" style="box-sizing:border-box;font-size:0;text-align:center"><div style="display:inline-block;font-size:12px;font-family:Helvetica;color:#000;line-height:1.2;pointer-events:all;white-space:normal;overflow-wrap:normal">D</div></div></div></foreignObject><image xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAABECAYAAAAMalKuAAAAAXNSR0IArs4c6QAAA0ZJREFUeF7tmk2oTkEYx38XJQtRdjYsSCKbu7Cg2EiKYuMjyYKyUAolFliIRFj4KKXkq4iSolCKdCMl7CgbGx/5ShJJOA9zuuN0bue+tzPPzDueqbfe7jlnnju/+b//eZ4z04M1VQI9qtEsGAZcWQQG3IArE1AOZwo34MoElMOZwg24MgHlcCkofCVwdojjfgS8BZ4Dd4HbwBvg1xD7C/5YtwOvA3QVOAjcAX4GJ9hhgByBlwiOAduBDx0yCXp7zsAF3LXCctYDL4JS7KDzFIE/AZYBzxrGMQwYA4wFZgNLgYU1z1wB1jlv7wBNmFu7GXiViEzAAuAAMKVy8QiwBfgaBuPge80JeDnq6cAJYKaH4TOwChC1R205Ahegc4BTwASP7mVgDfAxJvFcgQ8HNgH7KipfAtwy4P8WPoNdNJu4TXQF1SzvxkPAVuB708OhrueqcOElKt/pcvGSn1SiUtm+DAW0qd+cgcvY5wE3K7YimUxfE5hQ13MHPgk4D/R6AFcDp0MBbeo3d+DjgHPAfA/EjsJudjWBCXU9d+CjimpUFkqpNMt2HNgYqwgy4KGkPEC/uQOXTEXsY5s3fnmhJVVnlAIod+AyPkkN5VO2Gy41fK8s7j/hcgde5+GXgLWFj38y4H8JtFVpSl+2aNaoqrqn2Sbw0cBR59llaNkJ2lyU+N9M4e0rfLzLw+daHt5PIKTCZwDi2ZM94MuBCzHU/T8smtXJfAUsKj4PDXg/gbY8fKR7H77Bg3vd+fk7A94+8GnAxcI+pnpw5djE7pgHhXLNw6XClE3jPR5ssZPFwINY6s7Zw+v2NKO+tConOUeFi4WcrOzay0EgWUCjbTzkCHyEe+9ddy5F9jHl7z9i2km3W4oAlkpSjkKIhayoqNqvLMXPv8SGnSrwNrmccWW8HGlOoqXo4W2AkZNWh4G9BXD5nkzLDbjAlVJ+P/A0Zr490Ax3O/D7wOtisbznMpDHqXh1ysCT+blr/CMpKFxjnMnEMODKU2HADbgyAeVwpnADrkxAOZwp3IArE1AOZwo34MoElMOZwg24MgHlcKZwA65MQDmcKdyAKxNQDmcKN+DKBJTDmcINuDIB5XCmcAOuTEA5nClcGfhvD4LBRYy0DOcAAAAASUVORK5CYII=" width="23" height="17" x="39" y="178.5"/></switch></g><g stroke="#000" stroke-miterlimit="10" data-cell-id="vICzElCYx1xnmrUo5Y4q-5"><path fill="none" d="M37 32.35Q13 59 13 75.88" pointer-events="stroke"/><path d="m13 82.88-3.5-7h7Z" pointer-events="all"/></g><g stroke="#000" stroke-miterlimit="10" data-cell-id="vICzElCYx1xnmrUo5Y4q-6"><path fill="none" d="M63 32.06Q87 59 87.17 75.88" pointer-events="stroke"/><path d="m87.23 82.88-3.56-6.96 7-.07Z" pointer-events="all"/></g><g stroke="#000" stroke-miterlimit="10" data-cell-id="vICzElCYx1xnmrUo5Y4q-7"><path fill="none" d="M13 117q0 26 19.58 47.86" pointer-events="stroke"/><path d="m37.25 170.08-7.27-2.88 5.21-4.67Z" pointer-events="all"/></g><g stroke="#000" stroke-miterlimit="10" data-cell-id="vICzElCYx1xnmrUo5Y4q-8"><path fill="none" d="M87.26 117q-.26 26-18.87 46.99" pointer-events="stroke"/><path d="m63.74 169.23 2.03-7.56 5.23 4.64Z" pointer-events="all"/></g></g></g></svg>

See [this Mermaid guide](https://mermaid.js.org/intro/) for details.

{% note info %}

When using Mermaid, keep the following limitations in mind:

* There is no HTML support.
* You cannot use the `class` attribute to style diagrams.
* You cannot use CSS variables for colors.
* Markdown inside diagram sections is only partially supported (e.g., links do not work).

{% endnote %}

