{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-docs-realm.sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["configOptionRequirements"]},"redocly_category":"Realm","type":"markdown"},"seo":{"title":"SEO in Realm","description":"OpenAPI-generated documentation tool with 24k+ stars on Github - make APIs your company's superpower.","siteUrl":"https://redocly.com","image":"/assets/redocly-card.f670aae34a39545a5ea633a540cb3a4a333a1f23bb2ed3c4a1b17a5fbcf0ac85.db81178d.png","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"seo-in-realm","__idx":0},"children":["SEO in Realm"]},{"$$mdtype":"Tag","name":"ConfigOptionRequirements","attributes":{"products":["Revel","Realm"],"plans":["Pro","Enterprise","Enterprise+"]},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Discover how Realm ensures that your published project works well with search engines and what you can do to further optimize your content."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"seo-automation","__idx":1},"children":["SEO automation"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Realm's features automate many aspects of SEO:"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Link validation"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Realm validates both your links and redirects as you add content to your project."," ","You can catch broken links and stale redirects early, and the built-in CI/CD jobs prevent projects with link errors from publishing."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Lazy-loading"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Images and heavy components like the Replay console are loaded only when needed, improving the speed with which pages load."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Site map generation"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/realm/config/seo#generate-a-sitemap"},"children":["Configure ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["siteUrl"]}]}," in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["redocly.yaml"]}," and build your project."," ","After the build is finished, Realm automatically generates a sitemap for your project."," ","The sitemap is available at ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://<your-domain.com>/sitemap.xml"]},"."," ","You can then submit it to ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://search.google.com/search-console/"},"children":["Google Search Console"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Link canonicalization"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After you ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/realm/config/seo#generate-a-sitemap"},"children":["configure ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["siteUrl"]}]},", Realm also adds a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<link rel=\"canonical\">"]}," element to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<head>"]}," of each of your pages."," ","This element points to the page that represents the latest version of that content."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When your project contains versioned content, only the pages generated from files in the default version subfolder are marked as canonical."," ","If you later change the default version, Realm automatically moves the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<link rel=\"canonical\">"]}," to the new default version pages."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"optimize-your-project-for-search-engines","__idx":2},"children":["Optimize your project for search engines"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use the following strategies and techniques to boost the discoverability of your documentation both for external search engines, and internal search in Realm projects."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"build-a-pillar-structure-for-your-pages","__idx":3},"children":["Build a pillar structure for your pages"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Rather than a flat structure, consider grouping your content into related topics and placing them into separate folders."," ","Then dedicate one page to be the \"pillar\": an overview of content in the folder that links to each content file."," ","Finally, link back the content files to the pillar page."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This method reinforces the authority of the page over the given topic, and also makes your content easier to find."]},{"$$mdtype":"Tag","name":"Diagram","attributes":{"data-language":"mermaid","diagramType":"mermaid","diagramSource":"flowchart\n    A[Git integrations\n    index.md] -->\n    B[GitHub\n    github.md] -->\n    A --> C[GitLab\n    gitlab.md] -->\n    A --> D[Azure DevOps\n    azure.md] -->\n    A --> E[BitBucket\n    bitbucket.md] --> A\n","diagramHtml":"<svg id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 756.421875px;\" viewBox=\"0 0 756.421875 222\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .error-icon{fill:#552222;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .error-text{fill:#552222;stroke:#552222;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-thickness-normal{stroke-width:1px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-thickness-thick{stroke-width:3.5px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-pattern-solid{stroke-dasharray:0;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-pattern-dashed{stroke-dasharray:3;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edge-pattern-dotted{stroke-dasharray:2;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .marker{fill:#333333;stroke:#333333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .marker.cross{stroke:#333333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 p{margin:0;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .cluster-label text{fill:#333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .cluster-label span{color:#333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .cluster-label span p{background-color:transparent;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .label text,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 span{fill:#333;color:#333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node rect,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node circle,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node ellipse,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node polygon,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .rough-node .label text,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node .label text,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .image-shape .label,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .icon-shape .label{text-anchor:middle;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .rough-node .label,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node .label,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .image-shape .label,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .icon-shape .label{text-align:center;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node.clickable{cursor:pointer;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .arrowheadPath{fill:#333333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edgePath .path{stroke:#333333;stroke-width:1px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .flowchart-link{stroke:#333333;fill:none;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .cluster text{fill:#333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .cluster span{color:#333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 rect.text{fill:none;stroke-width:0;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .icon-shape,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .icon-shape p,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .icon-shape .label rect,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 .node .neo-node{stroke:#9370DB;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].node rect,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].cluster rect,#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].node polygon{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].node path{stroke:#9370DB;stroke-width:1px;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].node .outer-path{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].node .neo-line path{stroke:#9370DB;filter:none;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].node circle{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].icon-shape .icon{fill:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 [data-look=\"neo\"].icon-shape .icon-neo path{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M271.387,66.124L237.227,73.603C203.068,81.083,134.749,96.041,101.137,107.029C67.526,118.016,68.622,125.032,69.17,128.54L69.718,132.048\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_A_B_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_B_0\" data-points=\"W3sieCI6MjcxLjM4NjcxODc1LCJ5Ijo2Ni4xMjQxMzYzNjQyNDM4MX0seyJ4Ijo2Ni40Mjk2ODc1LCJ5IjoxMTF9LHsieCI6NzAuMzM1OTM3NSwieSI6MTM2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path><path d=\"M126.248,136L131.571,131.833C136.894,127.667,147.539,119.333,171.093,109.348C194.648,99.363,231.112,87.727,249.344,81.908L267.576,76.09\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_B_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_B_A_0\" data-points=\"W3sieCI6MTI2LjI0ODQ3NDEyMTA5Mzc1LCJ5IjoxMzZ9LHsieCI6MTU4LjE4MzU5Mzc1LCJ5IjoxMTF9LHsieCI6MjcxLjM4NjcxODc1LCJ5Ijo3NC44NzM3ODI2MjU2MzMwM31d\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path><path d=\"M271.387,77.961L255.853,83.468C240.319,88.974,209.251,99.987,198.515,109.249C187.779,118.511,197.374,126.023,202.171,129.779L206.969,133.534\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_A_C_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_C_0\" data-points=\"W3sieCI6MjcxLjM4NjcxODc1LCJ5Ijo3Ny45NjE0ODg1MzMxMDI1NX0seyJ4IjoxNzguMTgzNTkzNzUsInkiOjExMX0seyJ4IjoyMTAuMTE4NzEzMzc4OTA2MjUsInkiOjEzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path><path d=\"M314.046,136L319.827,131.833C325.607,127.667,337.169,119.333,343.498,111.659C349.827,103.984,350.923,96.968,351.471,93.46L352.019,89.952\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_C_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C_A_0\" data-points=\"W3sieCI6MzE0LjA0NTcxNTMzMjAzMTI1LCJ5IjoxMzZ9LHsieCI6MzQ4LjczMDQ2ODc1LCJ5IjoxMTF9LHsieCI6MzUyLjYzNjcxODc1LCJ5Ijo4Nn1d\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path><path d=\"M364.824,86L365.475,90.167C366.126,94.333,367.428,102.667,373.319,110.61C379.21,118.554,389.69,126.107,394.93,129.884L400.17,133.661\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_A_D_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_D_0\" data-points=\"W3sieCI6MzY0LjgyNDIxODc1LCJ5Ijo4Nn0seyJ4IjozNjguNzMwNDY4NzUsInkiOjExMX0seyJ4Ijo0MDMuNDE1MjIyMTY3OTY4NzUsInkiOjEzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path><path d=\"M515.933,136L522.173,131.833C528.414,127.667,540.894,119.333,529.885,109.495C518.875,99.656,484.374,88.312,467.124,82.64L449.874,76.968\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_D_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_D_A_0\" data-points=\"W3sieCI6NTE1LjkzMjk4MzM5ODQzNzUsInkiOjEzNn0seyJ4Ijo1NTMuMzc1LCJ5IjoxMTF9LHsieCI6NDQ2LjA3NDIxODc1LCJ5Ijo3NS43MTkwMTkwNDUxMzQzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path><path d=\"M446.074,73.043L467.291,79.369C488.508,85.695,530.941,98.348,557.844,108.47C584.747,118.593,596.119,126.186,601.805,129.982L607.49,133.779\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_A_E_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_E_0\" data-points=\"W3sieCI6NDQ2LjA3NDIxODc1LCJ5Ijo3My4wNDMwNTgxMDg0Mjc4MX0seyJ4Ijo1NzMuMzc1LCJ5IjoxMTF9LHsieCI6NjEwLjgxNzAxNjYwMTU2MjUsInkiOjEzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path><path d=\"M675.32,136L675.971,131.833C676.622,127.667,677.924,119.333,640.371,107.538C602.817,95.742,526.407,80.483,488.202,72.854L449.997,65.225\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-L_E_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_E_A_0\" data-points=\"W3sieCI6Njc1LjMyMDMxMjUsInkiOjEzNn0seyJ4Ijo2NzkuMjI2NTYyNSwieSI6MTExfSx7IngiOjQ0Ni4wNzQyMTg3NSwieSI6NjQuNDQxNzEwMjM5MjUzMTF9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_B_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_B_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_C_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_C_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_D_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_D_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_E_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_E_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-flowchart-A-0\" data-look=\"classic\" transform=\"translate(358.73046875, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-87.34375\" y=\"-39\" width=\"174.6875\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-57.34375, -24)\"><rect></rect><foreignObject width=\"114.6875\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Git integrations<br>    index.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-flowchart-B-1\" data-look=\"classic\" transform=\"translate(76.4296875, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-68.4296875\" y=\"-39\" width=\"136.859375\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-38.4296875, -24)\"><rect></rect><foreignObject width=\"76.859375\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>GitHub<br>    github.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-flowchart-C-3\" data-look=\"classic\" transform=\"translate(259.9375, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-65.078125\" y=\"-39\" width=\"130.15625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-35.078125, -24)\"><rect></rect><foreignObject width=\"70.15625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>GitLab<br>    gitlab.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-flowchart-D-5\" data-look=\"classic\" transform=\"translate(457.5234375, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-82.5078125\" y=\"-39\" width=\"165.015625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-52.5078125, -24)\"><rect></rect><foreignObject width=\"105.015625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Azure DevOps<br>    azure.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-flowchart-E-7\" data-look=\"classic\" transform=\"translate(669.2265625, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-79.1953125\" y=\"-39\" width=\"158.390625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-49.1953125, -24)\"><rect></rect><foreignObject width=\"98.390625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>BitBucket<br>    bitbucket.md</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs><defs><filter id=\"diagram-7c0f0a64f2745ef68ab3fbe9096a1127ee4acfd7bb8ce612f824e98d98ed2585-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs></svg>","diagramHtmlDark":"<svg id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 756.421875px;\" viewBox=\"0 0 756.421875 222\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .error-icon{fill:#a44141;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .error-text{fill:#ddd;stroke:#ddd;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-thickness-normal{stroke-width:1px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-thickness-thick{stroke-width:3.5px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-pattern-solid{stroke-dasharray:0;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-pattern-dashed{stroke-dasharray:3;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edge-pattern-dotted{stroke-dasharray:2;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .marker{fill:lightgrey;stroke:lightgrey;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .marker.cross{stroke:lightgrey;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 p{margin:0;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#ccc;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .cluster-label text{fill:#F9FFFE;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .cluster-label span{color:#F9FFFE;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .cluster-label span p{background-color:transparent;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .label text,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 span{fill:#ccc;color:#ccc;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node rect,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node circle,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node ellipse,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node polygon,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node path{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .rough-node .label text,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node .label text,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .image-shape .label,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .icon-shape .label{text-anchor:middle;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .rough-node .label,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node .label,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .image-shape .label,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .icon-shape .label{text-align:center;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node.clickable{cursor:pointer;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .root .anchor path{fill:lightgrey!important;stroke-width:0;stroke:lightgrey;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .arrowheadPath{fill:lightgrey;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edgePath .path{stroke:lightgrey;stroke-width:1px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .flowchart-link{stroke:lightgrey;fill:none;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edgeLabel p{background-color:hsl(0, 0%, 34.4117647059%);}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .cluster text{fill:#F9FFFE;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .cluster span{color:#F9FFFE;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 rect.text{fill:none;stroke-width:0;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .icon-shape,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .image-shape{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .icon-shape p,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .image-shape p{background-color:hsl(0, 0%, 34.4117647059%);padding:2px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .icon-shape .label rect,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .image-shape .label rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 .node .neo-node{stroke:#ccc;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].node rect,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].cluster rect,#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].node polygon{stroke:url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].node path{stroke:url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-gradient);stroke-width:1px;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].node .neo-line path{stroke:#ccc;filter:none;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].node circle{stroke:url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].icon-shape .icon{fill:url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 [data-look=\"neo\"].icon-shape .icon-neo path{stroke:url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M271.387,66.124L237.227,73.603C203.068,81.083,134.749,96.041,101.137,107.029C67.526,118.016,68.622,125.032,69.17,128.54L69.718,132.048\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_A_B_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_B_0\" data-points=\"W3sieCI6MjcxLjM4NjcxODc1LCJ5Ijo2Ni4xMjQxMzYzNjQyNDM4MX0seyJ4Ijo2Ni40Mjk2ODc1LCJ5IjoxMTF9LHsieCI6NzAuMzM1OTM3NSwieSI6MTM2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path><path d=\"M126.248,136L131.571,131.833C136.894,127.667,147.539,119.333,171.093,109.348C194.648,99.363,231.112,87.727,249.344,81.908L267.576,76.09\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_B_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_B_A_0\" data-points=\"W3sieCI6MTI2LjI0ODQ3NDEyMTA5Mzc1LCJ5IjoxMzZ9LHsieCI6MTU4LjE4MzU5Mzc1LCJ5IjoxMTF9LHsieCI6MjcxLjM4NjcxODc1LCJ5Ijo3NC44NzM3ODI2MjU2MzMwM31d\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path><path d=\"M271.387,77.961L255.853,83.468C240.319,88.974,209.251,99.987,198.515,109.249C187.779,118.511,197.374,126.023,202.171,129.779L206.969,133.534\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_A_C_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_C_0\" data-points=\"W3sieCI6MjcxLjM4NjcxODc1LCJ5Ijo3Ny45NjE0ODg1MzMxMDI1NX0seyJ4IjoxNzguMTgzNTkzNzUsInkiOjExMX0seyJ4IjoyMTAuMTE4NzEzMzc4OTA2MjUsInkiOjEzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path><path d=\"M314.046,136L319.827,131.833C325.607,127.667,337.169,119.333,343.498,111.659C349.827,103.984,350.923,96.968,351.471,93.46L352.019,89.952\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_C_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C_A_0\" data-points=\"W3sieCI6MzE0LjA0NTcxNTMzMjAzMTI1LCJ5IjoxMzZ9LHsieCI6MzQ4LjczMDQ2ODc1LCJ5IjoxMTF9LHsieCI6MzUyLjYzNjcxODc1LCJ5Ijo4Nn1d\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path><path d=\"M364.824,86L365.475,90.167C366.126,94.333,367.428,102.667,373.319,110.61C379.21,118.554,389.69,126.107,394.93,129.884L400.17,133.661\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_A_D_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_D_0\" data-points=\"W3sieCI6MzY0LjgyNDIxODc1LCJ5Ijo4Nn0seyJ4IjozNjguNzMwNDY4NzUsInkiOjExMX0seyJ4Ijo0MDMuNDE1MjIyMTY3OTY4NzUsInkiOjEzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path><path d=\"M515.933,136L522.173,131.833C528.414,127.667,540.894,119.333,529.885,109.495C518.875,99.656,484.374,88.312,467.124,82.64L449.874,76.968\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_D_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_D_A_0\" data-points=\"W3sieCI6NTE1LjkzMjk4MzM5ODQzNzUsInkiOjEzNn0seyJ4Ijo1NTMuMzc1LCJ5IjoxMTF9LHsieCI6NDQ2LjA3NDIxODc1LCJ5Ijo3NS43MTkwMTkwNDUxMzQzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path><path d=\"M446.074,73.043L467.291,79.369C488.508,85.695,530.941,98.348,557.844,108.47C584.747,118.593,596.119,126.186,601.805,129.982L607.49,133.779\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_A_E_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_E_0\" data-points=\"W3sieCI6NDQ2LjA3NDIxODc1LCJ5Ijo3My4wNDMwNTgxMDg0Mjc4MX0seyJ4Ijo1NzMuMzc1LCJ5IjoxMTF9LHsieCI6NjEwLjgxNzAxNjYwMTU2MjUsInkiOjEzNn1d\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path><path d=\"M675.32,136L675.971,131.833C676.622,127.667,677.924,119.333,640.371,107.538C602.817,95.742,526.407,80.483,488.202,72.854L449.997,65.225\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-L_E_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_E_A_0\" data-points=\"W3sieCI6Njc1LjMyMDMxMjUsInkiOjEzNn0seyJ4Ijo2NzkuMjI2NTYyNSwieSI6MTExfSx7IngiOjQ0Ni4wNzQyMTg3NSwieSI6NjQuNDQxNzEwMjM5MjUzMTF9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_B_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_B_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_C_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_C_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_D_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_D_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_E_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_E_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-flowchart-A-0\" data-look=\"classic\" transform=\"translate(358.73046875, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-87.34375\" y=\"-39\" width=\"174.6875\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-57.34375, -24)\"><rect></rect><foreignObject width=\"114.6875\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Git integrations<br>    index.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-flowchart-B-1\" data-look=\"classic\" transform=\"translate(76.4296875, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-68.4296875\" y=\"-39\" width=\"136.859375\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-38.4296875, -24)\"><rect></rect><foreignObject width=\"76.859375\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>GitHub<br>    github.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-flowchart-C-3\" data-look=\"classic\" transform=\"translate(259.9375, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-65.078125\" y=\"-39\" width=\"130.15625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-35.078125, -24)\"><rect></rect><foreignObject width=\"70.15625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>GitLab<br>    gitlab.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-flowchart-D-5\" data-look=\"classic\" transform=\"translate(457.5234375, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-82.5078125\" y=\"-39\" width=\"165.015625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-52.5078125, -24)\"><rect></rect><foreignObject width=\"105.015625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Azure DevOps<br>    azure.md</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-flowchart-E-7\" data-look=\"classic\" transform=\"translate(669.2265625, 175)\"><rect class=\"basic label-container\" style=\"\" x=\"-79.1953125\" y=\"-39\" width=\"158.390625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-49.1953125, -24)\"><rect></rect><foreignObject width=\"98.390625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>BitBucket<br>    bitbucket.md</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><defs><filter id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><linearGradient id=\"diagram-99afa4bb3fd058e3cefb48886ec0be96b20725e73611f26ab701b158787dbff9-gradient\" gradientUnits=\"objectBoundingBox\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" stop-color=\"#cccccc\" stop-opacity=\"1\"></stop><stop offset=\"100%\" stop-color=\"hsl(180, 0%, 18.3529411765%)\" stop-opacity=\"1\"></stop></linearGradient></svg>"},"children":["flowchart\n    A[Git integrations\n    index.md] -->\n    B[GitHub\n    github.md] -->\n    A --> C[GitLab\n    gitlab.md] -->\n    A --> D[Azure DevOps\n    azure.md] -->\n    A --> E[BitBucket\n    bitbucket.md] --> A\n"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"add-unique-page-titles-and-descriptions","__idx":4},"children":["Add unique page titles and descriptions"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use unique, descriptive titles."," ","Repeated titles like \"Overview\", \"Settings\", or \"Getting started\" can negatively affect search results and also become confusing for users and authors."," ","Instead, use product or feature names: \"Authentication overview\", \"RBAC settings\", \"Getting started in Reunite\"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"add-meta-tags","__idx":5},"children":["Add meta tags"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["HTML ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<meta>"]}," tags describe your content for search engines."," ","The tags and their values affect how your project pages are indexed and displayed in the search results."," ","In Realm, you can set the values for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<meta>"]}," tags under the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/realm/config/seo"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["seo"]}," option"]},":"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["redocly.yaml"]}," for the entire project"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["in the front matter of individual pages to override global configuration"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The following options are available to configure in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["seo"]},":"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description"]},": Add up to 150 characters to have a better control over the text snippet that appears in external search engines."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["keywords"]},": While keywords lost their importance in SEO, you still can add them to your project."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["meta"]},": You can add additional meta tags to your project and individual pages."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Realm also provides options for social media sharing:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["image"]},": Add a path to an image you want to appear on social media link previews."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Example of metadata on a blogpost page:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"---\nseo:\n  title: SEO the API docs\n  description: SEO is an excellent API marketing technique.\n  keywords: 'seo, documentation, api'\n  image: ./images/seo.jpg\n---\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"json-ld","__idx":6},"children":["JSON-LD"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Realm supports JSON-LD parameters in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["redocly.yaml"]}," and in the front matter to add structured data to your project."," ","You can choose from among the schemas available on ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://schema.org/docs/schemas.html"},"children":["Schema.org"]}," that best describe your project or individual pages."," ","Structured data is essential for creation of rich snippets and improving the click-through rate of your project."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["jsonLd"]}," object can be used alongside other ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["seo"]}," options."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Example of JSON-LD metadata on a blogpost page:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"---\nseo:\n  jsonLd:\n      \"@context\": https://schema.org\n      \"@type\": BlogPosting\n      author:\n        - \"@type\": Person\n          name: Adam Altman\n          url: https://twitter.com/adamaltman\n      headline: SEO the API docs\n---\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"resources","__idx":7},"children":["Resources"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/realm/config/seo"},"children":["seo"]}]}," - Explore configuration options that optimize your content for search engines"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/realm/config/front-matter-config"},"children":["Front matter configuration"]}]}," - Configure information for the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<head>"]}," tag for specific pages"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://redocly.com/blog/seo-best-practices-documentation"},"children":["SEO best practices for documentation"]}]}," - Read Redocly's blog post about making your project work better with search engines"]}]}]},"headings":[{"value":"SEO in Realm","id":"seo-in-realm","depth":1},{"value":"SEO automation","id":"seo-automation","depth":2},{"value":"Optimize your project for search engines","id":"optimize-your-project-for-search-engines","depth":2},{"value":"Build a pillar structure for your pages","id":"build-a-pillar-structure-for-your-pages","depth":3},{"value":"Add unique page titles and descriptions","id":"add-unique-page-titles-and-descriptions","depth":3},{"value":"Add meta tags","id":"add-meta-tags","depth":3},{"value":"JSON-LD","id":"json-ld","depth":4},{"value":"Resources","id":"resources","depth":2}],"frontmatter":{"products":["Revel","Realm"],"plans":["Pro","Enterprise","Enterprise+"],"seo":{"title":"SEO in Realm"}},"lastModified":"2026-05-30T13:19:34.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/realm/content/realm-seo","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}