diff --git a/404.html b/404.html index 46ac2dca..67f0ce91 100644 --- a/404.html +++ b/404.html @@ -5,11 +5,11 @@ Calimero 2.0 - - - + + + -
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

+
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

\ No newline at end of file diff --git a/assets/css/styles.931d4a9e.css b/assets/css/styles.b4a8926f.css similarity index 88% rename from assets/css/styles.931d4a9e.css rename to assets/css/styles.b4a8926f.css index f1903a23..dbb7562a 100644 --- a/assets/css/styles.931d4a9e.css +++ b/assets/css/styles.b4a8926f.css @@ -1 +1 @@ -.col,.container{padding:0 var(--ifm-spacing-horizontal);width:100%}.markdown>h2,.markdown>h3,.markdown>h4,.markdown>h5,.markdown>h6{margin-bottom:calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown li,body{word-wrap:break-word}body,ol ol,ol ul,ul ol,ul ul{margin:0}pre,table{overflow:auto}blockquote,pre{margin:0 0 var(--ifm-spacing-vertical)}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button,code{vertical-align:middle}.button--outline.button--active,.button--outline:active,.button--outline:hover,:root{--ifm-button-color:var(--ifm-font-color-base-inverse)}.menu__link:hover,a{transition:color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.navbar--dark,:root{--ifm-navbar-link-hover-color:var(--ifm-color-primary)}.menu,.navbar-sidebar{overflow-x:hidden}:root,html[data-theme=dark]{--ifm-color-emphasis-500:var(--ifm-color-gray-500)}*,.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.toggleButton_pSDN,html{-webkit-tap-highlight-color:transparent}:root{--ifm-color-scheme:light;--ifm-dark-value:10%;--ifm-darker-value:15%;--ifm-darkest-value:30%;--ifm-light-value:15%;--ifm-lighter-value:30%;--ifm-lightest-value:50%;--ifm-contrast-background-value:90%;--ifm-contrast-foreground-value:70%;--ifm-contrast-background-dark-value:70%;--ifm-contrast-foreground-dark-value:90%;--ifm-color-primary:#3578e5;--ifm-color-secondary:#ebedf0;--ifm-color-success:#00a400;--ifm-color-info:#54c7ec;--ifm-color-warning:#ffba00;--ifm-color-danger:#fa383e;--ifm-color-primary-dark:#306cce;--ifm-color-primary-darker:#2d66c3;--ifm-color-primary-darkest:#2554a0;--ifm-color-primary-light:#538ce9;--ifm-color-primary-lighter:#72a1ed;--ifm-color-primary-lightest:#9abcf2;--ifm-color-primary-contrast-background:#ebf2fc;--ifm-color-primary-contrast-foreground:#102445;--ifm-color-secondary-dark:#d4d5d8;--ifm-color-secondary-darker:#c8c9cc;--ifm-color-secondary-darkest:#a4a6a8;--ifm-color-secondary-light:#eef0f2;--ifm-color-secondary-lighter:#f1f2f5;--ifm-color-secondary-lightest:#f5f6f8;--ifm-color-secondary-contrast-background:#fdfdfe;--ifm-color-secondary-contrast-foreground:#474748;--ifm-color-success-dark:#009400;--ifm-color-success-darker:#008b00;--ifm-color-success-darkest:#007300;--ifm-color-success-light:#26b226;--ifm-color-success-lighter:#4dbf4d;--ifm-color-success-lightest:#80d280;--ifm-color-success-contrast-background:#e6f6e6;--ifm-color-success-contrast-foreground:#003100;--ifm-color-info-dark:#4cb3d4;--ifm-color-info-darker:#47a9c9;--ifm-color-info-darkest:#3b8ba5;--ifm-color-info-light:#6ecfef;--ifm-color-info-lighter:#87d8f2;--ifm-color-info-lightest:#aae3f6;--ifm-color-info-contrast-background:#eef9fd;--ifm-color-info-contrast-foreground:#193c47;--ifm-color-warning-dark:#e6a700;--ifm-color-warning-darker:#d99e00;--ifm-color-warning-darkest:#b38200;--ifm-color-warning-light:#ffc426;--ifm-color-warning-lighter:#ffcf4d;--ifm-color-warning-lightest:#ffdd80;--ifm-color-warning-contrast-background:#fff8e6;--ifm-color-warning-contrast-foreground:#4d3800;--ifm-color-danger-dark:#e13238;--ifm-color-danger-darker:#d53035;--ifm-color-danger-darkest:#af272b;--ifm-color-danger-light:#fb565b;--ifm-color-danger-lighter:#fb7478;--ifm-color-danger-lightest:#fd9c9f;--ifm-color-danger-contrast-background:#ffebec;--ifm-color-danger-contrast-foreground:#4b1113;--ifm-color-white:#fff;--ifm-color-black:#000;--ifm-color-gray-0:var(--ifm-color-white);--ifm-color-gray-100:#f5f6f7;--ifm-color-gray-200:#ebedf0;--ifm-color-gray-300:#dadde1;--ifm-color-gray-400:#ccd0d5;--ifm-color-gray-500:#bec3c9;--ifm-color-gray-600:#8d949e;--ifm-color-gray-700:#606770;--ifm-color-gray-800:#444950;--ifm-color-gray-900:#1c1e21;--ifm-color-gray-1000:var(--ifm-color-black);--ifm-color-emphasis-0:var(--ifm-color-gray-0);--ifm-color-emphasis-100:var(--ifm-color-gray-100);--ifm-color-emphasis-200:var(--ifm-color-gray-200);--ifm-color-emphasis-300:var(--ifm-color-gray-300);--ifm-color-emphasis-400:var(--ifm-color-gray-400);--ifm-color-emphasis-600:var(--ifm-color-gray-600);--ifm-color-emphasis-700:var(--ifm-color-gray-700);--ifm-color-emphasis-800:var(--ifm-color-gray-800);--ifm-color-emphasis-900:var(--ifm-color-gray-900);--ifm-color-emphasis-1000:var(--ifm-color-gray-1000);--ifm-color-content:var(--ifm-color-emphasis-900);--ifm-color-content-inverse:var(--ifm-color-emphasis-0);--ifm-color-content-secondary:#525860;--ifm-background-color:#0000;--ifm-background-surface-color:var(--ifm-color-content-inverse);--ifm-global-border-width:1px;--ifm-global-radius:0.4rem;--ifm-hover-overlay:#0000000d;--ifm-font-color-base:var(--ifm-color-content);--ifm-font-color-base-inverse:var(--ifm-color-content-inverse);--ifm-font-color-secondary:var(--ifm-color-content-secondary);--ifm-font-family-base:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--ifm-font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ifm-font-size-base:100%;--ifm-font-weight-light:300;--ifm-font-weight-normal:400;--ifm-font-weight-semibold:500;--ifm-font-weight-bold:700;--ifm-font-weight-base:var(--ifm-font-weight-normal);--ifm-line-height-base:1.65;--ifm-global-spacing:1rem;--ifm-spacing-vertical:var(--ifm-global-spacing);--ifm-spacing-horizontal:var(--ifm-global-spacing);--ifm-transition-fast:200ms;--ifm-transition-slow:400ms;--ifm-transition-timing-default:cubic-bezier(0.08,0.52,0.52,1);--ifm-global-shadow-lw:0 1px 2px 0 #0000001a;--ifm-global-shadow-md:0 5px 40px #0003;--ifm-global-shadow-tl:0 12px 28px 0 #0003,0 2px 4px 0 #0000001a;--ifm-z-index-dropdown:100;--ifm-z-index-fixed:200;--ifm-z-index-overlay:400;--ifm-container-width:1140px;--ifm-container-width-xl:1320px;--ifm-code-background:#f6f7f8;--ifm-code-border-radius:var(--ifm-global-radius);--ifm-code-font-size:90%;--ifm-code-padding-horizontal:0.1rem;--ifm-code-padding-vertical:0.1rem;--ifm-pre-background:var(--ifm-code-background);--ifm-pre-border-radius:var(--ifm-code-border-radius);--ifm-pre-color:inherit;--ifm-pre-line-height:1.45;--ifm-pre-padding:1rem;--ifm-heading-color:inherit;--ifm-heading-margin-top:0;--ifm-heading-margin-bottom:var(--ifm-spacing-vertical);--ifm-heading-font-family:var(--ifm-font-family-base);--ifm-heading-font-weight:var(--ifm-font-weight-bold);--ifm-heading-line-height:1.25;--ifm-h1-font-size:2rem;--ifm-h2-font-size:1.5rem;--ifm-h3-font-size:1.25rem;--ifm-h4-font-size:1rem;--ifm-h5-font-size:0.875rem;--ifm-h6-font-size:0.85rem;--ifm-image-alignment-padding:1.25rem;--ifm-leading-desktop:1.25;--ifm-leading:calc(var(--ifm-leading-desktop)*1rem);--ifm-list-left-padding:2rem;--ifm-list-margin:1rem;--ifm-list-item-margin:0.25rem;--ifm-list-paragraph-margin:1rem;--ifm-table-cell-padding:0.75rem;--ifm-table-background:#0000;--ifm-table-stripe-background:#00000008;--ifm-table-border-width:1px;--ifm-table-border-color:var(--ifm-color-emphasis-300);--ifm-table-head-background:inherit;--ifm-table-head-color:inherit;--ifm-table-head-font-weight:var(--ifm-font-weight-bold);--ifm-table-cell-color:inherit;--ifm-link-color:var(--ifm-color-primary);--ifm-link-decoration:none;--ifm-link-hover-color:var(--ifm-link-color);--ifm-link-hover-decoration:underline;--ifm-paragraph-margin-bottom:var(--ifm-leading);--ifm-blockquote-font-size:var(--ifm-font-size-base);--ifm-blockquote-border-left-width:2px;--ifm-blockquote-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-blockquote-padding-vertical:0;--ifm-blockquote-shadow:none;--ifm-blockquote-color:var(--ifm-color-emphasis-800);--ifm-blockquote-border-color:var(--ifm-color-emphasis-300);--ifm-hr-background-color:var(--ifm-color-emphasis-500);--ifm-hr-height:1px;--ifm-hr-margin-vertical:1.5rem;--ifm-scrollbar-size:7px;--ifm-scrollbar-track-background-color:#f1f1f1;--ifm-scrollbar-thumb-background-color:silver;--ifm-scrollbar-thumb-hover-background-color:#a7a7a7;--ifm-alert-background-color:inherit;--ifm-alert-border-color:inherit;--ifm-alert-border-radius:var(--ifm-global-radius);--ifm-alert-border-width:0px;--ifm-alert-border-left-width:5px;--ifm-alert-color:var(--ifm-font-color-base);--ifm-alert-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-alert-padding-vertical:var(--ifm-spacing-vertical);--ifm-alert-shadow:var(--ifm-global-shadow-lw);--ifm-avatar-intro-margin:1rem;--ifm-avatar-intro-alignment:inherit;--ifm-avatar-photo-size:3rem;--ifm-badge-background-color:inherit;--ifm-badge-border-color:inherit;--ifm-badge-border-radius:var(--ifm-global-radius);--ifm-badge-border-width:var(--ifm-global-border-width);--ifm-badge-color:var(--ifm-color-white);--ifm-badge-padding-horizontal:calc(var(--ifm-spacing-horizontal)*0.5);--ifm-badge-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-breadcrumb-border-radius:1.5rem;--ifm-breadcrumb-spacing:0.5rem;--ifm-breadcrumb-color-active:var(--ifm-color-primary);--ifm-breadcrumb-item-background-active:var(--ifm-hover-overlay);--ifm-breadcrumb-padding-horizontal:0.8rem;--ifm-breadcrumb-padding-vertical:0.4rem;--ifm-breadcrumb-size-multiplier:1;--ifm-breadcrumb-separator:url('data:image/svg+xml;utf8,');--ifm-breadcrumb-separator-filter:none;--ifm-breadcrumb-separator-size:0.5rem;--ifm-breadcrumb-separator-size-multiplier:1.25;--ifm-button-background-color:inherit;--ifm-button-border-color:var(--ifm-button-background-color);--ifm-button-border-width:var(--ifm-global-border-width);--ifm-button-font-weight:var(--ifm-font-weight-bold);--ifm-button-padding-horizontal:1.5rem;--ifm-button-padding-vertical:0.375rem;--ifm-button-size-multiplier:1;--ifm-button-transition-duration:var(--ifm-transition-fast);--ifm-button-border-radius:calc(var(--ifm-global-radius)*var(--ifm-button-size-multiplier));--ifm-button-group-spacing:2px;--ifm-card-background-color:var(--ifm-background-surface-color);--ifm-card-border-radius:calc(var(--ifm-global-radius)*2);--ifm-card-horizontal-spacing:var(--ifm-global-spacing);--ifm-card-vertical-spacing:var(--ifm-global-spacing);--ifm-toc-border-color:var(--ifm-color-emphasis-300);--ifm-toc-link-color:var(--ifm-color-content-secondary);--ifm-toc-padding-vertical:0.5rem;--ifm-toc-padding-horizontal:0.5rem;--ifm-dropdown-background-color:var(--ifm-background-surface-color);--ifm-dropdown-font-weight:var(--ifm-font-weight-semibold);--ifm-dropdown-link-color:var(--ifm-font-color-base);--ifm-dropdown-hover-background-color:var(--ifm-hover-overlay);--ifm-footer-background-color:var(--ifm-color-emphasis-100);--ifm-footer-color:inherit;--ifm-footer-link-color:var(--ifm-color-emphasis-700);--ifm-footer-link-hover-color:var(--ifm-color-primary);--ifm-footer-link-horizontal-spacing:0.5rem;--ifm-footer-padding-horizontal:calc(var(--ifm-spacing-horizontal)*2);--ifm-footer-padding-vertical:calc(var(--ifm-spacing-vertical)*2);--ifm-footer-title-color:inherit;--ifm-footer-logo-max-width:min(30rem,90vw);--ifm-hero-background-color:var(--ifm-background-surface-color);--ifm-hero-text-color:var(--ifm-color-emphasis-800);--ifm-menu-color:var(--ifm-color-emphasis-700);--ifm-menu-color-active:var(--ifm-color-primary);--ifm-menu-color-background-active:var(--ifm-hover-overlay);--ifm-menu-color-background-hover:var(--ifm-hover-overlay);--ifm-menu-link-padding-horizontal:0.75rem;--ifm-menu-link-padding-vertical:0.375rem;--ifm-menu-link-sublist-icon:url('data:image/svg+xml;utf8,');--ifm-menu-link-sublist-icon-filter:none;--ifm-navbar-background-color:var(--ifm-background-surface-color);--ifm-navbar-height:3.75rem;--ifm-navbar-item-padding-horizontal:0.75rem;--ifm-navbar-item-padding-vertical:0.25rem;--ifm-navbar-link-color:var(--ifm-font-color-base);--ifm-navbar-link-active-color:var(--ifm-link-color);--ifm-navbar-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-navbar-padding-vertical:calc(var(--ifm-spacing-vertical)*0.5);--ifm-navbar-shadow:var(--ifm-global-shadow-lw);--ifm-navbar-search-input-background-color:var(--ifm-color-emphasis-200);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-800);--ifm-navbar-search-input-placeholder-color:var(--ifm-color-emphasis-500);--ifm-navbar-search-input-icon:url('data:image/svg+xml;utf8,');--ifm-navbar-sidebar-width:83vw;--ifm-pagination-border-radius:var(--ifm-global-radius);--ifm-pagination-color-active:var(--ifm-color-primary);--ifm-pagination-font-size:1rem;--ifm-pagination-item-active-background:var(--ifm-hover-overlay);--ifm-pagination-page-spacing:0.2em;--ifm-pagination-padding-horizontal:calc(var(--ifm-spacing-horizontal)*1);--ifm-pagination-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-pagination-nav-border-radius:var(--ifm-global-radius);--ifm-pagination-nav-color-hover:var(--ifm-color-primary);--ifm-pills-color-active:var(--ifm-color-primary);--ifm-pills-color-background-active:var(--ifm-hover-overlay);--ifm-pills-spacing:0.125rem;--ifm-tabs-color:var(--ifm-font-color-secondary);--ifm-tabs-color-active:var(--ifm-color-primary);--ifm-tabs-color-active-border:var(--ifm-tabs-color-active);--ifm-tabs-padding-horizontal:1rem;--ifm-tabs-padding-vertical:1rem;--docusaurus-progress-bar-color:var(--ifm-color-primary);--ifm-color-primary:#33b4b7;--ifm-color-primary-dark:#2ea2a5;--ifm-color-primary-darker:#2b999c;--ifm-color-primary-darkest:#247e80;--ifm-color-primary-light:#39c5c8;--ifm-color-primary-lighter:#43c7ca;--ifm-color-primary-lightest:#5ed0d2;--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:#fff;--docusaurus-tag-list-border:var(--ifm-color-emphasis-300);--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:#656c85cc;--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 #ffffff80,0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px #1e235a66;--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 #1e235a66;--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 #45629b1f;--docsearch-primary-color:var(--ifm-color-primary);--docsearch-text-color:var(--ifm-font-color-base);--docusaurus-announcement-bar-height:auto;--docusaurus-collapse-button-bg:#0000;--docusaurus-collapse-button-bg-hover:#0000001a;--doc-sidebar-width:300px;--doc-sidebar-hidden-width:30px}.badge--danger,.badge--info,.badge--primary,.badge--secondary,.badge--success,.badge--warning{--ifm-badge-border-color:var(--ifm-badge-background-color)}.button--link,.button--outline{--ifm-button-background-color:#0000}html{background-color:var(--ifm-background-color);color:var(--ifm-font-color-base);color-scheme:var(--ifm-color-scheme);font:var(--ifm-font-size-base)/var(--ifm-line-height-base) var(--ifm-font-family-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%}iframe{border:0;color-scheme:auto}.container{margin:0 auto;max-width:var(--ifm-container-width)}.container--fluid{max-width:inherit}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--ifm-spacing-horizontal)*-1)}.margin-bottom--none,.margin-vert--none,.markdown>:last-child{margin-bottom:0!important}.margin-top--none,.margin-vert--none{margin-top:0!important}.row--no-gutters{margin-left:0;margin-right:0}.margin-horiz--none,.margin-right--none{margin-right:0!important}.row--no-gutters>.col{padding-left:0;padding-right:0}.row--align-top{align-items:flex-start}.row--align-bottom{align-items:flex-end}.row--align-center{align-items:center}.row--align-stretch{align-items:stretch}.row--align-baseline{align-items:baseline}.col{--ifm-col-width:100%;flex:1 0;margin-left:0;max-width:var(--ifm-col-width)}.padding-bottom--none,.padding-vert--none{padding-bottom:0!important}.padding-top--none,.padding-vert--none{padding-top:0!important}.padding-horiz--none,.padding-left--none{padding-left:0!important}.padding-horiz--none,.padding-right--none{padding-right:0!important}.col[class*=col--]{flex:0 0 var(--ifm-col-width)}.col--1{--ifm-col-width:8.33333%}.col--offset-1{margin-left:8.33333%}.col--2{--ifm-col-width:16.66667%}.col--offset-2{margin-left:16.66667%}.col--3{--ifm-col-width:25%}.col--offset-3{margin-left:25%}.col--4{--ifm-col-width:33.33333%}.col--offset-4{margin-left:33.33333%}.col--5{--ifm-col-width:41.66667%}.col--offset-5{margin-left:41.66667%}.col--6{--ifm-col-width:50%}.col--offset-6{margin-left:50%}.col--7{--ifm-col-width:58.33333%}.col--offset-7{margin-left:58.33333%}.col--8{--ifm-col-width:66.66667%}.col--offset-8{margin-left:66.66667%}.col--9{--ifm-col-width:75%}.col--offset-9{margin-left:75%}.col--10{--ifm-col-width:83.33333%}.col--offset-10{margin-left:83.33333%}.col--11{--ifm-col-width:91.66667%}.col--offset-11{margin-left:91.66667%}.col--12{--ifm-col-width:100%}.col--offset-12{margin-left:100%}.margin-horiz--none,.margin-left--none{margin-left:0!important}.margin--none{margin:0!important}.margin-bottom--xs,.margin-vert--xs{margin-bottom:.25rem!important}.margin-top--xs,.margin-vert--xs{margin-top:.25rem!important}.margin-horiz--xs,.margin-left--xs{margin-left:.25rem!important}.margin-horiz--xs,.margin-right--xs{margin-right:.25rem!important}.margin--xs{margin:.25rem!important}.margin-bottom--sm,.margin-vert--sm{margin-bottom:.5rem!important}.margin-top--sm,.margin-vert--sm{margin-top:.5rem!important}.margin-horiz--sm,.margin-left--sm{margin-left:.5rem!important}.margin-horiz--sm,.margin-right--sm{margin-right:.5rem!important}.margin--sm{margin:.5rem!important}.margin-bottom--md,.margin-vert--md{margin-bottom:1rem!important}.margin-top--md,.margin-vert--md{margin-top:1rem!important}.margin-horiz--md,.margin-left--md{margin-left:1rem!important}.margin-horiz--md,.margin-right--md{margin-right:1rem!important}.margin--md{margin:1rem!important}.margin-bottom--lg,.margin-vert--lg{margin-bottom:2rem!important}.margin-top--lg,.margin-vert--lg{margin-top:2rem!important}.margin-horiz--lg,.margin-left--lg{margin-left:2rem!important}.margin-horiz--lg,.margin-right--lg{margin-right:2rem!important}.margin--lg{margin:2rem!important}.margin-bottom--xl,.margin-vert--xl{margin-bottom:5rem!important}.margin-top--xl,.margin-vert--xl{margin-top:5rem!important}.margin-horiz--xl,.margin-left--xl{margin-left:5rem!important}.margin-horiz--xl,.margin-right--xl{margin-right:5rem!important}.margin--xl{margin:5rem!important}.padding--none{padding:0!important}.padding-bottom--xs,.padding-vert--xs{padding-bottom:.25rem!important}.padding-top--xs,.padding-vert--xs{padding-top:.25rem!important}.padding-horiz--xs,.padding-left--xs{padding-left:.25rem!important}.padding-horiz--xs,.padding-right--xs{padding-right:.25rem!important}.padding--xs{padding:.25rem!important}.padding-bottom--sm,.padding-vert--sm{padding-bottom:.5rem!important}.padding-top--sm,.padding-vert--sm{padding-top:.5rem!important}.padding-horiz--sm,.padding-left--sm{padding-left:.5rem!important}.padding-horiz--sm,.padding-right--sm{padding-right:.5rem!important}.padding--sm{padding:.5rem!important}.padding-bottom--md,.padding-vert--md{padding-bottom:1rem!important}.padding-top--md,.padding-vert--md{padding-top:1rem!important}.padding-horiz--md,.padding-left--md{padding-left:1rem!important}.padding-horiz--md,.padding-right--md{padding-right:1rem!important}.padding--md{padding:1rem!important}.padding-bottom--lg,.padding-vert--lg{padding-bottom:2rem!important}.padding-top--lg,.padding-vert--lg{padding-top:2rem!important}.padding-horiz--lg,.padding-left--lg{padding-left:2rem!important}.padding-horiz--lg,.padding-right--lg{padding-right:2rem!important}.padding--lg{padding:2rem!important}.padding-bottom--xl,.padding-vert--xl{padding-bottom:5rem!important}.padding-top--xl,.padding-vert--xl{padding-top:5rem!important}.padding-horiz--xl,.padding-left--xl{padding-left:5rem!important}.padding-horiz--xl,.padding-right--xl{padding-right:5rem!important}.padding--xl{padding:5rem!important}code{background-color:var(--ifm-code-background);border:.1rem solid #0000001a;border-radius:var(--ifm-code-border-radius);font-family:var(--ifm-font-family-monospace);font-size:var(--ifm-code-font-size);padding:var(--ifm-code-padding-vertical) var(--ifm-code-padding-horizontal)}a code{color:inherit}pre{background-color:var(--ifm-pre-background);border-radius:var(--ifm-pre-border-radius);color:var(--ifm-pre-color);font:var(--ifm-code-font-size)/var(--ifm-pre-line-height) var(--ifm-font-family-monospace);padding:var(--ifm-pre-padding)}pre code{background-color:initial;border:none;font-size:100%;line-height:inherit;padding:0}kbd{background-color:var(--ifm-color-emphasis-0);border:1px solid var(--ifm-color-emphasis-400);border-radius:.2rem;box-shadow:inset 0 -1px 0 var(--ifm-color-emphasis-400);color:var(--ifm-color-emphasis-800);font:80% var(--ifm-font-family-monospace);padding:.15rem .3rem}h1,h2,h3,h4,h5,h6{color:var(--ifm-heading-color);font-family:var(--ifm-heading-font-family);font-weight:var(--ifm-heading-font-weight);line-height:var(--ifm-heading-line-height);margin:var(--ifm-heading-margin-top) 0 var(--ifm-heading-margin-bottom) 0}h1{font-size:var(--ifm-h1-font-size)}h2{font-size:var(--ifm-h2-font-size)}h3{font-size:var(--ifm-h3-font-size)}h4{font-size:var(--ifm-h4-font-size)}h5{font-size:var(--ifm-h5-font-size)}h6{font-size:var(--ifm-h6-font-size)}img{max-width:100%}img[align=right]{padding-left:var(--image-alignment-padding)}img[align=left]{padding-right:var(--image-alignment-padding)}.markdown{--ifm-h1-vertical-rhythm-top:3;--ifm-h2-vertical-rhythm-top:2;--ifm-h3-vertical-rhythm-top:1.5;--ifm-heading-vertical-rhythm-top:1.25;--ifm-h1-vertical-rhythm-bottom:1.25;--ifm-heading-vertical-rhythm-bottom:1}.markdown:after,.markdown:before{content:"";display:table}.markdown:after{clear:both}.markdown h1:first-child{--ifm-h1-font-size:3rem;margin-bottom:calc(var(--ifm-h1-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown>h2{--ifm-h2-font-size:2rem;margin-top:calc(var(--ifm-h2-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h3{--ifm-h3-font-size:1.5rem;margin-top:calc(var(--ifm-h3-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h4,.markdown>h5,.markdown>h6{margin-top:calc(var(--ifm-heading-vertical-rhythm-top)*var(--ifm-leading))}.markdown>p,.markdown>pre,.markdown>ul{margin-bottom:var(--ifm-leading)}.markdown li>p{margin-top:var(--ifm-list-paragraph-margin)}.markdown li+li{margin-top:var(--ifm-list-item-margin)}ol,ul{margin:0 0 var(--ifm-list-margin);padding-left:var(--ifm-list-left-padding)}ol ol,ul ol{list-style-type:lower-roman}ol ol ol,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}table{border-collapse:collapse;display:block;margin-bottom:var(--ifm-spacing-vertical)}table thead tr{border-bottom:2px solid var(--ifm-table-border-color)}table thead,table tr:nth-child(2n){background-color:var(--ifm-table-stripe-background)}table tr{background-color:var(--ifm-table-background);border-top:var(--ifm-table-border-width) solid var(--ifm-table-border-color)}table td,table th{border:var(--ifm-table-border-width) solid var(--ifm-table-border-color);padding:var(--ifm-table-cell-padding)}table th{background-color:var(--ifm-table-head-background);color:var(--ifm-table-head-color);font-weight:var(--ifm-table-head-font-weight)}table td{color:var(--ifm-table-cell-color)}strong{font-weight:var(--ifm-font-weight-bold)}a{color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}a:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button:hover,.text--no-decoration,.text--no-decoration:hover,a:not([href]){text-decoration:none}p{margin:0 0 var(--ifm-paragraph-margin-bottom)}blockquote{border-left:var(--ifm-blockquote-border-left-width) solid var(--ifm-blockquote-border-color);box-shadow:var(--ifm-blockquote-shadow);color:var(--ifm-blockquote-color);font-size:var(--ifm-blockquote-font-size);padding:var(--ifm-blockquote-padding-vertical) var(--ifm-blockquote-padding-horizontal)}.docItemContainer_Mvrd article>:first-child,.docItemContainer_Mvrd header+*,.footer__item,blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{background-color:var(--ifm-hr-background-color);border:0;height:var(--ifm-hr-height);margin:var(--ifm-hr-margin-vertical) 0}.shadow--lw{box-shadow:var(--ifm-global-shadow-lw)!important}.shadow--md{box-shadow:var(--ifm-global-shadow-md)!important}.shadow--tl{box-shadow:var(--ifm-global-shadow-tl)!important}.text--primary,.wordWrapButtonEnabled_iBMN .wordWrapButtonIcon_mO86{color:var(--ifm-color-primary)}.text--secondary{color:var(--ifm-color-secondary)}.text--success{color:var(--ifm-color-success)}.text--info{color:var(--ifm-color-info)}.text--warning{color:var(--ifm-color-warning)}.text--danger{color:var(--ifm-color-danger)}.text--center{text-align:center}.text--left{text-align:left}.text--justify{text-align:justify}.text--right{text-align:right}.text--capitalize{text-transform:capitalize}.text--lowercase{text-transform:lowercase}.admonitionHeading_goNb,.alert__heading,.feelback-btn.btn-action,.text--uppercase{text-transform:uppercase}.text--light{font-weight:var(--ifm-font-weight-light)}.text--normal{font-weight:var(--ifm-font-weight-normal)}.text--semibold{font-weight:var(--ifm-font-weight-semibold)}.text--bold{font-weight:var(--ifm-font-weight-bold)}.text--italic{font-style:italic}.text--truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--break{word-wrap:break-word!important;word-break:break-word!important}.clean-btn{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;padding:0}.alert,.alert .close{color:var(--ifm-alert-foreground-color)}.clean-list{list-style:none;padding-left:0}.alert--primary{--ifm-alert-background-color:var(--ifm-color-primary-contrast-background);--ifm-alert-background-color-highlight:#3578e526;--ifm-alert-foreground-color:var(--ifm-color-primary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-primary-dark)}.alert--secondary{--ifm-alert-background-color:var(--ifm-color-secondary-contrast-background);--ifm-alert-background-color-highlight:#ebedf026;--ifm-alert-foreground-color:var(--ifm-color-secondary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-secondary-dark)}.alert--success{--ifm-alert-background-color:var(--ifm-color-success-contrast-background);--ifm-alert-background-color-highlight:#00a40026;--ifm-alert-foreground-color:var(--ifm-color-success-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-success-dark)}.alert--info{--ifm-alert-background-color:var(--ifm-color-info-contrast-background);--ifm-alert-background-color-highlight:#54c7ec26;--ifm-alert-foreground-color:var(--ifm-color-info-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-info-dark)}.alert--warning{--ifm-alert-background-color:var(--ifm-color-warning-contrast-background);--ifm-alert-background-color-highlight:#ffba0026;--ifm-alert-foreground-color:var(--ifm-color-warning-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-warning-dark)}.alert--danger{--ifm-alert-background-color:var(--ifm-color-danger-contrast-background);--ifm-alert-background-color-highlight:#fa383e26;--ifm-alert-foreground-color:var(--ifm-color-danger-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-danger-dark)}.alert{--ifm-code-background:var(--ifm-alert-background-color-highlight);--ifm-link-color:var(--ifm-alert-foreground-color);--ifm-link-hover-color:var(--ifm-alert-foreground-color);--ifm-link-decoration:underline;--ifm-tabs-color:var(--ifm-alert-foreground-color);--ifm-tabs-color-active:var(--ifm-alert-foreground-color);--ifm-tabs-color-active-border:var(--ifm-alert-border-color);background-color:var(--ifm-alert-background-color);border:var(--ifm-alert-border-width) solid var(--ifm-alert-border-color);border-left-width:var(--ifm-alert-border-left-width);border-radius:var(--ifm-alert-border-radius);box-shadow:var(--ifm-alert-shadow);padding:var(--ifm-alert-padding-vertical) var(--ifm-alert-padding-horizontal)}.alert__heading{align-items:center;display:flex;font:700 var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.5rem}.alert__icon{display:inline-flex;margin-right:.4em}.alert__icon svg{fill:var(--ifm-alert-foreground-color);stroke:var(--ifm-alert-foreground-color);stroke-width:0}.alert .close{margin:calc(var(--ifm-alert-padding-vertical)*-1) calc(var(--ifm-alert-padding-horizontal)*-1) 0 0;opacity:.75}.alert .close:focus,.alert .close:hover{opacity:1}.alert a{text-decoration-color:var(--ifm-alert-border-color)}.alert a:hover{text-decoration-thickness:2px}.avatar{column-gap:var(--ifm-avatar-intro-margin);display:flex}.avatar__photo{border-radius:50%;display:block;height:var(--ifm-avatar-photo-size);overflow:hidden;width:var(--ifm-avatar-photo-size)}.card--full-height,.navbar__logo img,body,html{height:100%}.avatar__photo--sm{--ifm-avatar-photo-size:2rem}.avatar__photo--lg{--ifm-avatar-photo-size:4rem}.avatar__photo--xl{--ifm-avatar-photo-size:6rem}.avatar__intro{display:flex;flex:1 1;flex-direction:column;justify-content:center;text-align:var(--ifm-avatar-intro-alignment)}.badge,.breadcrumbs__item,.breadcrumbs__link,.button,.dropdown>.navbar__link:after,.feelback-container.feelback-message.layout-button-dialogue,.feelback-container.feelback-pulse,.feelback-container.feelback-reaction,.feelback-container.feelback-tagged-message.layout-button-dialog,.feelback-style.feelback-message.layout-button-dialogue,.feelback-style.feelback-pulse,.feelback-style.feelback-reaction,.feelback-style.feelback-tagged-message.layout-button-dialog{display:inline-block}.avatar__name{font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base)}.avatar__subtitle{margin-top:.25rem}.avatar--vertical{--ifm-avatar-intro-alignment:center;--ifm-avatar-intro-margin:0.5rem;align-items:center;flex-direction:column}.badge{background-color:var(--ifm-badge-background-color);border:var(--ifm-badge-border-width) solid var(--ifm-badge-border-color);border-radius:var(--ifm-badge-border-radius);color:var(--ifm-badge-color);font-size:75%;font-weight:var(--ifm-font-weight-bold);line-height:1;padding:var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal)}.badge--primary{--ifm-badge-background-color:var(--ifm-color-primary)}.badge--secondary{--ifm-badge-background-color:var(--ifm-color-secondary);color:var(--ifm-color-black)}.breadcrumbs__link,.button.button--secondary.button--outline:not(.button--active):not(:hover){color:var(--ifm-font-color-base)}.badge--success{--ifm-badge-background-color:var(--ifm-color-success)}.badge--info{--ifm-badge-background-color:var(--ifm-color-info)}.badge--warning{--ifm-badge-background-color:var(--ifm-color-warning)}.badge--danger{--ifm-badge-background-color:var(--ifm-color-danger)}.breadcrumbs{margin-bottom:0;padding-left:0}.breadcrumbs__item:not(:last-child):after{background:var(--ifm-breadcrumb-separator) center;content:" ";display:inline-block;filter:var(--ifm-breadcrumb-separator-filter);height:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));margin:0 var(--ifm-breadcrumb-spacing);opacity:.5;width:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier))}.breadcrumbs__item--active .breadcrumbs__link{background:var(--ifm-breadcrumb-item-background-active);color:var(--ifm-breadcrumb-color-active)}.breadcrumbs__link{border-radius:var(--ifm-breadcrumb-border-radius);font-size:calc(1rem*var(--ifm-breadcrumb-size-multiplier));padding:calc(var(--ifm-breadcrumb-padding-vertical)*var(--ifm-breadcrumb-size-multiplier)) calc(var(--ifm-breadcrumb-padding-horizontal)*var(--ifm-breadcrumb-size-multiplier));transition-duration:var(--ifm-transition-fast);transition-property:background,color}.breadcrumbs__link:any-link:hover,.breadcrumbs__link:link:hover,.breadcrumbs__link:visited:hover,area[href].breadcrumbs__link:hover{background:var(--ifm-breadcrumb-item-background-active);text-decoration:none}.breadcrumbs--sm{--ifm-breadcrumb-size-multiplier:0.8}.breadcrumbs--lg{--ifm-breadcrumb-size-multiplier:1.2}.button{background-color:var(--ifm-button-background-color);border:var(--ifm-button-border-width) solid var(--ifm-button-border-color);border-radius:var(--ifm-button-border-radius);cursor:pointer;font-size:calc(.875rem*var(--ifm-button-size-multiplier));font-weight:var(--ifm-button-font-weight);line-height:1.5;padding:calc(var(--ifm-button-padding-vertical)*var(--ifm-button-size-multiplier)) calc(var(--ifm-button-padding-horizontal)*var(--ifm-button-size-multiplier));text-align:center;transition-duration:var(--ifm-button-transition-duration);transition-property:color,background,border-color;-webkit-user-select:none;user-select:none;white-space:nowrap}.button,.button:hover{color:var(--ifm-button-color)}.button--outline{--ifm-button-color:var(--ifm-button-border-color)}.button--outline:hover{--ifm-button-background-color:var(--ifm-button-border-color)}.button--link{--ifm-button-border-color:#0000;color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}.button--link.button--active,.button--link:active,.button--link:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button.disabled,.button:disabled,.button[disabled]{opacity:.65;pointer-events:none}.button--sm{--ifm-button-size-multiplier:0.8}.button--lg{--ifm-button-size-multiplier:1.35}.button--block{display:block;width:100%}.button.button--secondary{color:var(--ifm-color-gray-900)}:where(.button--primary){--ifm-button-background-color:var(--ifm-color-primary);--ifm-button-border-color:var(--ifm-color-primary)}:where(.button--primary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-primary-dark);--ifm-button-border-color:var(--ifm-color-primary-dark)}.button--primary.button--active,.button--primary:active{--ifm-button-background-color:var(--ifm-color-primary-darker);--ifm-button-border-color:var(--ifm-color-primary-darker)}:where(.button--secondary){--ifm-button-background-color:var(--ifm-color-secondary);--ifm-button-border-color:var(--ifm-color-secondary)}:where(.button--secondary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-secondary-dark);--ifm-button-border-color:var(--ifm-color-secondary-dark)}.button--secondary.button--active,.button--secondary:active{--ifm-button-background-color:var(--ifm-color-secondary-darker);--ifm-button-border-color:var(--ifm-color-secondary-darker)}:where(.button--success){--ifm-button-background-color:var(--ifm-color-success);--ifm-button-border-color:var(--ifm-color-success)}:where(.button--success):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-success-dark);--ifm-button-border-color:var(--ifm-color-success-dark)}.button--success.button--active,.button--success:active{--ifm-button-background-color:var(--ifm-color-success-darker);--ifm-button-border-color:var(--ifm-color-success-darker)}:where(.button--info){--ifm-button-background-color:var(--ifm-color-info);--ifm-button-border-color:var(--ifm-color-info)}:where(.button--info):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-info-dark);--ifm-button-border-color:var(--ifm-color-info-dark)}.button--info.button--active,.button--info:active{--ifm-button-background-color:var(--ifm-color-info-darker);--ifm-button-border-color:var(--ifm-color-info-darker)}:where(.button--warning){--ifm-button-background-color:var(--ifm-color-warning);--ifm-button-border-color:var(--ifm-color-warning)}:where(.button--warning):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-warning-dark);--ifm-button-border-color:var(--ifm-color-warning-dark)}.button--warning.button--active,.button--warning:active{--ifm-button-background-color:var(--ifm-color-warning-darker);--ifm-button-border-color:var(--ifm-color-warning-darker)}:where(.button--danger){--ifm-button-background-color:var(--ifm-color-danger);--ifm-button-border-color:var(--ifm-color-danger)}:where(.button--danger):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-danger-dark);--ifm-button-border-color:var(--ifm-color-danger-dark)}.button--danger.button--active,.button--danger:active{--ifm-button-background-color:var(--ifm-color-danger-darker);--ifm-button-border-color:var(--ifm-color-danger-darker)}.button-group{display:inline-flex;gap:var(--ifm-button-group-spacing)}.button-group>.button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.button-group>.button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.button-group--block{display:flex;justify-content:stretch}.button-group--block>.button{flex-grow:1}.card{background-color:var(--ifm-card-background-color);border-radius:var(--ifm-card-border-radius);box-shadow:var(--ifm-global-shadow-lw);display:flex;flex-direction:column;overflow:hidden}.card__image{padding-top:var(--ifm-card-vertical-spacing)}.card__image:first-child{padding-top:0}.card__body,.card__footer,.card__header{padding:var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing)}.card__body:not(:last-child),.card__footer:not(:last-child),.card__header:not(:last-child){padding-bottom:0}.card__body>:last-child,.card__footer>:last-child,.card__header>:last-child{margin-bottom:0}.card__footer{margin-top:auto}.table-of-contents{font-size:.8rem;margin-bottom:0;padding:var(--ifm-toc-padding-vertical) 0}.table-of-contents,.table-of-contents ul{list-style:none;padding-left:var(--ifm-toc-padding-horizontal)}.table-of-contents li{margin:var(--ifm-toc-padding-vertical) var(--ifm-toc-padding-horizontal)}.table-of-contents__left-border{border-left:1px solid var(--ifm-toc-border-color)}.table-of-contents__link{color:var(--ifm-toc-link-color);display:block}.table-of-contents__link--active,.table-of-contents__link--active code,.table-of-contents__link:hover,.table-of-contents__link:hover code{color:var(--ifm-color-primary);text-decoration:none}.close{color:var(--ifm-color-black);float:right;font-size:1.5rem;font-weight:var(--ifm-font-weight-bold);line-height:1;opacity:.5;padding:1rem;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.close:hover,.feelback-btn.disabled>.feelback-icon{opacity:.7}.close:focus,.theme-code-block-highlighted-line .codeLineNumber_tWSx:before{opacity:.8}.dropdown{display:inline-flex;font-weight:var(--ifm-dropdown-font-weight);position:relative;vertical-align:top}.dropdown--hoverable:hover .dropdown__menu,.dropdown--show .dropdown__menu{opacity:1;pointer-events:all;transform:translateY(-1px);visibility:visible}#nprogress,.dropdown__menu,.navbar__item.dropdown .navbar__link:not([href]){pointer-events:none}.dropdown--right .dropdown__menu{left:inherit;right:0}.dropdown--nocaret .navbar__link:after{content:none!important}.dropdown__menu{background-color:var(--ifm-dropdown-background-color);border-radius:var(--ifm-global-radius);box-shadow:var(--ifm-global-shadow-md);left:0;list-style:none;max-height:80vh;min-width:10rem;opacity:0;overflow-y:auto;padding:.5rem;position:absolute;top:calc(100% - var(--ifm-navbar-item-padding-vertical) + .3rem);transform:translateY(-.625rem);transition-duration:var(--ifm-transition-fast);transition-property:opacity,transform,visibility;transition-timing-function:var(--ifm-transition-timing-default);visibility:hidden;z-index:var(--ifm-z-index-dropdown)}.menu__caret,.menu__link,.menu__list-item-collapsible{border-radius:.25rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.dropdown__link{border-radius:.25rem;color:var(--ifm-dropdown-link-color);display:block;font-size:.875rem;margin-top:.2rem;padding:.25rem .5rem;white-space:nowrap}.dropdown__link--active,.dropdown__link:hover{background-color:var(--ifm-dropdown-hover-background-color);color:var(--ifm-dropdown-link-color);text-decoration:none}.dropdown__link--active,.dropdown__link--active:hover{--ifm-dropdown-link-color:var(--ifm-link-color)}.dropdown>.navbar__link:after{border-color:currentcolor #0000;border-style:solid;border-width:.4em .4em 0;content:"";margin-left:.3em;position:relative;top:2px;transform:translateY(-50%)}.footer{background-color:var(--ifm-footer-background-color);color:var(--ifm-footer-color);padding:var(--ifm-footer-padding-vertical) var(--ifm-footer-padding-horizontal)}.footer__links{margin-bottom:1rem}.footer__link-item{color:var(--ifm-footer-link-color);line-height:2}.footer__link-item:hover{color:var(--ifm-footer-link-hover-color)}.footer__link-separator{margin:0 var(--ifm-footer-link-horizontal-spacing)}.footer__logo{margin-top:1rem;max-width:var(--ifm-footer-logo-max-width)}.footer__title{color:var(--ifm-footer-title-color);font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base);margin-bottom:var(--ifm-heading-margin-bottom)}.menu,.navbar__link{font-weight:var(--ifm-font-weight-semibold)}.admonitionContent_mlf7>:last-child,.collapsibleContent_zY8v p:last-child,.details_tB_N>summary>p:last-child,.footer__items{margin-bottom:0}.codeBlockStandalone_aGPC,[type=checkbox]{padding:0}.hero{align-items:center;background-color:var(--ifm-hero-background-color);color:var(--ifm-hero-text-color);display:flex;padding:4rem 2rem}.hero--primary{--ifm-hero-background-color:var(--ifm-color-primary);--ifm-hero-text-color:var(--ifm-font-color-base-inverse)}.hero--dark{--ifm-hero-background-color:#303846;--ifm-hero-text-color:var(--ifm-color-white)}.hero__title{font-size:3rem}.hero__subtitle{font-size:1.5rem}.menu__list{list-style:none;margin:0;padding-left:0}.menu__caret,.menu__link{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu__list .menu__list{flex:0 0 100%;margin-top:.25rem;padding-left:var(--ifm-menu-link-padding-horizontal)}.menu__list-item:not(:first-child){margin-top:.25rem}.menu__list-item--collapsed .menu__list{height:0;overflow:hidden}.details_tB_N[data-collapsed=false].isBrowser_H34u>summary:before,.details_tB_N[open]:not(.isBrowser_H34u)>summary:before,.menu__list-item--collapsed .menu__caret:before,.menu__list-item--collapsed .menu__link--sublist:after{transform:rotate(90deg)}.menu__list-item-collapsible{display:flex;flex-wrap:wrap;position:relative}.menu__caret:hover,.menu__link:hover,.menu__list-item-collapsible--active,.menu__list-item-collapsible:hover{background:var(--ifm-menu-color-background-hover)}.menu__list-item-collapsible .menu__link--active,.menu__list-item-collapsible .menu__link:hover{background:none!important}.menu__caret,.menu__link{align-items:center;display:flex}.navbar-sidebar,.navbar-sidebar__backdrop{opacity:0;transition-duration:var(--ifm-transition-fast);transition-timing-function:ease-in-out;bottom:0;top:0;visibility:hidden;left:0}.menu__link{color:var(--ifm-menu-color);flex:1;line-height:1.25}.menu__link:hover{color:var(--ifm-menu-color);text-decoration:none}.menu__caret:before,.menu__link--sublist-caret:after{height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast) linear;width:1.25rem;filter:var(--ifm-menu-link-sublist-icon-filter);content:""}.menu__link--sublist-caret:after{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem;margin-left:auto;min-width:1.25rem}.menu__link--active,.menu__link--active:hover{color:var(--ifm-menu-color-active)}.navbar__brand,.navbar__link{color:var(--ifm-navbar-link-color)}.menu__link--active:not(.menu__link--sublist){background-color:var(--ifm-menu-color-background-active)}.menu__caret:before{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem}.navbar--dark,html[data-theme=dark]{--ifm-menu-link-sublist-icon-filter:invert(100%) sepia(94%) saturate(17%) hue-rotate(223deg) brightness(104%) contrast(98%)}.navbar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-navbar-shadow);height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.feelback-btn.active>.feelback-icon.active,.navbar,.navbar>.container,.navbar>.container-fluid{display:flex}.navbar--fixed-top{position:sticky;top:0;z-index:var(--ifm-z-index-fixed)}.navbar__inner{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.navbar__brand{align-items:center;display:flex;margin-right:1rem;min-width:0}.navbar__brand:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.announcementBarContent_wKix,.navbar__title{flex:1 1 auto}.navbar__toggle{display:none;margin-right:.5rem}.navbar__logo{flex:0 0 auto;height:2rem;margin-right:.5rem}.navbar__items{align-items:center;display:flex;flex:1;min-width:0}.navbar__items--center{flex:0 0 auto}.navbar__items--center .navbar__brand{margin:0}.navbar__items--center+.navbar__items--right{flex:1}.navbar__items--right{flex:0 0 auto;justify-content:flex-end}.navbar__items--right>:last-child{padding-right:0}.navbar__item{display:inline-block;padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.navbar__link--active,.navbar__link:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.navbar--dark,.navbar--primary{--ifm-menu-color:var(--ifm-color-gray-300);--ifm-navbar-link-color:var(--ifm-color-gray-100);--ifm-navbar-search-input-background-color:#ffffff1a;--ifm-navbar-search-input-placeholder-color:#ffffff80;color:var(--ifm-color-white)}.navbar--dark{--ifm-navbar-background-color:#242526;--ifm-menu-color-background-active:#ffffff0d;--ifm-navbar-search-input-color:var(--ifm-color-white)}.navbar--primary{--ifm-navbar-background-color:var(--ifm-color-primary);--ifm-navbar-link-hover-color:var(--ifm-color-white);--ifm-menu-color-active:var(--ifm-color-white);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-500)}.navbar__search-input{appearance:none;background:var(--ifm-navbar-search-input-background-color) var(--ifm-navbar-search-input-icon) no-repeat .75rem center/1rem 1rem;border:none;border-radius:2rem;color:var(--ifm-navbar-search-input-color);cursor:text;display:inline-block;font-size:1rem;height:2rem;padding:0 .5rem 0 2.25rem;width:12.5rem}.navbar__search-input::placeholder{color:var(--ifm-navbar-search-input-placeholder-color)}.navbar-sidebar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-global-shadow-md);position:fixed;transform:translate3d(-100%,0,0);transition-property:opacity,visibility,transform;width:var(--ifm-navbar-sidebar-width)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar__items{transform:translateZ(0)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar--show .navbar-sidebar__backdrop{opacity:1;visibility:visible}.navbar-sidebar__backdrop{background-color:#0009;position:fixed;right:0;transition-property:opacity,visibility}.navbar-sidebar__brand{align-items:center;box-shadow:var(--ifm-navbar-shadow);display:flex;flex:1;height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.navbar-sidebar__items{display:flex;height:calc(100% - var(--ifm-navbar-height));transition:transform var(--ifm-transition-fast) ease-in-out}.navbar-sidebar__items--show-secondary{transform:translate3d(calc((var(--ifm-navbar-sidebar-width))*-1),0,0)}.navbar-sidebar__item{flex-shrink:0;padding:.5rem;width:calc(var(--ifm-navbar-sidebar-width))}.navbar-sidebar__back{background:var(--ifm-menu-color-background-active);font-size:15px;font-weight:var(--ifm-button-font-weight);margin:0 0 .2rem -.5rem;padding:.6rem 1.5rem;position:relative;text-align:left;top:-.5rem;width:calc(100% + 1rem)}.navbar-sidebar__close{display:flex;margin-left:auto}.pagination{column-gap:var(--ifm-pagination-page-spacing);display:flex;font-size:var(--ifm-pagination-font-size);padding-left:0}.pagination--sm{--ifm-pagination-font-size:0.8rem;--ifm-pagination-padding-horizontal:0.8rem;--ifm-pagination-padding-vertical:0.2rem}.pagination--lg{--ifm-pagination-font-size:1.2rem;--ifm-pagination-padding-horizontal:1.2rem;--ifm-pagination-padding-vertical:0.3rem}.pagination__item{display:inline-flex}.pagination__item>span{padding:var(--ifm-pagination-padding-vertical)}.pagination__item--active .pagination__link{color:var(--ifm-pagination-color-active)}.pagination__item--active .pagination__link,.pagination__item:not(.pagination__item--active):hover .pagination__link{background:var(--ifm-pagination-item-active-background)}.pagination__item--disabled,.pagination__item[disabled]{opacity:.25;pointer-events:none}.pagination__link{border-radius:var(--ifm-pagination-border-radius);color:var(--ifm-font-color-base);display:inline-block;padding:var(--ifm-pagination-padding-vertical) var(--ifm-pagination-padding-horizontal);transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination__link:hover{text-decoration:none}.pagination-nav{display:grid;grid-gap:var(--ifm-spacing-horizontal);gap:var(--ifm-spacing-horizontal);grid-template-columns:repeat(2,1fr)}.pagination-nav__link{border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-pagination-nav-border-radius);display:block;height:100%;line-height:var(--ifm-heading-line-height);padding:var(--ifm-global-spacing);transition:border-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination-nav__link:hover{border-color:var(--ifm-pagination-nav-color-hover);text-decoration:none}.pagination-nav__link--next{grid-column:2/3;text-align:right}.pagination-nav__label{font-size:var(--ifm-h4-font-size);font-weight:var(--ifm-heading-font-weight);word-break:break-word}.pagination-nav__link--prev .pagination-nav__label:before{content:"« "}.pagination-nav__link--next .pagination-nav__label:after{content:" »"}.pagination-nav__sublabel{color:var(--ifm-color-content-secondary);font-size:var(--ifm-h5-font-size);font-weight:var(--ifm-font-weight-semibold);margin-bottom:.25rem}.pills__item,.tabs{font-weight:var(--ifm-font-weight-bold)}.pills{display:flex;gap:var(--ifm-pills-spacing);padding-left:0}.pills__item{border-radius:.5rem;cursor:pointer;display:inline-block;padding:.25rem 1rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pills__item--active{color:var(--ifm-pills-color-active)}.pills__item--active,.pills__item:not(.pills__item--active):hover{background:var(--ifm-pills-color-background-active)}.pills--block{justify-content:stretch}.pills--block .pills__item{flex-grow:1;text-align:center}.tabs{color:var(--ifm-tabs-color);display:flex;margin-bottom:0;overflow-x:auto;padding-left:0}.tabs__item{border-bottom:3px solid #0000;border-radius:var(--ifm-global-radius);cursor:pointer;display:inline-flex;padding:var(--ifm-tabs-padding-vertical) var(--ifm-tabs-padding-horizontal);transition:background-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs__item--active{border-bottom-color:var(--ifm-tabs-color-active-border);border-bottom-left-radius:0;border-bottom-right-radius:0;color:var(--ifm-tabs-color-active)}.tabs__item:hover{background-color:var(--ifm-hover-overlay)}.tabs--block{justify-content:stretch}.tabs--block .tabs__item{flex-grow:1;justify-content:center}html[data-theme=dark]{--ifm-color-scheme:dark;--ifm-color-emphasis-0:var(--ifm-color-gray-1000);--ifm-color-emphasis-100:var(--ifm-color-gray-900);--ifm-color-emphasis-200:var(--ifm-color-gray-800);--ifm-color-emphasis-300:var(--ifm-color-gray-700);--ifm-color-emphasis-400:var(--ifm-color-gray-600);--ifm-color-emphasis-600:var(--ifm-color-gray-400);--ifm-color-emphasis-700:var(--ifm-color-gray-300);--ifm-color-emphasis-800:var(--ifm-color-gray-200);--ifm-color-emphasis-900:var(--ifm-color-gray-100);--ifm-color-emphasis-1000:var(--ifm-color-gray-0);--ifm-background-color:#1b1b1d;--ifm-background-surface-color:#242526;--ifm-hover-overlay:#ffffff0d;--ifm-color-content:#e3e3e3;--ifm-color-content-secondary:#fff;--ifm-breadcrumb-separator-filter:invert(64%) sepia(11%) saturate(0%) hue-rotate(149deg) brightness(99%) contrast(95%);--ifm-code-background:#ffffff1a;--ifm-scrollbar-track-background-color:#444;--ifm-scrollbar-thumb-background-color:#686868;--ifm-scrollbar-thumb-hover-background-color:#7a7a7a;--ifm-table-stripe-background:#ffffff12;--ifm-toc-border-color:var(--ifm-color-emphasis-200);--ifm-color-primary-contrast-background:#102445;--ifm-color-primary-contrast-foreground:#ebf2fc;--ifm-color-secondary-contrast-background:#474748;--ifm-color-secondary-contrast-foreground:#fdfdfe;--ifm-color-success-contrast-background:#003100;--ifm-color-success-contrast-foreground:#e6f6e6;--ifm-color-info-contrast-background:#193c47;--ifm-color-info-contrast-foreground:#eef9fd;--ifm-color-warning-contrast-background:#4d3800;--ifm-color-warning-contrast-foreground:#fff8e6;--ifm-color-danger-contrast-background:#4b1113;--ifm-color-danger-contrast-foreground:#ffebec;--docsearch-text-color:#f5f6f7;--docsearch-container-background:#090a11cc;--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 #0304094d;--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.302);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 #494c6a80,0 -4px 8px 0 #0003;--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}#nprogress .bar{background:var(--docusaurus-progress-bar-color);height:2px;left:0;position:fixed;top:0;width:100%;z-index:1031}#nprogress .peg{box-shadow:0 0 10px var(--docusaurus-progress-bar-color),0 0 5px var(--docusaurus-progress-bar-color);height:100%;opacity:1;position:absolute;right:0;transform:rotate(3deg) translateY(-4px);width:100px}.feelback-container,.feelback-style{--highlight:0,0,0;--highlight-opacity:0.08;--border-color:#80808080;--max-width:unset;--bg:#fff;max-width:var(--max-width);position:relative}.feelback-container textarea,.feelback-style textarea{height:120px;padding:.5rem;width:100%}.feelback-container input,.feelback-style input{width:100%}.feelback-container input[type=email],.feelback-container input[type=text],.feelback-style input[type=email],.feelback-style input[type=text]{padding:.5rem}.feelback-container .popup,.feelback-style .popup{background-color:var(--theme-bg,var(--bg));border:1px solid var(--border-color);border-radius:4px;display:none;position:absolute;z-index:2}.feelback-container .dialog,.feelback-style .dialog{background-color:#00004226;bottom:0;left:0;position:fixed;right:0;top:0;z-index:99999}.feelback-btn.active,.feelback-btn.btn-reaction-picker{background-color:rgba(var(--highlight),var(--highlight-opacity))}.feelback-container .dialog>:first-child,.feelback-style .dialog>:first-child{margin:10% auto;max-width:480px}.feelback-container .dialog .content,.feelback-style .dialog .content{background-color:#f3f9ff;border:1px solid #7d8792;border-radius:6px;padding:1.5rem}.feelback-container .hidden,.feelback-style .hidden{display:none}.feelback-container.bordered .content,.feelback-style.bordered .content{border:1px solid var(--border-color);border-radius:1rem;padding:.5rem .75rem}.feelback-container.width-md,.feelback-style.width-md{--max-width:440px;margin:0 auto}.feelback-container.width-sm,.feelback-style.width-sm{--max-width:320px;margin:0 auto}.feelback-container.align-center .feelback-q,.feelback-style.align-center .feelback-q{justify-content:center}.feelback-btn,.feelback-q{align-items:center;display:flex}.feelback-q{gap:1.2em;padding-inline:.4em}.feelback-a{line-height:32px;padding-inline:.4em}.feelback-form>.content{display:flex;flex-direction:column;gap:.3rem}.feelback-form .form-title{font-size:1.1em;font-weight:700}.feelback-buttons{align-items:baseline;display:flex;gap:2px}.feelback-buttons.with-count{gap:6px}.feelback-buttons.hide-zero .feelback-btn:has(.feelback-count:not([data-feelback-count-value]),.feelback-count[data-feelback-count-value="0"]),.feelback-buttons.hide-zero .feelback-btn:not(:has(.feelback-count)){display:none}.feelback-buttons.attached{gap:0}.feelback-buttons.align-end{flex-direction:row-reverse}.feelback-buttons.large>.feelback-btn{font-size:1.25em}.feelback-buttons .label{font-size:.9em;padding-inline:.25em}.feelback-radio-group{border:none;margin:0;padding:0}.feelback-radio-item{align-items:flex-start;display:flex;flex-direction:row;padding-bottom:.25rem;padding-top:.25rem}.feelback-radio-item input[type=radio]{display:inline-block;flex-shrink:0;margin:.5rem;width:unset}.feelback-radio-item label{cursor:pointer;display:block}.feelback-radio-item .feelback-text{font-size:.9em}.feelback-icon{display:flex;line-height:1em}.feelback-count{font-weight:700;padding-inline-start:.25em}.feelback-btn.active>.feelback-icon.inactive,.feelback-btn>.active,.feelback-count.hide-zero:not([data-feelback-count-value]),.feelback-count.hide-zero[data-feelback-count-value="0"]{display:none}.feelback-btn{background-color:initial;border:0;border-radius:.15em;cursor:pointer;font-size:1em;height:32px;justify-content:center;min-width:32px;padding:0 .4em;text-align:center}.feelback-btn.disabled{cursor:default}.feelback-btn.active>.feelback-icon{opacity:1;transform:scale(1.3)}.feelback-btn:hover:not(.disabled){background-color:rgba(var(--highlight),calc(var(--highlight-opacity)*2))}.feelback-btn:hover:not(.disabled)>.feelback-icon{transform:scale(1.3);transition:.35s cubic-bezier(.35,1.23,.5,1.37)}.feelback-btn.btn-reaction-picker{border:1px solid #80808080;border-radius:100%}.feelback-btn.btn-reaction-picker .feelback-icon{transform:scale(1.15)}.feelback-btn.btn-action{border:1px solid;font-size:.9em;min-width:80px;padding-inline:.5rem}.theme-dark .feelback-container,.theme-dark .feelback-style,html.dark .feelback-container,html.dark .feelback-style,html[data-theme=dark] .feelback-container,html[data-theme=dark] .feelback-style{--highlight:255,255,255;--highlight-opacity:0.15;--bg:#0000;--border-color:#fff6}.theme-dark .feelback-container .dialog .content,.theme-dark .feelback-style .dialog .content,html.dark .feelback-container .dialog .content,html.dark .feelback-style .dialog .content,html[data-theme=dark] .feelback-container .dialog .content,html[data-theme=dark] .feelback-style .dialog .content{background:#111c29}[data-theme=dark]{--ifm-color-primary:#33b4b7;--ifm-color-primary-dark:#2ea2a5;--ifm-color-primary-darker:#2b999c;--ifm-color-primary-darkest:#247e80;--ifm-color-primary-light:#39c5c8;--ifm-color-primary-lighter:#43c7ca;--ifm-color-primary-lightest:#5ed0d2;--docusaurus-highlighted-code-line-bg:#0000004d;--ifm-background-color:#111;--ifm-code-background:#e90cd6}.footer--dark{--ifm-footer-background-color:#303846;--ifm-footer-color:var(--ifm-footer-link-color);--ifm-footer-link-color:var(--ifm-color-secondary);--ifm-footer-title-color:var(--ifm-color-white);background-color:#247e80}.feelback-container .feelback-btn{background-color:#1a8870;color:#fff}.feelback-container textarea{border:1px solid #ccc;border-radius:4px;padding:.5rem}.tag_z3Op{border:1px solid var(--docusaurus-tag-list-border);transition:border var(--ifm-transition-fast)}.tag_z3Op:hover{--docusaurus-tag-list-border:var(--ifm-link-color);text-decoration:none}.tagRegular_rGMd{border-radius:var(--ifm-global-radius);font-size:90%;padding:.2rem .5rem .3rem}.tagWithCount_J6D4{align-items:center;border-left:0;display:flex;padding:0 .5rem 0 1rem;position:relative}.tagWithCount_J6D4:after,.tagWithCount_J6D4:before{border:1px solid var(--docusaurus-tag-list-border);content:"";position:absolute;top:50%;transition:inherit}.tagWithCount_J6D4:before{border-bottom:0;border-right:0;height:1.18rem;right:100%;transform:translate(50%,-50%) rotate(-45deg);width:1.18rem}.tagWithCount_J6D4:after{border-radius:50%;height:.5rem;left:0;transform:translateY(-50%);width:.5rem}.tagWithCount_J6D4 span{background:var(--ifm-color-secondary);border-radius:var(--ifm-global-radius);color:var(--ifm-color-black);font-size:.7rem;line-height:1.2;margin-left:.3rem;padding:.1rem .4rem}.tags_LjXH{display:inline}.tag_ipaw{display:inline-block;margin:0 .4rem .5rem 0}.iconEdit_RxWf{margin-right:.3em;vertical-align:sub}.lastUpdated_dWC1{font-size:smaller;font-style:italic;margin-top:.2rem}.tocCollapsibleButton_D68z{align-items:center;display:flex;font-size:inherit;justify-content:space-between;padding:.4rem .8rem;width:100%}.DocSearch-Button,.DocSearch-Button-Container{align-items:center;display:flex}.tocCollapsibleButton_D68z:after{background:var(--ifm-menu-link-sublist-icon) 50% 50%/2rem 2rem no-repeat;content:"";filter:var(--ifm-menu-link-sublist-icon-filter);height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast);width:1.25rem}.tocCollapsibleButtonExpanded_akXK:after,.tocCollapsibleExpanded_dlAu{transform:none}.tocCollapsible_HXs3{background-color:var(--ifm-menu-color-background-active);border-radius:var(--ifm-global-radius);margin:1rem 0}.tocCollapsibleContent_f5x3>ul{border-left:none;border-top:1px solid var(--ifm-color-emphasis-300);font-size:15px;padding:.2rem 0}.tocCollapsibleContent_f5x3 ul li{margin:.4rem .8rem}.tocCollapsibleContent_f5x3 a{display:block}.tableOfContents_ao1q{max-height:calc(100vh - var(--ifm-navbar-height) - 2rem);overflow-y:auto;position:sticky;top:calc(var(--ifm-navbar-height) + 1rem)}.backToTopButton_bu1J{background-color:var(--ifm-color-emphasis-200);border-radius:50%;bottom:1.3rem;box-shadow:var(--ifm-global-shadow-lw);height:3rem;opacity:0;position:fixed;right:1.3rem;transform:scale(0);transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default);visibility:hidden;width:3rem;z-index:calc(var(--ifm-z-index-fixed) - 1)}.backToTopButton_bu1J:after{background-color:var(--ifm-color-emphasis-1000);content:" ";display:inline-block;height:100%;-webkit-mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;width:100%}.backToTopButtonShow_UGO2{opacity:1;transform:scale(1);visibility:visible}.DocSearch-Button{background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;font-weight:500;height:36px;justify-content:space-between;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:0}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Hit-Tree,.DocSearch-Hit-action,.DocSearch-Hit-icon,.DocSearch-Reset{stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border:0;border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 2px;position:relative;top:-1px;width:20px}.DocSearch-Button-Key--pressed{box-shadow:var(--docsearch-key-pressed-shadow);transform:translate3d(0,1px,0)}.DocSearch--active{overflow:hidden!important}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Hit[aria-selected=true] mark,.content_KF7C a{text-decoration:underline}.DocSearch-Link{appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{appearance:none;background:#0000;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:0;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Cancel,.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator,.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset{animation:.1s ease-in forwards a;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0}.DocSearch-Help,.DocSearch-HitsFooter,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:#0000}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}.DocSearch-Hit--deleting{opacity:0;transition:.25s linear}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:.25s linear .25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}#__docusaurus-base-url-issue-banner-container,.docSidebarContainer_qGJz,.navbarSearchContainer_T9WI:empty,.sidebarLogo_R67I,.themedComponent_j_Bc,[data-theme=dark] .lightToggleIcon_nzgI,[data-theme=light] .darkToggleIcon_QKTy,html[data-announcement-bar-initially-dismissed=true] .announcementBar_Zfeh,svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:0;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands li,.DocSearch-Commands-Key{align-items:center;display:flex}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{background:var(--docsearch-key-gradient);border:0;border-radius:2px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@keyframes a{0%{opacity:0}to{opacity:1}}.DocSearch-Button{margin:0;transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.DocSearch-Container,.skipToContent_TSEd{z-index:calc(var(--ifm-z-index-fixed) + 1)}.skipToContent_TSEd{background-color:var(--ifm-background-surface-color);color:var(--ifm-color-emphasis-900);left:100%;padding:calc(var(--ifm-global-spacing)/2) var(--ifm-global-spacing);position:fixed;top:1rem}.skipToContent_TSEd:focus{box-shadow:var(--ifm-global-shadow-md);left:1rem}.closeButton_iooy{line-height:0;padding:0}.content_KF7C{font-size:85%;padding:5px 0;text-align:center}.content_KF7C a{color:inherit}.announcementBar_Zfeh{align-items:center;background-color:var(--ifm-color-white);border-bottom:1px solid var(--ifm-color-emphasis-100);color:var(--ifm-color-black);display:flex;height:var(--docusaurus-announcement-bar-height)}.announcementBarPlaceholder_IRVS{flex:0 0 10px}.announcementBarClose_oMe8{align-self:stretch;flex:0 0 30px}.toggle_k4gx{height:2rem;width:2rem}.toggleButton_pSDN{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;transition:background var(--ifm-transition-fast);width:100%}.toggleButton_pSDN:hover{background:var(--ifm-color-emphasis-200)}.toggleButtonDisabled_U_sC{cursor:not-allowed}.darkNavbarColorModeToggle_stdd:hover{background:var(--ifm-color-gray-800)}[data-theme=dark] .themedComponent--dark_H8hH,[data-theme=light] .themedComponent--light_Wr5c,html:not([data-theme]) .themedComponent--light_Wr5c{display:initial}[data-theme=dark]:root{--docusaurus-collapse-button-bg:#ffffff0d;--docusaurus-collapse-button-bg-hover:#ffffff1a}.collapseSidebarButton_Ad0v{display:none;margin:0}.iconExternalLink_ieDw{margin-left:.3rem}.buttons_AeoN,.menuExternalLink_zeTO{align-items:center}.docMainContainer_pwdE,.docRoot_n5mG{display:flex;width:100%}.docsWrapper_JvSA{display:flex;flex:1 0 auto}.dropdownNavbarItemMobile_coCi{cursor:pointer}.iconLanguage_zFDR{margin-right:5px;vertical-align:text-bottom}.navbarHideable_xvtT{transition:transform var(--ifm-transition-fast) ease}.navbarHidden_JzgE{transform:translate3d(0,calc(-100% - 2px),0)}.errorBoundaryError_aoN1{color:red;white-space:pre-wrap}.errorBoundaryFallback_bIw_{color:red;padding:.55rem}.buttonGroup_qmNP button,.codeBlockContainer_irvZ{background:var(--prism-background-color);color:var(--prism-color)}.footerLogoLink_Ha83{opacity:.5;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.footerLogoLink_Ha83:hover,.hash-link:focus,:hover>.hash-link{opacity:1}body:not(.navigation-with-keyboard) :not(input):focus{outline:0}.anchorWithStickyNavbar_OW8r{scroll-margin-top:calc(var(--ifm-navbar-height) + .5rem)}.anchorWithHideOnScrollNavbar__WcE{scroll-margin-top:.5rem}.hash-link{opacity:0;padding-left:.5rem;transition:opacity var(--ifm-transition-fast);-webkit-user-select:none;user-select:none}.hash-link:before{content:"#"}.mainWrapper_m1cT{display:flex;flex:1 0 auto;flex-direction:column}.docusaurus-mt-lg{margin-top:3rem}#__docusaurus{display:flex;flex-direction:column;min-height:100%}.codeBlockContainer_irvZ{border-radius:var(--ifm-code-border-radius);box-shadow:var(--ifm-global-shadow-lw);margin-bottom:var(--ifm-leading)}.codeBlockContent_dikE{border-radius:inherit;direction:ltr;position:relative}.codeBlockTitle_L2Hc{border-bottom:1px solid var(--ifm-color-emphasis-300);border-top-left-radius:inherit;border-top-right-radius:inherit;font-size:var(--ifm-code-font-size);font-weight:500;padding:.75rem var(--ifm-pre-padding)}.codeBlock_mHbI{--ifm-pre-background:var(--prism-background-color);margin:0;padding:0}.codeBlockTitle_L2Hc+.codeBlockContent_dikE .codeBlock_mHbI{border-top-left-radius:0;border-top-right-radius:0}.codeBlockLines_znEV{float:left;font:inherit;min-width:100%;padding:var(--ifm-pre-padding)}.codeBlockLinesWithNumbering_qzRx{display:table;padding:var(--ifm-pre-padding) 0}.buttonGroup_qmNP{column-gap:.2rem;display:flex;position:absolute;right:calc(var(--ifm-pre-padding)/2);top:calc(var(--ifm-pre-padding)/2)}.buttonGroup_qmNP button{align-items:center;border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-global-radius);display:flex;line-height:0;opacity:0;padding:.4rem;transition:opacity var(--ifm-transition-fast) ease-in-out}.buttonGroup_qmNP button:focus-visible,.buttonGroup_qmNP button:hover{opacity:1!important}.theme-code-block:hover .buttonGroup_qmNP button{opacity:.4}:where(:root){--docusaurus-highlighted-code-line-bg:#484d5b}:where([data-theme=dark]){--docusaurus-highlighted-code-line-bg:#646464}.theme-code-block-highlighted-line{background-color:var(--docusaurus-highlighted-code-line-bg);display:block;margin:0 calc(var(--ifm-pre-padding)*-1);padding:0 var(--ifm-pre-padding)}.codeLine_Hu6L{counter-increment:a;display:table-row}.codeLineNumber_tWSx{background:var(--ifm-pre-background);display:table-cell;left:0;overflow-wrap:normal;padding:0 var(--ifm-pre-padding);position:sticky;text-align:right;width:1%}.codeLineNumber_tWSx:before{content:counter(a);opacity:.4}.codeLineContent_ZGp0{padding-right:var(--ifm-pre-padding)}.theme-code-block:hover .copyButtonCopied_FCOZ{opacity:1!important}.copyButtonIcons_bnsA{height:1.125rem;position:relative;width:1.125rem}.copyButtonIcon_WgLZ,.copyButtonSuccessIcon_NVAE{left:0;position:absolute;top:0;fill:currentColor;height:inherit;opacity:inherit;transition:all var(--ifm-transition-fast) ease;width:inherit}.copyButtonSuccessIcon_NVAE{color:#00d600;left:50%;opacity:0;top:50%;transform:translate(-50%,-50%) scale(.33)}.copyButtonCopied_FCOZ .copyButtonIcon_WgLZ{opacity:0;transform:scale(.33)}.copyButtonCopied_FCOZ .copyButtonSuccessIcon_NVAE{opacity:1;transform:translate(-50%,-50%) scale(1);transition-delay:75ms}.wordWrapButtonIcon_mO86{height:1.2rem;width:1.2rem}.details_tB_N{--docusaurus-details-summary-arrow-size:0.38rem;--docusaurus-details-transition:transform 200ms ease;--docusaurus-details-decoration-color:grey}.details_tB_N>summary{cursor:pointer;list-style:none;padding-left:1rem;position:relative}.details_tB_N>summary::-webkit-details-marker{display:none}.details_tB_N>summary:before{border-color:#0000 #0000 #0000 var(--docusaurus-details-decoration-color);border-style:solid;border-width:var(--docusaurus-details-summary-arrow-size);content:"";left:0;position:absolute;top:.45rem;transform:rotate(0);transform-origin:calc(var(--docusaurus-details-summary-arrow-size)/2) 50%;transition:var(--docusaurus-details-transition)}.collapsibleContent_zY8v{border-top:1px solid var(--docusaurus-details-decoration-color);margin-top:1rem;padding-top:1rem}.details_qjPS{--docusaurus-details-decoration-color:var(--ifm-alert-border-color);--docusaurus-details-transition:transform var(--ifm-transition-fast) ease;border:1px solid var(--ifm-alert-border-color);margin:0 0 var(--ifm-spacing-vertical)}.containsTaskList_1zqx{list-style:none}:not(.containsTaskList_1zqx>li)>.containsTaskList_1zqx{padding-left:0}.img_yzzE{height:auto}.admonition_h_cf{margin-bottom:1em}.admonitionHeading_goNb{font:var(--ifm-heading-font-weight) var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family)}.admonitionHeading_goNb:not(:last-child){margin-bottom:.3rem}.admonitionHeading_goNb code{text-transform:none}.admonitionIcon_Hr0w{display:inline-block;margin-right:.4em;vertical-align:middle}.admonitionIcon_Hr0w svg{display:inline-block;height:1.6em;width:1.6em;fill:var(--ifm-alert-foreground-color)}.breadcrumbHomeIcon_sXAL{height:1.1rem;position:relative;top:1px;vertical-align:top;width:1.1rem}.breadcrumbsContainer_FUiM{--ifm-breadcrumb-size-multiplier:0.8;margin-bottom:.8rem}.searchQueryInput_lA0l,.searchVersionInput_OvCL{background:var(--docsearch-searchbox-focus-background);border:2px solid var(--ifm-toc-border-color);border-radius:var(--ifm-global-radius);color:var(--docsearch-text-color);font:var(--ifm-font-size-base) var(--ifm-font-family-base);margin-bottom:.5rem;padding:.8rem;transition:border var(--ifm-transition-fast) ease;width:100%}.searchQueryInput_lA0l:focus,.searchVersionInput_OvCL:focus{border-color:var(--docsearch-primary-color);outline:0}.searchQueryInput_lA0l::placeholder{color:var(--docsearch-muted-color)}.searchResultsColumn_gV3A{font-size:.9rem;font-weight:700}.algoliaLogo_vaJH{max-width:150px}.algoliaLogoPathFill_YCPb{fill:var(--ifm-font-color-base)}.searchResultItem_UJts{border-bottom:1px solid var(--ifm-toc-border-color);padding:1rem 0}.searchResultItemHeading_j6GO{font-weight:400;margin-bottom:0}.searchResultItemPath_g13c{color:var(--ifm-color-content-secondary);font-size:.8rem;--ifm-breadcrumb-separator-size-multiplier:1}.searchResultItemSummary_gqXZ{font-style:italic;margin:.5rem 0 0}.loadingSpinner_fbio{animation:1s linear infinite b;border:.4em solid #eee;border-radius:50%;border-top:.4em solid var(--ifm-color-primary);height:3rem;margin:0 auto;width:3rem}@keyframes b{to{transform:rotate(1turn)}}.loader_Ko1P{margin-top:2rem}.search-result-match{background:#ffd78e40;color:var(--docsearch-hit-color);padding:.09em 0}.features_t9lD{align-items:center;display:flex;padding:2rem 0;width:100%}.buttons_AeoN,.headerContainer_Dcc3,.heroSubtitle_jFu1{justify-content:center;display:flex}.featureSvg_GfXr{height:200px;width:200px}.heroBanner_qdFl{overflow:hidden;padding:4rem 0 2rem;position:relative;text-align:center}.headerContainer_Dcc3{padding:2rem 0;width:100%}.heroSubtitle_jFu1,.textPadding_Bwvp{padding:10px;width:1000px}.textPadding_Bwvp{border-left:5px solid #ccc;font-style:italic}.bodyContainer_uay2{display:flex;justify-content:center;padding:0 0 4rem;width:100%}@media (min-width:997px){.collapseSidebarButton_Ad0v,.expandButton_S3yh{background-color:var(--docusaurus-collapse-button-bg)}.lastUpdated_dWC1{text-align:right}.tocMobile_aui3{display:none}:root{--docusaurus-announcement-bar-height:30px}.announcementBarClose_oMe8,.announcementBarPlaceholder_IRVS{flex-basis:50px}.collapseSidebarButton_Ad0v{border:1px solid var(--ifm-toc-border-color);border-radius:0;bottom:0;display:block!important;height:40px;position:sticky}.collapseSidebarButtonIcon_wcVP{margin-top:4px;transform:rotate(180deg)}.expandButtonIcon_zf6i,[dir=rtl] .collapseSidebarButtonIcon_wcVP{transform:rotate(0)}.collapseSidebarButton_Ad0v:focus,.collapseSidebarButton_Ad0v:hover,.expandButton_S3yh:focus,.expandButton_S3yh:hover{background-color:var(--docusaurus-collapse-button-bg-hover)}.menuHtmlItem_ddm0{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu_iqPl{flex-grow:1;padding:.5rem}@supports (scrollbar-gutter:stable){.menu_iqPl{padding:.5rem 0 .5rem .5rem;scrollbar-gutter:stable}}.menuWithAnnouncementBar_iXs4{margin-bottom:var(--docusaurus-announcement-bar-height)}.sidebar_Ktp6{display:flex;flex-direction:column;height:100%;padding-top:var(--ifm-navbar-height);width:var(--doc-sidebar-width)}.sidebarWithHideableNavbar_kfuy{padding-top:0}.sidebarHidden_J7I3{opacity:0;visibility:hidden}.sidebarLogo_R67I{align-items:center;color:inherit!important;display:flex!important;margin:0 var(--ifm-navbar-padding-horizontal);max-height:var(--ifm-navbar-height);min-height:var(--ifm-navbar-height);text-decoration:none!important}.sidebarLogo_R67I img{height:2rem;margin-right:.5rem}.expandButton_S3yh{align-items:center;display:flex;height:100%;justify-content:center;position:absolute;right:0;top:0;transition:background-color var(--ifm-transition-fast) ease;width:100%}[dir=rtl] .expandButtonIcon_zf6i{transform:rotate(180deg)}.docSidebarContainer_qGJz{border-right:1px solid var(--ifm-toc-border-color);clip-path:inset(0);display:block;margin-top:calc(var(--ifm-navbar-height)*-1);transition:width var(--ifm-transition-fast) ease;width:var(--doc-sidebar-width);will-change:width}.docSidebarContainerHidden_UOoK{cursor:pointer;width:var(--doc-sidebar-hidden-width)}.sidebarViewport_d72u{height:100%;max-height:100vh;position:sticky;top:0}.docMainContainer_pwdE{flex-grow:1;max-width:calc(100% - var(--doc-sidebar-width))}.docMainContainerEnhanced_K22F{max-width:calc(100% - var(--doc-sidebar-hidden-width))}.docItemWrapperEnhanced_ae35{max-width:calc(var(--ifm-container-width) + var(--doc-sidebar-width))!important}.navbarSearchContainer_T9WI{padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.docItemCol_nv1l{max-width:75%!important}}@media (min-width:1440px){.container{max-width:var(--ifm-container-width-xl)}}@media (max-width:996px){.col{--ifm-col-width:100%;flex-basis:var(--ifm-col-width);margin-left:0}.footer{--ifm-footer-padding-horizontal:0}.colorModeToggle_uMRh,.footer__link-separator,.navbar__item,.tableOfContents_ao1q{display:none}.footer__col{margin-bottom:calc(var(--ifm-spacing-vertical)*3)}.footer__link-item{display:block}.hero{padding-left:0;padding-right:0}.navbar>.container,.navbar>.container-fluid{padding:0}.navbar__toggle{display:inherit}.navbar__search-input{width:9rem}.pills--block,.tabs--block{flex-direction:column}.docItemContainer_ezBS{padding:0 .3rem}.navbarSearchContainer_T9WI{position:absolute;right:var(--ifm-navbar-padding-horizontal)}}@media only screen and (max-width:996px){.searchQueryColumn_wRHY,.searchResultsColumn_gV3A{max-width:60%!important}.searchLogoColumn_WWHA,.searchVersionColumn_XHUD{max-width:40%!important}.searchLogoColumn_WWHA{padding-left:0!important}}@media screen and (max-width:996px){.heroBanner_qdFl{padding:2rem}}@media (max-width:768px){.feelback-q{justify-content:space-between}.DocSearch-Button-Keys,.DocSearch-Button-Placeholder,.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%;max-height:calc(var(--docsearch-vh,1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh,1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh,1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Cancel{appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:0;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}}@media (max-width:576px){.markdown h1:first-child{--ifm-h1-font-size:2rem}.markdown>h2{--ifm-h2-font-size:1.5rem}.markdown>h3{--ifm-h3-font-size:1.25rem}}@media screen and (max-width:576px){.searchQueryColumn_wRHY{max-width:100%!important}.searchVersionColumn_XHUD{max-width:100%!important;padding-left:var(--ifm-spacing-horizontal)!important}}@media (hover:hover){.backToTopButton_bu1J:hover{background-color:var(--ifm-color-emphasis-300)}}@media (pointer:fine){.thin-scrollbar{scrollbar-width:thin}.thin-scrollbar::-webkit-scrollbar{height:var(--ifm-scrollbar-size);width:var(--ifm-scrollbar-size)}.thin-scrollbar::-webkit-scrollbar-track{background:var(--ifm-scrollbar-track-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb{background:var(--ifm-scrollbar-thumb-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--ifm-scrollbar-thumb-hover-background-color)}}@media (prefers-reduced-motion:reduce){:root{--ifm-transition-fast:0ms;--ifm-transition-slow:0ms}}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit--deleting,.DocSearch-Hit--favoriting{transition:none}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}@media print{.announcementBar_Zfeh,.footer,.menu,.navbar,.pagination-nav,.table-of-contents,.tocMobile_aui3{display:none}.tabs{page-break-inside:avoid}.codeBlockLines_znEV{white-space:pre-wrap}} \ No newline at end of file +.col,.container{padding:0 var(--ifm-spacing-horizontal);width:100%}.markdown>h2,.markdown>h3,.markdown>h4,.markdown>h5,.markdown>h6{margin-bottom:calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown li,body{word-wrap:break-word}body,ol ol,ol ul,ul ol,ul ul{margin:0}pre,table{overflow:auto}blockquote,pre{margin:0 0 var(--ifm-spacing-vertical)}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button,code{vertical-align:middle}.button--outline.button--active,.button--outline:active,.button--outline:hover,:root{--ifm-button-color:var(--ifm-font-color-base-inverse)}.menu__link:hover,a{transition:color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.navbar--dark,:root{--ifm-navbar-link-hover-color:var(--ifm-color-primary)}.menu,.navbar-sidebar{overflow-x:hidden}:root,html[data-theme=dark]{--ifm-color-emphasis-500:var(--ifm-color-gray-500)}*,.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.toggleButton_XdRz,html{-webkit-tap-highlight-color:transparent}:root{--ifm-color-scheme:light;--ifm-dark-value:10%;--ifm-darker-value:15%;--ifm-darkest-value:30%;--ifm-light-value:15%;--ifm-lighter-value:30%;--ifm-lightest-value:50%;--ifm-contrast-background-value:90%;--ifm-contrast-foreground-value:70%;--ifm-contrast-background-dark-value:70%;--ifm-contrast-foreground-dark-value:90%;--ifm-color-primary:#3578e5;--ifm-color-secondary:#ebedf0;--ifm-color-success:#00a400;--ifm-color-info:#54c7ec;--ifm-color-warning:#ffba00;--ifm-color-danger:#fa383e;--ifm-color-primary-dark:#306cce;--ifm-color-primary-darker:#2d66c3;--ifm-color-primary-darkest:#2554a0;--ifm-color-primary-light:#538ce9;--ifm-color-primary-lighter:#72a1ed;--ifm-color-primary-lightest:#9abcf2;--ifm-color-primary-contrast-background:#ebf2fc;--ifm-color-primary-contrast-foreground:#102445;--ifm-color-secondary-dark:#d4d5d8;--ifm-color-secondary-darker:#c8c9cc;--ifm-color-secondary-darkest:#a4a6a8;--ifm-color-secondary-light:#eef0f2;--ifm-color-secondary-lighter:#f1f2f5;--ifm-color-secondary-lightest:#f5f6f8;--ifm-color-secondary-contrast-background:#fdfdfe;--ifm-color-secondary-contrast-foreground:#474748;--ifm-color-success-dark:#009400;--ifm-color-success-darker:#008b00;--ifm-color-success-darkest:#007300;--ifm-color-success-light:#26b226;--ifm-color-success-lighter:#4dbf4d;--ifm-color-success-lightest:#80d280;--ifm-color-success-contrast-background:#e6f6e6;--ifm-color-success-contrast-foreground:#003100;--ifm-color-info-dark:#4cb3d4;--ifm-color-info-darker:#47a9c9;--ifm-color-info-darkest:#3b8ba5;--ifm-color-info-light:#6ecfef;--ifm-color-info-lighter:#87d8f2;--ifm-color-info-lightest:#aae3f6;--ifm-color-info-contrast-background:#eef9fd;--ifm-color-info-contrast-foreground:#193c47;--ifm-color-warning-dark:#e6a700;--ifm-color-warning-darker:#d99e00;--ifm-color-warning-darkest:#b38200;--ifm-color-warning-light:#ffc426;--ifm-color-warning-lighter:#ffcf4d;--ifm-color-warning-lightest:#ffdd80;--ifm-color-warning-contrast-background:#fff8e6;--ifm-color-warning-contrast-foreground:#4d3800;--ifm-color-danger-dark:#e13238;--ifm-color-danger-darker:#d53035;--ifm-color-danger-darkest:#af272b;--ifm-color-danger-light:#fb565b;--ifm-color-danger-lighter:#fb7478;--ifm-color-danger-lightest:#fd9c9f;--ifm-color-danger-contrast-background:#ffebec;--ifm-color-danger-contrast-foreground:#4b1113;--ifm-color-white:#fff;--ifm-color-black:#000;--ifm-color-gray-0:var(--ifm-color-white);--ifm-color-gray-100:#f5f6f7;--ifm-color-gray-200:#ebedf0;--ifm-color-gray-300:#dadde1;--ifm-color-gray-400:#ccd0d5;--ifm-color-gray-500:#bec3c9;--ifm-color-gray-600:#8d949e;--ifm-color-gray-700:#606770;--ifm-color-gray-800:#444950;--ifm-color-gray-900:#1c1e21;--ifm-color-gray-1000:var(--ifm-color-black);--ifm-color-emphasis-0:var(--ifm-color-gray-0);--ifm-color-emphasis-100:var(--ifm-color-gray-100);--ifm-color-emphasis-200:var(--ifm-color-gray-200);--ifm-color-emphasis-300:var(--ifm-color-gray-300);--ifm-color-emphasis-400:var(--ifm-color-gray-400);--ifm-color-emphasis-600:var(--ifm-color-gray-600);--ifm-color-emphasis-700:var(--ifm-color-gray-700);--ifm-color-emphasis-800:var(--ifm-color-gray-800);--ifm-color-emphasis-900:var(--ifm-color-gray-900);--ifm-color-emphasis-1000:var(--ifm-color-gray-1000);--ifm-color-content:var(--ifm-color-emphasis-900);--ifm-color-content-inverse:var(--ifm-color-emphasis-0);--ifm-color-content-secondary:#525860;--ifm-background-color:#0000;--ifm-background-surface-color:var(--ifm-color-content-inverse);--ifm-global-border-width:1px;--ifm-global-radius:0.4rem;--ifm-hover-overlay:#0000000d;--ifm-font-color-base:var(--ifm-color-content);--ifm-font-color-base-inverse:var(--ifm-color-content-inverse);--ifm-font-color-secondary:var(--ifm-color-content-secondary);--ifm-font-family-base:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--ifm-font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ifm-font-size-base:100%;--ifm-font-weight-light:300;--ifm-font-weight-normal:400;--ifm-font-weight-semibold:500;--ifm-font-weight-bold:700;--ifm-font-weight-base:var(--ifm-font-weight-normal);--ifm-line-height-base:1.65;--ifm-global-spacing:1rem;--ifm-spacing-vertical:var(--ifm-global-spacing);--ifm-spacing-horizontal:var(--ifm-global-spacing);--ifm-transition-fast:200ms;--ifm-transition-slow:400ms;--ifm-transition-timing-default:cubic-bezier(0.08,0.52,0.52,1);--ifm-global-shadow-lw:0 1px 2px 0 #0000001a;--ifm-global-shadow-md:0 5px 40px #0003;--ifm-global-shadow-tl:0 12px 28px 0 #0003,0 2px 4px 0 #0000001a;--ifm-z-index-dropdown:100;--ifm-z-index-fixed:200;--ifm-z-index-overlay:400;--ifm-container-width:1140px;--ifm-container-width-xl:1320px;--ifm-code-background:#f6f7f8;--ifm-code-border-radius:var(--ifm-global-radius);--ifm-code-font-size:90%;--ifm-code-padding-horizontal:0.1rem;--ifm-code-padding-vertical:0.1rem;--ifm-pre-background:var(--ifm-code-background);--ifm-pre-border-radius:var(--ifm-code-border-radius);--ifm-pre-color:inherit;--ifm-pre-line-height:1.45;--ifm-pre-padding:1rem;--ifm-heading-color:inherit;--ifm-heading-margin-top:0;--ifm-heading-margin-bottom:var(--ifm-spacing-vertical);--ifm-heading-font-family:var(--ifm-font-family-base);--ifm-heading-font-weight:var(--ifm-font-weight-bold);--ifm-heading-line-height:1.25;--ifm-h1-font-size:2rem;--ifm-h2-font-size:1.5rem;--ifm-h3-font-size:1.25rem;--ifm-h4-font-size:1rem;--ifm-h5-font-size:0.875rem;--ifm-h6-font-size:0.85rem;--ifm-image-alignment-padding:1.25rem;--ifm-leading-desktop:1.25;--ifm-leading:calc(var(--ifm-leading-desktop)*1rem);--ifm-list-left-padding:2rem;--ifm-list-margin:1rem;--ifm-list-item-margin:0.25rem;--ifm-list-paragraph-margin:1rem;--ifm-table-cell-padding:0.75rem;--ifm-table-background:#0000;--ifm-table-stripe-background:#00000008;--ifm-table-border-width:1px;--ifm-table-border-color:var(--ifm-color-emphasis-300);--ifm-table-head-background:inherit;--ifm-table-head-color:inherit;--ifm-table-head-font-weight:var(--ifm-font-weight-bold);--ifm-table-cell-color:inherit;--ifm-link-color:var(--ifm-color-primary);--ifm-link-decoration:none;--ifm-link-hover-color:var(--ifm-link-color);--ifm-link-hover-decoration:underline;--ifm-paragraph-margin-bottom:var(--ifm-leading);--ifm-blockquote-font-size:var(--ifm-font-size-base);--ifm-blockquote-border-left-width:2px;--ifm-blockquote-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-blockquote-padding-vertical:0;--ifm-blockquote-shadow:none;--ifm-blockquote-color:var(--ifm-color-emphasis-800);--ifm-blockquote-border-color:var(--ifm-color-emphasis-300);--ifm-hr-background-color:var(--ifm-color-emphasis-500);--ifm-hr-height:1px;--ifm-hr-margin-vertical:1.5rem;--ifm-scrollbar-size:7px;--ifm-scrollbar-track-background-color:#f1f1f1;--ifm-scrollbar-thumb-background-color:silver;--ifm-scrollbar-thumb-hover-background-color:#a7a7a7;--ifm-alert-background-color:inherit;--ifm-alert-border-color:inherit;--ifm-alert-border-radius:var(--ifm-global-radius);--ifm-alert-border-width:0px;--ifm-alert-border-left-width:5px;--ifm-alert-color:var(--ifm-font-color-base);--ifm-alert-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-alert-padding-vertical:var(--ifm-spacing-vertical);--ifm-alert-shadow:var(--ifm-global-shadow-lw);--ifm-avatar-intro-margin:1rem;--ifm-avatar-intro-alignment:inherit;--ifm-avatar-photo-size:3rem;--ifm-badge-background-color:inherit;--ifm-badge-border-color:inherit;--ifm-badge-border-radius:var(--ifm-global-radius);--ifm-badge-border-width:var(--ifm-global-border-width);--ifm-badge-color:var(--ifm-color-white);--ifm-badge-padding-horizontal:calc(var(--ifm-spacing-horizontal)*0.5);--ifm-badge-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-breadcrumb-border-radius:1.5rem;--ifm-breadcrumb-spacing:0.5rem;--ifm-breadcrumb-color-active:var(--ifm-color-primary);--ifm-breadcrumb-item-background-active:var(--ifm-hover-overlay);--ifm-breadcrumb-padding-horizontal:0.8rem;--ifm-breadcrumb-padding-vertical:0.4rem;--ifm-breadcrumb-size-multiplier:1;--ifm-breadcrumb-separator:url('data:image/svg+xml;utf8,');--ifm-breadcrumb-separator-filter:none;--ifm-breadcrumb-separator-size:0.5rem;--ifm-breadcrumb-separator-size-multiplier:1.25;--ifm-button-background-color:inherit;--ifm-button-border-color:var(--ifm-button-background-color);--ifm-button-border-width:var(--ifm-global-border-width);--ifm-button-font-weight:var(--ifm-font-weight-bold);--ifm-button-padding-horizontal:1.5rem;--ifm-button-padding-vertical:0.375rem;--ifm-button-size-multiplier:1;--ifm-button-transition-duration:var(--ifm-transition-fast);--ifm-button-border-radius:calc(var(--ifm-global-radius)*var(--ifm-button-size-multiplier));--ifm-button-group-spacing:2px;--ifm-card-background-color:var(--ifm-background-surface-color);--ifm-card-border-radius:calc(var(--ifm-global-radius)*2);--ifm-card-horizontal-spacing:var(--ifm-global-spacing);--ifm-card-vertical-spacing:var(--ifm-global-spacing);--ifm-toc-border-color:var(--ifm-color-emphasis-300);--ifm-toc-link-color:var(--ifm-color-content-secondary);--ifm-toc-padding-vertical:0.5rem;--ifm-toc-padding-horizontal:0.5rem;--ifm-dropdown-background-color:var(--ifm-background-surface-color);--ifm-dropdown-font-weight:var(--ifm-font-weight-semibold);--ifm-dropdown-link-color:var(--ifm-font-color-base);--ifm-dropdown-hover-background-color:var(--ifm-hover-overlay);--ifm-footer-background-color:var(--ifm-color-emphasis-100);--ifm-footer-color:inherit;--ifm-footer-link-color:var(--ifm-color-emphasis-700);--ifm-footer-link-hover-color:var(--ifm-color-primary);--ifm-footer-link-horizontal-spacing:0.5rem;--ifm-footer-padding-horizontal:calc(var(--ifm-spacing-horizontal)*2);--ifm-footer-padding-vertical:calc(var(--ifm-spacing-vertical)*2);--ifm-footer-title-color:inherit;--ifm-footer-logo-max-width:min(30rem,90vw);--ifm-hero-background-color:var(--ifm-background-surface-color);--ifm-hero-text-color:var(--ifm-color-emphasis-800);--ifm-menu-color:var(--ifm-color-emphasis-700);--ifm-menu-color-active:var(--ifm-color-primary);--ifm-menu-color-background-active:var(--ifm-hover-overlay);--ifm-menu-color-background-hover:var(--ifm-hover-overlay);--ifm-menu-link-padding-horizontal:0.75rem;--ifm-menu-link-padding-vertical:0.375rem;--ifm-menu-link-sublist-icon:url('data:image/svg+xml;utf8,');--ifm-menu-link-sublist-icon-filter:none;--ifm-navbar-background-color:var(--ifm-background-surface-color);--ifm-navbar-height:3.75rem;--ifm-navbar-item-padding-horizontal:0.75rem;--ifm-navbar-item-padding-vertical:0.25rem;--ifm-navbar-link-color:var(--ifm-font-color-base);--ifm-navbar-link-active-color:var(--ifm-link-color);--ifm-navbar-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-navbar-padding-vertical:calc(var(--ifm-spacing-vertical)*0.5);--ifm-navbar-shadow:var(--ifm-global-shadow-lw);--ifm-navbar-search-input-background-color:var(--ifm-color-emphasis-200);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-800);--ifm-navbar-search-input-placeholder-color:var(--ifm-color-emphasis-500);--ifm-navbar-search-input-icon:url('data:image/svg+xml;utf8,');--ifm-navbar-sidebar-width:83vw;--ifm-pagination-border-radius:var(--ifm-global-radius);--ifm-pagination-color-active:var(--ifm-color-primary);--ifm-pagination-font-size:1rem;--ifm-pagination-item-active-background:var(--ifm-hover-overlay);--ifm-pagination-page-spacing:0.2em;--ifm-pagination-padding-horizontal:calc(var(--ifm-spacing-horizontal)*1);--ifm-pagination-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-pagination-nav-border-radius:var(--ifm-global-radius);--ifm-pagination-nav-color-hover:var(--ifm-color-primary);--ifm-pills-color-active:var(--ifm-color-primary);--ifm-pills-color-background-active:var(--ifm-hover-overlay);--ifm-pills-spacing:0.125rem;--ifm-tabs-color:var(--ifm-font-color-secondary);--ifm-tabs-color-active:var(--ifm-color-primary);--ifm-tabs-color-active-border:var(--ifm-tabs-color-active);--ifm-tabs-padding-horizontal:1rem;--ifm-tabs-padding-vertical:1rem;--docusaurus-progress-bar-color:var(--ifm-color-primary);--ifm-color-primary:#33b4b7;--ifm-color-primary-dark:#2ea2a5;--ifm-color-primary-darker:#2b999c;--ifm-color-primary-darkest:#247e80;--ifm-color-primary-light:#39c5c8;--ifm-color-primary-lighter:#43c7ca;--ifm-color-primary-lightest:#5ed0d2;--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:#fff;--docusaurus-tag-list-border:var(--ifm-color-emphasis-300);--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:#656c85cc;--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 #ffffff80,0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px #1e235a66;--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 #1e235a66;--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 #45629b1f;--docsearch-primary-color:var(--ifm-color-primary);--docsearch-text-color:var(--ifm-font-color-base);--docusaurus-announcement-bar-height:auto;--docusaurus-collapse-button-bg:#0000;--docusaurus-collapse-button-bg-hover:#0000001a;--doc-sidebar-width:300px;--doc-sidebar-hidden-width:30px}.badge--danger,.badge--info,.badge--primary,.badge--secondary,.badge--success,.badge--warning{--ifm-badge-border-color:var(--ifm-badge-background-color)}.button--link,.button--outline{--ifm-button-background-color:#0000}html{background-color:var(--ifm-background-color);color:var(--ifm-font-color-base);color-scheme:var(--ifm-color-scheme);font:var(--ifm-font-size-base)/var(--ifm-line-height-base) var(--ifm-font-family-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%}iframe{border:0;color-scheme:auto}.container{margin:0 auto;max-width:var(--ifm-container-width)}.container--fluid{max-width:inherit}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--ifm-spacing-horizontal)*-1)}.margin-bottom--none,.margin-vert--none,.markdown>:last-child{margin-bottom:0!important}.margin-top--none,.margin-vert--none{margin-top:0!important}.row--no-gutters{margin-left:0;margin-right:0}.margin-horiz--none,.margin-right--none{margin-right:0!important}.row--no-gutters>.col{padding-left:0;padding-right:0}.row--align-top{align-items:flex-start}.row--align-bottom{align-items:flex-end}.row--align-center{align-items:center}.row--align-stretch{align-items:stretch}.row--align-baseline{align-items:baseline}.col{--ifm-col-width:100%;flex:1 0;margin-left:0;max-width:var(--ifm-col-width)}.padding-bottom--none,.padding-vert--none{padding-bottom:0!important}.padding-top--none,.padding-vert--none{padding-top:0!important}.padding-horiz--none,.padding-left--none{padding-left:0!important}.padding-horiz--none,.padding-right--none{padding-right:0!important}.col[class*=col--]{flex:0 0 var(--ifm-col-width)}.col--1{--ifm-col-width:8.33333%}.col--offset-1{margin-left:8.33333%}.col--2{--ifm-col-width:16.66667%}.col--offset-2{margin-left:16.66667%}.col--3{--ifm-col-width:25%}.col--offset-3{margin-left:25%}.col--4{--ifm-col-width:33.33333%}.col--offset-4{margin-left:33.33333%}.col--5{--ifm-col-width:41.66667%}.col--offset-5{margin-left:41.66667%}.col--6{--ifm-col-width:50%}.col--offset-6{margin-left:50%}.col--7{--ifm-col-width:58.33333%}.col--offset-7{margin-left:58.33333%}.col--8{--ifm-col-width:66.66667%}.col--offset-8{margin-left:66.66667%}.col--9{--ifm-col-width:75%}.col--offset-9{margin-left:75%}.col--10{--ifm-col-width:83.33333%}.col--offset-10{margin-left:83.33333%}.col--11{--ifm-col-width:91.66667%}.col--offset-11{margin-left:91.66667%}.col--12{--ifm-col-width:100%}.col--offset-12{margin-left:100%}.margin-horiz--none,.margin-left--none{margin-left:0!important}.margin--none{margin:0!important}.margin-bottom--xs,.margin-vert--xs{margin-bottom:.25rem!important}.margin-top--xs,.margin-vert--xs{margin-top:.25rem!important}.margin-horiz--xs,.margin-left--xs{margin-left:.25rem!important}.margin-horiz--xs,.margin-right--xs{margin-right:.25rem!important}.margin--xs{margin:.25rem!important}.margin-bottom--sm,.margin-vert--sm{margin-bottom:.5rem!important}.margin-top--sm,.margin-vert--sm{margin-top:.5rem!important}.margin-horiz--sm,.margin-left--sm{margin-left:.5rem!important}.margin-horiz--sm,.margin-right--sm{margin-right:.5rem!important}.margin--sm{margin:.5rem!important}.margin-bottom--md,.margin-vert--md{margin-bottom:1rem!important}.margin-top--md,.margin-vert--md{margin-top:1rem!important}.margin-horiz--md,.margin-left--md{margin-left:1rem!important}.margin-horiz--md,.margin-right--md{margin-right:1rem!important}.margin--md{margin:1rem!important}.margin-bottom--lg,.margin-vert--lg{margin-bottom:2rem!important}.margin-top--lg,.margin-vert--lg{margin-top:2rem!important}.margin-horiz--lg,.margin-left--lg{margin-left:2rem!important}.margin-horiz--lg,.margin-right--lg{margin-right:2rem!important}.margin--lg{margin:2rem!important}.margin-bottom--xl,.margin-vert--xl{margin-bottom:5rem!important}.margin-top--xl,.margin-vert--xl{margin-top:5rem!important}.margin-horiz--xl,.margin-left--xl{margin-left:5rem!important}.margin-horiz--xl,.margin-right--xl{margin-right:5rem!important}.margin--xl{margin:5rem!important}.padding--none{padding:0!important}.padding-bottom--xs,.padding-vert--xs{padding-bottom:.25rem!important}.padding-top--xs,.padding-vert--xs{padding-top:.25rem!important}.padding-horiz--xs,.padding-left--xs{padding-left:.25rem!important}.padding-horiz--xs,.padding-right--xs{padding-right:.25rem!important}.padding--xs{padding:.25rem!important}.padding-bottom--sm,.padding-vert--sm{padding-bottom:.5rem!important}.padding-top--sm,.padding-vert--sm{padding-top:.5rem!important}.padding-horiz--sm,.padding-left--sm{padding-left:.5rem!important}.padding-horiz--sm,.padding-right--sm{padding-right:.5rem!important}.padding--sm{padding:.5rem!important}.padding-bottom--md,.padding-vert--md{padding-bottom:1rem!important}.padding-top--md,.padding-vert--md{padding-top:1rem!important}.padding-horiz--md,.padding-left--md{padding-left:1rem!important}.padding-horiz--md,.padding-right--md{padding-right:1rem!important}.padding--md{padding:1rem!important}.padding-bottom--lg,.padding-vert--lg{padding-bottom:2rem!important}.padding-top--lg,.padding-vert--lg{padding-top:2rem!important}.padding-horiz--lg,.padding-left--lg{padding-left:2rem!important}.padding-horiz--lg,.padding-right--lg{padding-right:2rem!important}.padding--lg{padding:2rem!important}.padding-bottom--xl,.padding-vert--xl{padding-bottom:5rem!important}.padding-top--xl,.padding-vert--xl{padding-top:5rem!important}.padding-horiz--xl,.padding-left--xl{padding-left:5rem!important}.padding-horiz--xl,.padding-right--xl{padding-right:5rem!important}.padding--xl{padding:5rem!important}code{background-color:var(--ifm-code-background);border:.1rem solid #0000001a;border-radius:var(--ifm-code-border-radius);font-family:var(--ifm-font-family-monospace);font-size:var(--ifm-code-font-size);padding:var(--ifm-code-padding-vertical) var(--ifm-code-padding-horizontal)}a code{color:inherit}pre{background-color:var(--ifm-pre-background);border-radius:var(--ifm-pre-border-radius);color:var(--ifm-pre-color);font:var(--ifm-code-font-size)/var(--ifm-pre-line-height) var(--ifm-font-family-monospace);padding:var(--ifm-pre-padding)}pre code{background-color:initial;border:none;font-size:100%;line-height:inherit;padding:0}kbd{background-color:var(--ifm-color-emphasis-0);border:1px solid var(--ifm-color-emphasis-400);border-radius:.2rem;box-shadow:inset 0 -1px 0 var(--ifm-color-emphasis-400);color:var(--ifm-color-emphasis-800);font:80% var(--ifm-font-family-monospace);padding:.15rem .3rem}h1,h2,h3,h4,h5,h6{color:var(--ifm-heading-color);font-family:var(--ifm-heading-font-family);font-weight:var(--ifm-heading-font-weight);line-height:var(--ifm-heading-line-height);margin:var(--ifm-heading-margin-top) 0 var(--ifm-heading-margin-bottom) 0}h1{font-size:var(--ifm-h1-font-size)}h2{font-size:var(--ifm-h2-font-size)}h3{font-size:var(--ifm-h3-font-size)}h4{font-size:var(--ifm-h4-font-size)}h5{font-size:var(--ifm-h5-font-size)}h6{font-size:var(--ifm-h6-font-size)}img{max-width:100%}img[align=right]{padding-left:var(--image-alignment-padding)}img[align=left]{padding-right:var(--image-alignment-padding)}.markdown{--ifm-h1-vertical-rhythm-top:3;--ifm-h2-vertical-rhythm-top:2;--ifm-h3-vertical-rhythm-top:1.5;--ifm-heading-vertical-rhythm-top:1.25;--ifm-h1-vertical-rhythm-bottom:1.25;--ifm-heading-vertical-rhythm-bottom:1}.markdown:after,.markdown:before{content:"";display:table}.markdown:after{clear:both}.markdown h1:first-child{--ifm-h1-font-size:3rem;margin-bottom:calc(var(--ifm-h1-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown>h2{--ifm-h2-font-size:2rem;margin-top:calc(var(--ifm-h2-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h3{--ifm-h3-font-size:1.5rem;margin-top:calc(var(--ifm-h3-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h4,.markdown>h5,.markdown>h6{margin-top:calc(var(--ifm-heading-vertical-rhythm-top)*var(--ifm-leading))}.markdown>p,.markdown>pre,.markdown>ul{margin-bottom:var(--ifm-leading)}.markdown li>p{margin-top:var(--ifm-list-paragraph-margin)}.markdown li+li{margin-top:var(--ifm-list-item-margin)}ol,ul{margin:0 0 var(--ifm-list-margin);padding-left:var(--ifm-list-left-padding)}ol ol,ul ol{list-style-type:lower-roman}ol ol ol,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}table{border-collapse:collapse;display:block;margin-bottom:var(--ifm-spacing-vertical)}table thead tr{border-bottom:2px solid var(--ifm-table-border-color)}table thead,table tr:nth-child(2n){background-color:var(--ifm-table-stripe-background)}table tr{background-color:var(--ifm-table-background);border-top:var(--ifm-table-border-width) solid var(--ifm-table-border-color)}table td,table th{border:var(--ifm-table-border-width) solid var(--ifm-table-border-color);padding:var(--ifm-table-cell-padding)}table th{background-color:var(--ifm-table-head-background);color:var(--ifm-table-head-color);font-weight:var(--ifm-table-head-font-weight)}table td{color:var(--ifm-table-cell-color)}strong{font-weight:var(--ifm-font-weight-bold)}a{color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}a:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button:hover,.text--no-decoration,.text--no-decoration:hover,a:not([href]){text-decoration:none}p{margin:0 0 var(--ifm-paragraph-margin-bottom)}blockquote{border-left:var(--ifm-blockquote-border-left-width) solid var(--ifm-blockquote-border-color);box-shadow:var(--ifm-blockquote-shadow);color:var(--ifm-blockquote-color);font-size:var(--ifm-blockquote-font-size);padding:var(--ifm-blockquote-padding-vertical) var(--ifm-blockquote-padding-horizontal)}.docItemContainer_qRF8 article>:first-child,.docItemContainer_qRF8 header+*,.footer__item,blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{background-color:var(--ifm-hr-background-color);border:0;height:var(--ifm-hr-height);margin:var(--ifm-hr-margin-vertical) 0}.shadow--lw{box-shadow:var(--ifm-global-shadow-lw)!important}.shadow--md{box-shadow:var(--ifm-global-shadow-md)!important}.shadow--tl{box-shadow:var(--ifm-global-shadow-tl)!important}.text--primary,.wordWrapButtonEnabled_G369 .wordWrapButtonIcon_Y7KL{color:var(--ifm-color-primary)}.text--secondary{color:var(--ifm-color-secondary)}.text--success{color:var(--ifm-color-success)}.text--info{color:var(--ifm-color-info)}.text--warning{color:var(--ifm-color-warning)}.text--danger{color:var(--ifm-color-danger)}.text--center{text-align:center}.text--left{text-align:left}.text--justify{text-align:justify}.text--right{text-align:right}.text--capitalize{text-transform:capitalize}.text--lowercase{text-transform:lowercase}.admonitionHeading_oO7N,.alert__heading,.feelback-btn.btn-action,.text--uppercase{text-transform:uppercase}.text--light{font-weight:var(--ifm-font-weight-light)}.text--normal{font-weight:var(--ifm-font-weight-normal)}.text--semibold{font-weight:var(--ifm-font-weight-semibold)}.text--bold{font-weight:var(--ifm-font-weight-bold)}.text--italic{font-style:italic}.text--truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--break{word-wrap:break-word!important;word-break:break-word!important}.clean-btn{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;padding:0}.alert,.alert .close{color:var(--ifm-alert-foreground-color)}.clean-list{list-style:none;padding-left:0}.alert--primary{--ifm-alert-background-color:var(--ifm-color-primary-contrast-background);--ifm-alert-background-color-highlight:#3578e526;--ifm-alert-foreground-color:var(--ifm-color-primary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-primary-dark)}.alert--secondary{--ifm-alert-background-color:var(--ifm-color-secondary-contrast-background);--ifm-alert-background-color-highlight:#ebedf026;--ifm-alert-foreground-color:var(--ifm-color-secondary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-secondary-dark)}.alert--success{--ifm-alert-background-color:var(--ifm-color-success-contrast-background);--ifm-alert-background-color-highlight:#00a40026;--ifm-alert-foreground-color:var(--ifm-color-success-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-success-dark)}.alert--info{--ifm-alert-background-color:var(--ifm-color-info-contrast-background);--ifm-alert-background-color-highlight:#54c7ec26;--ifm-alert-foreground-color:var(--ifm-color-info-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-info-dark)}.alert--warning{--ifm-alert-background-color:var(--ifm-color-warning-contrast-background);--ifm-alert-background-color-highlight:#ffba0026;--ifm-alert-foreground-color:var(--ifm-color-warning-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-warning-dark)}.alert--danger{--ifm-alert-background-color:var(--ifm-color-danger-contrast-background);--ifm-alert-background-color-highlight:#fa383e26;--ifm-alert-foreground-color:var(--ifm-color-danger-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-danger-dark)}.alert{--ifm-code-background:var(--ifm-alert-background-color-highlight);--ifm-link-color:var(--ifm-alert-foreground-color);--ifm-link-hover-color:var(--ifm-alert-foreground-color);--ifm-link-decoration:underline;--ifm-tabs-color:var(--ifm-alert-foreground-color);--ifm-tabs-color-active:var(--ifm-alert-foreground-color);--ifm-tabs-color-active-border:var(--ifm-alert-border-color);background-color:var(--ifm-alert-background-color);border:var(--ifm-alert-border-width) solid var(--ifm-alert-border-color);border-left-width:var(--ifm-alert-border-left-width);border-radius:var(--ifm-alert-border-radius);box-shadow:var(--ifm-alert-shadow);padding:var(--ifm-alert-padding-vertical) var(--ifm-alert-padding-horizontal)}.alert__heading{align-items:center;display:flex;font:700 var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.5rem}.alert__icon{display:inline-flex;margin-right:.4em}.alert__icon svg{fill:var(--ifm-alert-foreground-color);stroke:var(--ifm-alert-foreground-color);stroke-width:0}.alert .close{margin:calc(var(--ifm-alert-padding-vertical)*-1) calc(var(--ifm-alert-padding-horizontal)*-1) 0 0;opacity:.75}.alert .close:focus,.alert .close:hover{opacity:1}.alert a{text-decoration-color:var(--ifm-alert-border-color)}.alert a:hover{text-decoration-thickness:2px}.avatar{column-gap:var(--ifm-avatar-intro-margin);display:flex}.avatar__photo{border-radius:50%;display:block;height:var(--ifm-avatar-photo-size);overflow:hidden;width:var(--ifm-avatar-photo-size)}.card--full-height,.navbar__logo img,body,html{height:100%}.avatar__photo--sm{--ifm-avatar-photo-size:2rem}.avatar__photo--lg{--ifm-avatar-photo-size:4rem}.avatar__photo--xl{--ifm-avatar-photo-size:6rem}.avatar__intro{display:flex;flex:1 1;flex-direction:column;justify-content:center;text-align:var(--ifm-avatar-intro-alignment)}.badge,.breadcrumbs__item,.breadcrumbs__link,.button,.dropdown>.navbar__link:after,.feelback-container.feelback-message.layout-button-dialogue,.feelback-container.feelback-pulse,.feelback-container.feelback-reaction,.feelback-container.feelback-tagged-message.layout-button-dialog,.feelback-style.feelback-message.layout-button-dialogue,.feelback-style.feelback-pulse,.feelback-style.feelback-reaction,.feelback-style.feelback-tagged-message.layout-button-dialog{display:inline-block}.avatar__name{font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base)}.avatar__subtitle{margin-top:.25rem}.avatar--vertical{--ifm-avatar-intro-alignment:center;--ifm-avatar-intro-margin:0.5rem;align-items:center;flex-direction:column}.badge{background-color:var(--ifm-badge-background-color);border:var(--ifm-badge-border-width) solid var(--ifm-badge-border-color);border-radius:var(--ifm-badge-border-radius);color:var(--ifm-badge-color);font-size:75%;font-weight:var(--ifm-font-weight-bold);line-height:1;padding:var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal)}.badge--primary{--ifm-badge-background-color:var(--ifm-color-primary)}.badge--secondary{--ifm-badge-background-color:var(--ifm-color-secondary);color:var(--ifm-color-black)}.breadcrumbs__link,.button.button--secondary.button--outline:not(.button--active):not(:hover){color:var(--ifm-font-color-base)}.badge--success{--ifm-badge-background-color:var(--ifm-color-success)}.badge--info{--ifm-badge-background-color:var(--ifm-color-info)}.badge--warning{--ifm-badge-background-color:var(--ifm-color-warning)}.badge--danger{--ifm-badge-background-color:var(--ifm-color-danger)}.breadcrumbs{margin-bottom:0;padding-left:0}.breadcrumbs__item:not(:last-child):after{background:var(--ifm-breadcrumb-separator) center;content:" ";display:inline-block;filter:var(--ifm-breadcrumb-separator-filter);height:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));margin:0 var(--ifm-breadcrumb-spacing);opacity:.5;width:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier))}.breadcrumbs__item--active .breadcrumbs__link{background:var(--ifm-breadcrumb-item-background-active);color:var(--ifm-breadcrumb-color-active)}.breadcrumbs__link{border-radius:var(--ifm-breadcrumb-border-radius);font-size:calc(1rem*var(--ifm-breadcrumb-size-multiplier));padding:calc(var(--ifm-breadcrumb-padding-vertical)*var(--ifm-breadcrumb-size-multiplier)) calc(var(--ifm-breadcrumb-padding-horizontal)*var(--ifm-breadcrumb-size-multiplier));transition-duration:var(--ifm-transition-fast);transition-property:background,color}.breadcrumbs__link:any-link:hover,.breadcrumbs__link:link:hover,.breadcrumbs__link:visited:hover,area[href].breadcrumbs__link:hover{background:var(--ifm-breadcrumb-item-background-active);text-decoration:none}.breadcrumbs--sm{--ifm-breadcrumb-size-multiplier:0.8}.breadcrumbs--lg{--ifm-breadcrumb-size-multiplier:1.2}.button{background-color:var(--ifm-button-background-color);border:var(--ifm-button-border-width) solid var(--ifm-button-border-color);border-radius:var(--ifm-button-border-radius);cursor:pointer;font-size:calc(.875rem*var(--ifm-button-size-multiplier));font-weight:var(--ifm-button-font-weight);line-height:1.5;padding:calc(var(--ifm-button-padding-vertical)*var(--ifm-button-size-multiplier)) calc(var(--ifm-button-padding-horizontal)*var(--ifm-button-size-multiplier));text-align:center;transition-duration:var(--ifm-button-transition-duration);transition-property:color,background,border-color;-webkit-user-select:none;user-select:none;white-space:nowrap}.button,.button:hover{color:var(--ifm-button-color)}.button--outline{--ifm-button-color:var(--ifm-button-border-color)}.button--outline:hover{--ifm-button-background-color:var(--ifm-button-border-color)}.button--link{--ifm-button-border-color:#0000;color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}.button--link.button--active,.button--link:active,.button--link:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button.disabled,.button:disabled,.button[disabled]{opacity:.65;pointer-events:none}.button--sm{--ifm-button-size-multiplier:0.8}.button--lg{--ifm-button-size-multiplier:1.35}.button--block{display:block;width:100%}.button.button--secondary{color:var(--ifm-color-gray-900)}:where(.button--primary){--ifm-button-background-color:var(--ifm-color-primary);--ifm-button-border-color:var(--ifm-color-primary)}:where(.button--primary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-primary-dark);--ifm-button-border-color:var(--ifm-color-primary-dark)}.button--primary.button--active,.button--primary:active{--ifm-button-background-color:var(--ifm-color-primary-darker);--ifm-button-border-color:var(--ifm-color-primary-darker)}:where(.button--secondary){--ifm-button-background-color:var(--ifm-color-secondary);--ifm-button-border-color:var(--ifm-color-secondary)}:where(.button--secondary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-secondary-dark);--ifm-button-border-color:var(--ifm-color-secondary-dark)}.button--secondary.button--active,.button--secondary:active{--ifm-button-background-color:var(--ifm-color-secondary-darker);--ifm-button-border-color:var(--ifm-color-secondary-darker)}:where(.button--success){--ifm-button-background-color:var(--ifm-color-success);--ifm-button-border-color:var(--ifm-color-success)}:where(.button--success):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-success-dark);--ifm-button-border-color:var(--ifm-color-success-dark)}.button--success.button--active,.button--success:active{--ifm-button-background-color:var(--ifm-color-success-darker);--ifm-button-border-color:var(--ifm-color-success-darker)}:where(.button--info){--ifm-button-background-color:var(--ifm-color-info);--ifm-button-border-color:var(--ifm-color-info)}:where(.button--info):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-info-dark);--ifm-button-border-color:var(--ifm-color-info-dark)}.button--info.button--active,.button--info:active{--ifm-button-background-color:var(--ifm-color-info-darker);--ifm-button-border-color:var(--ifm-color-info-darker)}:where(.button--warning){--ifm-button-background-color:var(--ifm-color-warning);--ifm-button-border-color:var(--ifm-color-warning)}:where(.button--warning):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-warning-dark);--ifm-button-border-color:var(--ifm-color-warning-dark)}.button--warning.button--active,.button--warning:active{--ifm-button-background-color:var(--ifm-color-warning-darker);--ifm-button-border-color:var(--ifm-color-warning-darker)}:where(.button--danger){--ifm-button-background-color:var(--ifm-color-danger);--ifm-button-border-color:var(--ifm-color-danger)}:where(.button--danger):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-danger-dark);--ifm-button-border-color:var(--ifm-color-danger-dark)}.button--danger.button--active,.button--danger:active{--ifm-button-background-color:var(--ifm-color-danger-darker);--ifm-button-border-color:var(--ifm-color-danger-darker)}.button-group{display:inline-flex;gap:var(--ifm-button-group-spacing)}.button-group>.button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.button-group>.button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.button-group--block{display:flex;justify-content:stretch}.button-group--block>.button{flex-grow:1}.card{background-color:var(--ifm-card-background-color);border-radius:var(--ifm-card-border-radius);box-shadow:var(--ifm-global-shadow-lw);display:flex;flex-direction:column;overflow:hidden}.card__image{padding-top:var(--ifm-card-vertical-spacing)}.card__image:first-child{padding-top:0}.card__body,.card__footer,.card__header{padding:var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing)}.card__body:not(:last-child),.card__footer:not(:last-child),.card__header:not(:last-child){padding-bottom:0}.card__body>:last-child,.card__footer>:last-child,.card__header>:last-child{margin-bottom:0}.card__footer{margin-top:auto}.table-of-contents{font-size:.8rem;margin-bottom:0;padding:var(--ifm-toc-padding-vertical) 0}.table-of-contents,.table-of-contents ul{list-style:none;padding-left:var(--ifm-toc-padding-horizontal)}.table-of-contents li{margin:var(--ifm-toc-padding-vertical) var(--ifm-toc-padding-horizontal)}.table-of-contents__left-border{border-left:1px solid var(--ifm-toc-border-color)}.table-of-contents__link{color:var(--ifm-toc-link-color);display:block}.table-of-contents__link--active,.table-of-contents__link--active code,.table-of-contents__link:hover,.table-of-contents__link:hover code{color:var(--ifm-color-primary);text-decoration:none}.close{color:var(--ifm-color-black);float:right;font-size:1.5rem;font-weight:var(--ifm-font-weight-bold);line-height:1;opacity:.5;padding:1rem;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.close:hover,.feelback-btn.disabled>.feelback-icon{opacity:.7}.close:focus,.theme-code-block-highlighted-line .codeLineNumber_Czni:before{opacity:.8}.dropdown{display:inline-flex;font-weight:var(--ifm-dropdown-font-weight);position:relative;vertical-align:top}.dropdown--hoverable:hover .dropdown__menu,.dropdown--show .dropdown__menu{opacity:1;pointer-events:all;transform:translateY(-1px);visibility:visible}#nprogress,.dropdown__menu,.navbar__item.dropdown .navbar__link:not([href]){pointer-events:none}.dropdown--right .dropdown__menu{left:inherit;right:0}.dropdown--nocaret .navbar__link:after{content:none!important}.dropdown__menu{background-color:var(--ifm-dropdown-background-color);border-radius:var(--ifm-global-radius);box-shadow:var(--ifm-global-shadow-md);left:0;list-style:none;max-height:80vh;min-width:10rem;opacity:0;overflow-y:auto;padding:.5rem;position:absolute;top:calc(100% - var(--ifm-navbar-item-padding-vertical) + .3rem);transform:translateY(-.625rem);transition-duration:var(--ifm-transition-fast);transition-property:opacity,transform,visibility;transition-timing-function:var(--ifm-transition-timing-default);visibility:hidden;z-index:var(--ifm-z-index-dropdown)}.menu__caret,.menu__link,.menu__list-item-collapsible{border-radius:.25rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.dropdown__link{border-radius:.25rem;color:var(--ifm-dropdown-link-color);display:block;font-size:.875rem;margin-top:.2rem;padding:.25rem .5rem;white-space:nowrap}.dropdown__link--active,.dropdown__link:hover{background-color:var(--ifm-dropdown-hover-background-color);color:var(--ifm-dropdown-link-color);text-decoration:none}.dropdown__link--active,.dropdown__link--active:hover{--ifm-dropdown-link-color:var(--ifm-link-color)}.dropdown>.navbar__link:after{border-color:currentcolor #0000;border-style:solid;border-width:.4em .4em 0;content:"";margin-left:.3em;position:relative;top:2px;transform:translateY(-50%)}.footer{background-color:var(--ifm-footer-background-color);color:var(--ifm-footer-color);padding:var(--ifm-footer-padding-vertical) var(--ifm-footer-padding-horizontal)}.footer__links{margin-bottom:1rem}.footer__link-item{color:var(--ifm-footer-link-color);line-height:2}.footer__link-item:hover{color:var(--ifm-footer-link-hover-color)}.footer__link-separator{margin:0 var(--ifm-footer-link-horizontal-spacing)}.footer__logo{margin-top:1rem;max-width:var(--ifm-footer-logo-max-width)}.footer__title{color:var(--ifm-footer-title-color);font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base);margin-bottom:var(--ifm-heading-margin-bottom)}.menu,.navbar__link{font-weight:var(--ifm-font-weight-semibold)}.admonitionContent_F6Iy>:last-child,.collapsibleContent_zY8v p:last-child,.details_tB_N>summary>p:last-child,.footer__items{margin-bottom:0}.codeBlockStandalone_YYsl,[type=checkbox]{padding:0}.hero{align-items:center;background-color:var(--ifm-hero-background-color);color:var(--ifm-hero-text-color);display:flex;padding:4rem 2rem}.hero--primary{--ifm-hero-background-color:var(--ifm-color-primary);--ifm-hero-text-color:var(--ifm-font-color-base-inverse)}.hero--dark{--ifm-hero-background-color:#303846;--ifm-hero-text-color:var(--ifm-color-white)}.hero__title{font-size:3rem}.hero__subtitle{font-size:1.5rem}.menu__list{list-style:none;margin:0;padding-left:0}.menu__caret,.menu__link{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu__list .menu__list{flex:0 0 100%;margin-top:.25rem;padding-left:var(--ifm-menu-link-padding-horizontal)}.menu__list-item:not(:first-child){margin-top:.25rem}.menu__list-item--collapsed .menu__list{height:0;overflow:hidden}.details_tB_N[data-collapsed=false].isBrowser_H34u>summary:before,.details_tB_N[open]:not(.isBrowser_H34u)>summary:before,.menu__list-item--collapsed .menu__caret:before,.menu__list-item--collapsed .menu__link--sublist:after{transform:rotate(90deg)}.menu__list-item-collapsible{display:flex;flex-wrap:wrap;position:relative}.menu__caret:hover,.menu__link:hover,.menu__list-item-collapsible--active,.menu__list-item-collapsible:hover{background:var(--ifm-menu-color-background-hover)}.menu__list-item-collapsible .menu__link--active,.menu__list-item-collapsible .menu__link:hover{background:none!important}.menu__caret,.menu__link{align-items:center;display:flex}.navbar-sidebar,.navbar-sidebar__backdrop{opacity:0;transition-duration:var(--ifm-transition-fast);transition-timing-function:ease-in-out;bottom:0;top:0;visibility:hidden;left:0}.menu__link{color:var(--ifm-menu-color);flex:1;line-height:1.25}.menu__link:hover{color:var(--ifm-menu-color);text-decoration:none}.menu__caret:before,.menu__link--sublist-caret:after{height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast) linear;width:1.25rem;filter:var(--ifm-menu-link-sublist-icon-filter);content:""}.menu__link--sublist-caret:after{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem;margin-left:auto;min-width:1.25rem}.menu__link--active,.menu__link--active:hover{color:var(--ifm-menu-color-active)}.navbar__brand,.navbar__link{color:var(--ifm-navbar-link-color)}.menu__link--active:not(.menu__link--sublist){background-color:var(--ifm-menu-color-background-active)}.menu__caret:before{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem}.navbar--dark,html[data-theme=dark]{--ifm-menu-link-sublist-icon-filter:invert(100%) sepia(94%) saturate(17%) hue-rotate(223deg) brightness(104%) contrast(98%)}.navbar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-navbar-shadow);height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.feelback-btn.active>.feelback-icon.active,.navbar,.navbar>.container,.navbar>.container-fluid{display:flex}.navbar--fixed-top{position:sticky;top:0;z-index:var(--ifm-z-index-fixed)}.navbar__inner{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.navbar__brand{align-items:center;display:flex;margin-right:1rem;min-width:0}.navbar__brand:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.announcementBarContent_QTMR,.navbar__title{flex:1 1 auto}.navbar__toggle{display:none;margin-right:.5rem}.navbar__logo{flex:0 0 auto;height:2rem;margin-right:.5rem}.navbar__items{align-items:center;display:flex;flex:1;min-width:0}.navbar__items--center{flex:0 0 auto}.navbar__items--center .navbar__brand{margin:0}.navbar__items--center+.navbar__items--right{flex:1}.navbar__items--right{flex:0 0 auto;justify-content:flex-end}.navbar__items--right>:last-child{padding-right:0}.navbar__item{display:inline-block;padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.navbar__link--active,.navbar__link:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.navbar--dark,.navbar--primary{--ifm-menu-color:var(--ifm-color-gray-300);--ifm-navbar-link-color:var(--ifm-color-gray-100);--ifm-navbar-search-input-background-color:#ffffff1a;--ifm-navbar-search-input-placeholder-color:#ffffff80;color:var(--ifm-color-white)}.navbar--dark{--ifm-navbar-background-color:#242526;--ifm-menu-color-background-active:#ffffff0d;--ifm-navbar-search-input-color:var(--ifm-color-white)}.navbar--primary{--ifm-navbar-background-color:var(--ifm-color-primary);--ifm-navbar-link-hover-color:var(--ifm-color-white);--ifm-menu-color-active:var(--ifm-color-white);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-500)}.navbar__search-input{appearance:none;background:var(--ifm-navbar-search-input-background-color) var(--ifm-navbar-search-input-icon) no-repeat .75rem center/1rem 1rem;border:none;border-radius:2rem;color:var(--ifm-navbar-search-input-color);cursor:text;display:inline-block;font-size:1rem;height:2rem;padding:0 .5rem 0 2.25rem;width:12.5rem}.navbar__search-input::placeholder{color:var(--ifm-navbar-search-input-placeholder-color)}.navbar-sidebar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-global-shadow-md);position:fixed;transform:translate3d(-100%,0,0);transition-property:opacity,visibility,transform;width:var(--ifm-navbar-sidebar-width)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar__items{transform:translateZ(0)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar--show .navbar-sidebar__backdrop{opacity:1;visibility:visible}.navbar-sidebar__backdrop{background-color:#0009;position:fixed;right:0;transition-property:opacity,visibility}.navbar-sidebar__brand{align-items:center;box-shadow:var(--ifm-navbar-shadow);display:flex;flex:1;height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.navbar-sidebar__items{display:flex;height:calc(100% - var(--ifm-navbar-height));transition:transform var(--ifm-transition-fast) ease-in-out}.navbar-sidebar__items--show-secondary{transform:translate3d(calc((var(--ifm-navbar-sidebar-width))*-1),0,0)}.navbar-sidebar__item{flex-shrink:0;padding:.5rem;width:calc(var(--ifm-navbar-sidebar-width))}.navbar-sidebar__back{background:var(--ifm-menu-color-background-active);font-size:15px;font-weight:var(--ifm-button-font-weight);margin:0 0 .2rem -.5rem;padding:.6rem 1.5rem;position:relative;text-align:left;top:-.5rem;width:calc(100% + 1rem)}.navbar-sidebar__close{display:flex;margin-left:auto}.pagination{column-gap:var(--ifm-pagination-page-spacing);display:flex;font-size:var(--ifm-pagination-font-size);padding-left:0}.pagination--sm{--ifm-pagination-font-size:0.8rem;--ifm-pagination-padding-horizontal:0.8rem;--ifm-pagination-padding-vertical:0.2rem}.pagination--lg{--ifm-pagination-font-size:1.2rem;--ifm-pagination-padding-horizontal:1.2rem;--ifm-pagination-padding-vertical:0.3rem}.pagination__item{display:inline-flex}.pagination__item>span{padding:var(--ifm-pagination-padding-vertical)}.pagination__item--active .pagination__link{color:var(--ifm-pagination-color-active)}.pagination__item--active .pagination__link,.pagination__item:not(.pagination__item--active):hover .pagination__link{background:var(--ifm-pagination-item-active-background)}.pagination__item--disabled,.pagination__item[disabled]{opacity:.25;pointer-events:none}.pagination__link{border-radius:var(--ifm-pagination-border-radius);color:var(--ifm-font-color-base);display:inline-block;padding:var(--ifm-pagination-padding-vertical) var(--ifm-pagination-padding-horizontal);transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination__link:hover{text-decoration:none}.pagination-nav{display:grid;grid-gap:var(--ifm-spacing-horizontal);gap:var(--ifm-spacing-horizontal);grid-template-columns:repeat(2,1fr)}.pagination-nav__link{border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-pagination-nav-border-radius);display:block;height:100%;line-height:var(--ifm-heading-line-height);padding:var(--ifm-global-spacing);transition:border-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination-nav__link:hover{border-color:var(--ifm-pagination-nav-color-hover);text-decoration:none}.pagination-nav__link--next{grid-column:2/3;text-align:right}.pagination-nav__label{font-size:var(--ifm-h4-font-size);font-weight:var(--ifm-heading-font-weight);word-break:break-word}.pagination-nav__link--prev .pagination-nav__label:before{content:"« "}.pagination-nav__link--next .pagination-nav__label:after{content:" »"}.pagination-nav__sublabel{color:var(--ifm-color-content-secondary);font-size:var(--ifm-h5-font-size);font-weight:var(--ifm-font-weight-semibold);margin-bottom:.25rem}.pills__item,.tabs{font-weight:var(--ifm-font-weight-bold)}.pills{display:flex;gap:var(--ifm-pills-spacing);padding-left:0}.pills__item{border-radius:.5rem;cursor:pointer;display:inline-block;padding:.25rem 1rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pills__item--active{color:var(--ifm-pills-color-active)}.pills__item--active,.pills__item:not(.pills__item--active):hover{background:var(--ifm-pills-color-background-active)}.pills--block{justify-content:stretch}.pills--block .pills__item{flex-grow:1;text-align:center}.tabs{color:var(--ifm-tabs-color);display:flex;margin-bottom:0;overflow-x:auto;padding-left:0}.tabs__item{border-bottom:3px solid #0000;border-radius:var(--ifm-global-radius);cursor:pointer;display:inline-flex;padding:var(--ifm-tabs-padding-vertical) var(--ifm-tabs-padding-horizontal);transition:background-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs__item--active{border-bottom-color:var(--ifm-tabs-color-active-border);border-bottom-left-radius:0;border-bottom-right-radius:0;color:var(--ifm-tabs-color-active)}.tabs__item:hover{background-color:var(--ifm-hover-overlay)}.tabs--block{justify-content:stretch}.tabs--block .tabs__item{flex-grow:1;justify-content:center}html[data-theme=dark]{--ifm-color-scheme:dark;--ifm-color-emphasis-0:var(--ifm-color-gray-1000);--ifm-color-emphasis-100:var(--ifm-color-gray-900);--ifm-color-emphasis-200:var(--ifm-color-gray-800);--ifm-color-emphasis-300:var(--ifm-color-gray-700);--ifm-color-emphasis-400:var(--ifm-color-gray-600);--ifm-color-emphasis-600:var(--ifm-color-gray-400);--ifm-color-emphasis-700:var(--ifm-color-gray-300);--ifm-color-emphasis-800:var(--ifm-color-gray-200);--ifm-color-emphasis-900:var(--ifm-color-gray-100);--ifm-color-emphasis-1000:var(--ifm-color-gray-0);--ifm-background-color:#1b1b1d;--ifm-background-surface-color:#242526;--ifm-hover-overlay:#ffffff0d;--ifm-color-content:#e3e3e3;--ifm-color-content-secondary:#fff;--ifm-breadcrumb-separator-filter:invert(64%) sepia(11%) saturate(0%) hue-rotate(149deg) brightness(99%) contrast(95%);--ifm-code-background:#ffffff1a;--ifm-scrollbar-track-background-color:#444;--ifm-scrollbar-thumb-background-color:#686868;--ifm-scrollbar-thumb-hover-background-color:#7a7a7a;--ifm-table-stripe-background:#ffffff12;--ifm-toc-border-color:var(--ifm-color-emphasis-200);--ifm-color-primary-contrast-background:#102445;--ifm-color-primary-contrast-foreground:#ebf2fc;--ifm-color-secondary-contrast-background:#474748;--ifm-color-secondary-contrast-foreground:#fdfdfe;--ifm-color-success-contrast-background:#003100;--ifm-color-success-contrast-foreground:#e6f6e6;--ifm-color-info-contrast-background:#193c47;--ifm-color-info-contrast-foreground:#eef9fd;--ifm-color-warning-contrast-background:#4d3800;--ifm-color-warning-contrast-foreground:#fff8e6;--ifm-color-danger-contrast-background:#4b1113;--ifm-color-danger-contrast-foreground:#ffebec;--docsearch-text-color:#f5f6f7;--docsearch-container-background:#090a11cc;--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 #0304094d;--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.302);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 #494c6a80,0 -4px 8px 0 #0003;--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}#nprogress .bar{background:var(--docusaurus-progress-bar-color);height:2px;left:0;position:fixed;top:0;width:100%;z-index:1031}#nprogress .peg{box-shadow:0 0 10px var(--docusaurus-progress-bar-color),0 0 5px var(--docusaurus-progress-bar-color);height:100%;opacity:1;position:absolute;right:0;transform:rotate(3deg) translateY(-4px);width:100px}.feelback-container,.feelback-style{--highlight:0,0,0;--highlight-opacity:0.08;--border-color:#80808080;--max-width:unset;--bg:#fff;max-width:var(--max-width);position:relative}.feelback-container textarea,.feelback-style textarea{height:120px;padding:.5rem;width:100%}.feelback-container input,.feelback-style input{width:100%}.feelback-container input[type=email],.feelback-container input[type=text],.feelback-style input[type=email],.feelback-style input[type=text]{padding:.5rem}.feelback-container .popup,.feelback-style .popup{background-color:var(--theme-bg,var(--bg));border:1px solid var(--border-color);border-radius:4px;display:none;position:absolute;z-index:2}.feelback-container .dialog,.feelback-style .dialog{background-color:#00004226;bottom:0;left:0;position:fixed;right:0;top:0;z-index:99999}.feelback-btn.active,.feelback-btn.btn-reaction-picker{background-color:rgba(var(--highlight),var(--highlight-opacity))}.feelback-container .dialog>:first-child,.feelback-style .dialog>:first-child{margin:10% auto;max-width:480px}.feelback-container .dialog .content,.feelback-style .dialog .content{background-color:#f3f9ff;border:1px solid #7d8792;border-radius:6px;padding:1.5rem}.feelback-container .hidden,.feelback-style .hidden{display:none}.feelback-container.bordered .content,.feelback-style.bordered .content{border:1px solid var(--border-color);border-radius:1rem;padding:.5rem .75rem}.feelback-container.width-md,.feelback-style.width-md{--max-width:440px;margin:0 auto}.feelback-container.width-sm,.feelback-style.width-sm{--max-width:320px;margin:0 auto}.feelback-container.align-center .feelback-q,.feelback-style.align-center .feelback-q{justify-content:center}.feelback-btn,.feelback-q{align-items:center;display:flex}.feelback-q{gap:1.2em;padding-inline:.4em}.feelback-a{line-height:32px;padding-inline:.4em}.feelback-form>.content{display:flex;flex-direction:column;gap:.3rem}.feelback-form .form-title{font-size:1.1em;font-weight:700}.feelback-buttons{align-items:baseline;display:flex;gap:2px}.feelback-buttons.with-count{gap:6px}.feelback-buttons.hide-zero .feelback-btn:has(.feelback-count:not([data-feelback-count-value]),.feelback-count[data-feelback-count-value="0"]),.feelback-buttons.hide-zero .feelback-btn:not(:has(.feelback-count)){display:none}.feelback-buttons.attached{gap:0}.feelback-buttons.align-end{flex-direction:row-reverse}.feelback-buttons.large>.feelback-btn{font-size:1.25em}.feelback-buttons .label{font-size:.9em;padding-inline:.25em}.feelback-radio-group{border:none;margin:0;padding:0}.feelback-radio-item{align-items:flex-start;display:flex;flex-direction:row;padding-bottom:.25rem;padding-top:.25rem}.feelback-radio-item input[type=radio]{display:inline-block;flex-shrink:0;margin:.5rem;width:unset}.feelback-radio-item label{cursor:pointer;display:block}.feelback-radio-item .feelback-text{font-size:.9em}.feelback-icon{display:flex;line-height:1em}.feelback-count{font-weight:700;padding-inline-start:.25em}.feelback-btn.active>.feelback-icon.inactive,.feelback-btn>.active,.feelback-count.hide-zero:not([data-feelback-count-value]),.feelback-count.hide-zero[data-feelback-count-value="0"]{display:none}.feelback-btn{background-color:initial;border:0;border-radius:.15em;cursor:pointer;font-size:1em;height:32px;justify-content:center;min-width:32px;padding:0 .4em;text-align:center}.feelback-btn.disabled{cursor:default}.feelback-btn.active>.feelback-icon{opacity:1;transform:scale(1.3)}.feelback-btn:hover:not(.disabled){background-color:rgba(var(--highlight),calc(var(--highlight-opacity)*2))}.feelback-btn:hover:not(.disabled)>.feelback-icon{transform:scale(1.3);transition:.35s cubic-bezier(.35,1.23,.5,1.37)}.feelback-btn.btn-reaction-picker{border:1px solid #80808080;border-radius:100%}.feelback-btn.btn-reaction-picker .feelback-icon{transform:scale(1.15)}.feelback-btn.btn-action{border:1px solid;font-size:.9em;min-width:80px;padding-inline:.5rem}.theme-dark .feelback-container,.theme-dark .feelback-style,html.dark .feelback-container,html.dark .feelback-style,html[data-theme=dark] .feelback-container,html[data-theme=dark] .feelback-style{--highlight:255,255,255;--highlight-opacity:0.15;--bg:#0000;--border-color:#fff6}.theme-dark .feelback-container .dialog .content,.theme-dark .feelback-style .dialog .content,html.dark .feelback-container .dialog .content,html.dark .feelback-style .dialog .content,html[data-theme=dark] .feelback-container .dialog .content,html[data-theme=dark] .feelback-style .dialog .content{background:#111c29}[data-theme=dark]{--ifm-color-primary:#33b4b7;--ifm-color-primary-dark:#2ea2a5;--ifm-color-primary-darker:#2b999c;--ifm-color-primary-darkest:#247e80;--ifm-color-primary-light:#39c5c8;--ifm-color-primary-lighter:#43c7ca;--ifm-color-primary-lightest:#5ed0d2;--docusaurus-highlighted-code-line-bg:#0000004d;--ifm-background-color:#111;--ifm-code-background:#e90cd6}.footer--dark{--ifm-footer-background-color:#303846;--ifm-footer-color:var(--ifm-footer-link-color);--ifm-footer-link-color:var(--ifm-color-secondary);--ifm-footer-title-color:var(--ifm-color-white);background-color:#247e80}.feelback-container .feelback-btn{background-color:#1a8870;color:#fff}.feelback-container textarea{border:1px solid #ccc;border-radius:4px;padding:.5rem}.tag_k82B{border:1px solid var(--docusaurus-tag-list-border);transition:border var(--ifm-transition-fast)}.tag_k82B:hover{--docusaurus-tag-list-border:var(--ifm-link-color);text-decoration:none}.tagRegular_RKsa{border-radius:var(--ifm-global-radius);font-size:90%;padding:.2rem .5rem .3rem}.tagWithCount_gd8b{align-items:center;border-left:0;display:flex;padding:0 .5rem 0 1rem;position:relative}.tagWithCount_gd8b:after,.tagWithCount_gd8b:before{border:1px solid var(--docusaurus-tag-list-border);content:"";position:absolute;top:50%;transition:inherit}.tagWithCount_gd8b:before{border-bottom:0;border-right:0;height:1.18rem;right:100%;transform:translate(50%,-50%) rotate(-45deg);width:1.18rem}.tagWithCount_gd8b:after{border-radius:50%;height:.5rem;left:0;transform:translateY(-50%);width:.5rem}.tagWithCount_gd8b span{background:var(--ifm-color-secondary);border-radius:var(--ifm-global-radius);color:var(--ifm-color-black);font-size:.7rem;line-height:1.2;margin-left:.3rem;padding:.1rem .4rem}.tags_hccf{display:inline}.tag_SEVC{display:inline-block;margin:0 .4rem .5rem 0}.iconEdit_TzD1{margin-right:.3em;vertical-align:sub}.lastUpdated_pFSY{font-size:smaller;font-style:italic;margin-top:.2rem}.tocCollapsibleButton_ZlKc{align-items:center;display:flex;font-size:inherit;justify-content:space-between;padding:.4rem .8rem;width:100%}.DocSearch-Button,.DocSearch-Button-Container{align-items:center;display:flex}.tocCollapsibleButton_ZlKc:after{background:var(--ifm-menu-link-sublist-icon) 50% 50%/2rem 2rem no-repeat;content:"";filter:var(--ifm-menu-link-sublist-icon-filter);height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast);width:1.25rem}.tocCollapsibleButtonExpanded_BLGs:after,.tocCollapsibleExpanded_Jf3p{transform:none}.tocCollapsible_Iu5z{background-color:var(--ifm-menu-color-background-active);border-radius:var(--ifm-global-radius);margin:1rem 0}.tocCollapsibleContent_WHwq>ul{border-left:none;border-top:1px solid var(--ifm-color-emphasis-300);font-size:15px;padding:.2rem 0}.tocCollapsibleContent_WHwq ul li{margin:.4rem .8rem}.tocCollapsibleContent_WHwq a{display:block}.tableOfContents_L09I{max-height:calc(100vh - var(--ifm-navbar-height) - 2rem);overflow-y:auto;position:sticky;top:calc(var(--ifm-navbar-height) + 1rem)}.backToTopButton_D3xs{background-color:var(--ifm-color-emphasis-200);border-radius:50%;bottom:1.3rem;box-shadow:var(--ifm-global-shadow-lw);height:3rem;opacity:0;position:fixed;right:1.3rem;transform:scale(0);transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default);visibility:hidden;width:3rem;z-index:calc(var(--ifm-z-index-fixed) - 1)}.backToTopButton_D3xs:after{background-color:var(--ifm-color-emphasis-1000);content:" ";display:inline-block;height:100%;-webkit-mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;width:100%}.backToTopButtonShow_turi{opacity:1;transform:scale(1);visibility:visible}.DocSearch-Button{background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;font-weight:500;height:36px;justify-content:space-between;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:0}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Hit-Tree,.DocSearch-Hit-action,.DocSearch-Hit-icon,.DocSearch-Reset{stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border:0;border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 2px;position:relative;top:-1px;width:20px}.DocSearch-Button-Key--pressed{box-shadow:var(--docsearch-key-pressed-shadow);transform:translate3d(0,1px,0)}.DocSearch--active{overflow:hidden!important}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Hit[aria-selected=true] mark,.content_l8pu a{text-decoration:underline}.DocSearch-Link{appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{appearance:none;background:#0000;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:0;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Cancel,.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator,.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset{animation:.1s ease-in forwards a;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0}.DocSearch-Help,.DocSearch-HitsFooter,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:#0000}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}.DocSearch-Hit--deleting{opacity:0;transition:.25s linear}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:.25s linear .25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}#__docusaurus-base-url-issue-banner-container,.docSidebarContainer_YiSe,.navbarSearchContainer_g_GZ:empty,.sidebarLogo_N92F,.themedComponent_j_Bc,[data-theme=dark] .lightToggleIcon_ywgQ,[data-theme=light] .darkToggleIcon_N8aW,html[data-announcement-bar-initially-dismissed=true] .announcementBar_D8Uv,svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:0;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands li,.DocSearch-Commands-Key{align-items:center;display:flex}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{background:var(--docsearch-key-gradient);border:0;border-radius:2px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@keyframes a{0%{opacity:0}to{opacity:1}}.DocSearch-Button{margin:0;transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.DocSearch-Container,.skipToContent_kCPx{z-index:calc(var(--ifm-z-index-fixed) + 1)}.skipToContent_kCPx{background-color:var(--ifm-background-surface-color);color:var(--ifm-color-emphasis-900);left:100%;padding:calc(var(--ifm-global-spacing)/2) var(--ifm-global-spacing);position:fixed;top:1rem}.skipToContent_kCPx:focus{box-shadow:var(--ifm-global-shadow-md);left:1rem}.closeButton_vmmX{line-height:0;padding:0}.content_l8pu{font-size:85%;padding:5px 0;text-align:center}.content_l8pu a{color:inherit}.announcementBar_D8Uv{align-items:center;background-color:var(--ifm-color-white);border-bottom:1px solid var(--ifm-color-emphasis-100);color:var(--ifm-color-black);display:flex;height:var(--docusaurus-announcement-bar-height)}.announcementBarPlaceholder_F2yB{flex:0 0 10px}.announcementBarClose_o2QS{align-self:stretch;flex:0 0 30px}.toggle_XqBQ{height:2rem;width:2rem}.toggleButton_XdRz{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;transition:background var(--ifm-transition-fast);width:100%}.toggleButton_XdRz:hover{background:var(--ifm-color-emphasis-200)}.toggleButtonDisabled_XFG1{cursor:not-allowed}.darkNavbarColorModeToggle_TZYF:hover{background:var(--ifm-color-gray-800)}[data-theme=dark] .themedComponent--dark_H8hH,[data-theme=light] .themedComponent--light_Wr5c,html:not([data-theme]) .themedComponent--light_Wr5c{display:initial}[data-theme=dark]:root{--docusaurus-collapse-button-bg:#ffffff0d;--docusaurus-collapse-button-bg-hover:#ffffff1a}.collapseSidebarButton_P8bN{display:none;margin:0}.iconExternalLink_Utf3{margin-left:.3rem}.buttons_AeoN,.menuExternalLink_eT5t{align-items:center}.docMainContainer_V8YA,.docRoot_Mm_o{display:flex;width:100%}.docsWrapper_kprj{display:flex;flex:1 0 auto}.dropdownNavbarItemMobile_v3Fr{cursor:pointer}.iconLanguage_yTGm{margin-right:5px;vertical-align:text-bottom}.navbarHideable_LLgI{transition:transform var(--ifm-transition-fast) ease}.navbarHidden_kjsb{transform:translate3d(0,calc(-100% - 2px),0)}.errorBoundaryError_aoN1{color:red;white-space:pre-wrap}.errorBoundaryFallback_bIw_{color:red;padding:.55rem}.buttonGroup_ih1O button,.codeBlockContainer_CwxF{background:var(--prism-background-color);color:var(--prism-color)}.footerLogoLink_Xkl5{opacity:.5;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.footerLogoLink_Xkl5:hover,.hash-link:focus,:hover>.hash-link{opacity:1}body:not(.navigation-with-keyboard) :not(input):focus{outline:0}.anchorWithStickyNavbar__Wwf{scroll-margin-top:calc(var(--ifm-navbar-height) + .5rem)}.anchorWithHideOnScrollNavbar_ntRu{scroll-margin-top:.5rem}.hash-link{opacity:0;padding-left:.5rem;transition:opacity var(--ifm-transition-fast);-webkit-user-select:none;user-select:none}.hash-link:before{content:"#"}.mainWrapper_LaiY{display:flex;flex:1 0 auto;flex-direction:column}.docusaurus-mt-lg{margin-top:3rem}#__docusaurus{display:flex;flex-direction:column;min-height:100%}.codeBlockContainer_CwxF{border-radius:var(--ifm-code-border-radius);box-shadow:var(--ifm-global-shadow-lw);margin-bottom:var(--ifm-leading)}.codeBlockContent_JR_y{border-radius:inherit;direction:ltr;position:relative}.codeBlockTitle_KZer{border-bottom:1px solid var(--ifm-color-emphasis-300);border-top-left-radius:inherit;border-top-right-radius:inherit;font-size:var(--ifm-code-font-size);font-weight:500;padding:.75rem var(--ifm-pre-padding)}.codeBlock_MEXK{--ifm-pre-background:var(--prism-background-color);margin:0;padding:0}.codeBlockTitle_KZer+.codeBlockContent_JR_y .codeBlock_MEXK{border-top-left-radius:0;border-top-right-radius:0}.codeBlockLines_hz4K{float:left;font:inherit;min-width:100%;padding:var(--ifm-pre-padding)}.codeBlockLinesWithNumbering_f03B{display:table;padding:var(--ifm-pre-padding) 0}.buttonGroup_ih1O{column-gap:.2rem;display:flex;position:absolute;right:calc(var(--ifm-pre-padding)/2);top:calc(var(--ifm-pre-padding)/2)}.buttonGroup_ih1O button{align-items:center;border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-global-radius);display:flex;line-height:0;opacity:0;padding:.4rem;transition:opacity var(--ifm-transition-fast) ease-in-out}.buttonGroup_ih1O button:focus-visible,.buttonGroup_ih1O button:hover{opacity:1!important}.theme-code-block:hover .buttonGroup_ih1O button{opacity:.4}:where(:root){--docusaurus-highlighted-code-line-bg:#484d5b}:where([data-theme=dark]){--docusaurus-highlighted-code-line-bg:#646464}.theme-code-block-highlighted-line{background-color:var(--docusaurus-highlighted-code-line-bg);display:block;margin:0 calc(var(--ifm-pre-padding)*-1);padding:0 var(--ifm-pre-padding)}.codeLine_fqkp{counter-increment:a;display:table-row}.codeLineNumber_Czni{background:var(--ifm-pre-background);display:table-cell;left:0;overflow-wrap:normal;padding:0 var(--ifm-pre-padding);position:sticky;text-align:right;width:1%}.codeLineNumber_Czni:before{content:counter(a);opacity:.4}.codeLineContent_Xi7h{padding-right:var(--ifm-pre-padding)}.theme-code-block:hover .copyButtonCopied_lh4q{opacity:1!important}.copyButtonIcons_v6Sj{height:1.125rem;position:relative;width:1.125rem}.copyButtonIcon_FPWM,.copyButtonSuccessIcon_Jve4{left:0;position:absolute;top:0;fill:currentColor;height:inherit;opacity:inherit;transition:all var(--ifm-transition-fast) ease;width:inherit}.copyButtonSuccessIcon_Jve4{color:#00d600;left:50%;opacity:0;top:50%;transform:translate(-50%,-50%) scale(.33)}.copyButtonCopied_lh4q .copyButtonIcon_FPWM{opacity:0;transform:scale(.33)}.copyButtonCopied_lh4q .copyButtonSuccessIcon_Jve4{opacity:1;transform:translate(-50%,-50%) scale(1);transition-delay:75ms}.wordWrapButtonIcon_Y7KL{height:1.2rem;width:1.2rem}.details_tB_N{--docusaurus-details-summary-arrow-size:0.38rem;--docusaurus-details-transition:transform 200ms ease;--docusaurus-details-decoration-color:grey}.details_tB_N>summary{cursor:pointer;list-style:none;padding-left:1rem;position:relative}.details_tB_N>summary::-webkit-details-marker{display:none}.details_tB_N>summary:before{border-color:#0000 #0000 #0000 var(--docusaurus-details-decoration-color);border-style:solid;border-width:var(--docusaurus-details-summary-arrow-size);content:"";left:0;position:absolute;top:.45rem;transform:rotate(0);transform-origin:calc(var(--docusaurus-details-summary-arrow-size)/2) 50%;transition:var(--docusaurus-details-transition)}.collapsibleContent_zY8v{border-top:1px solid var(--docusaurus-details-decoration-color);margin-top:1rem;padding-top:1rem}.details_qVdL{--docusaurus-details-decoration-color:var(--ifm-alert-border-color);--docusaurus-details-transition:transform var(--ifm-transition-fast) ease;border:1px solid var(--ifm-alert-border-color);margin:0 0 var(--ifm-spacing-vertical)}.containsTaskList_N817{list-style:none}:not(.containsTaskList_N817>li)>.containsTaskList_N817{padding-left:0}.img_gJjv{height:auto}.admonition_htFo{margin-bottom:1em}.admonitionHeading_oO7N{font:var(--ifm-heading-font-weight) var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family)}.admonitionHeading_oO7N:not(:last-child){margin-bottom:.3rem}.admonitionHeading_oO7N code{text-transform:none}.admonitionIcon_mQHU{display:inline-block;margin-right:.4em;vertical-align:middle}.admonitionIcon_mQHU svg{display:inline-block;height:1.6em;width:1.6em;fill:var(--ifm-alert-foreground-color)}.breadcrumbHomeIcon_ElY6{height:1.1rem;position:relative;top:1px;vertical-align:top;width:1.1rem}.breadcrumbsContainer_LRow{--ifm-breadcrumb-size-multiplier:0.8;margin-bottom:.8rem}.searchQueryInput_Vtre,.searchVersionInput_pp72{background:var(--docsearch-searchbox-focus-background);border:2px solid var(--ifm-toc-border-color);border-radius:var(--ifm-global-radius);color:var(--docsearch-text-color);font:var(--ifm-font-size-base) var(--ifm-font-family-base);margin-bottom:.5rem;padding:.8rem;transition:border var(--ifm-transition-fast) ease;width:100%}.searchQueryInput_Vtre:focus,.searchVersionInput_pp72:focus{border-color:var(--docsearch-primary-color);outline:0}.searchQueryInput_Vtre::placeholder{color:var(--docsearch-muted-color)}.searchResultsColumn_nXW0{font-size:.9rem;font-weight:700}.algoliaLogo_talY{max-width:150px}.algoliaLogoPathFill_XktH{fill:var(--ifm-font-color-base)}.searchResultItem_dbGA{border-bottom:1px solid var(--ifm-toc-border-color);padding:1rem 0}.searchResultItemHeading_E8lx{font-weight:400;margin-bottom:0}.searchResultItemPath_IklF{color:var(--ifm-color-content-secondary);font-size:.8rem;--ifm-breadcrumb-separator-size-multiplier:1}.searchResultItemSummary_HO8W{font-style:italic;margin:.5rem 0 0}.loadingSpinner_vJGe{animation:1s linear infinite b;border:.4em solid #eee;border-radius:50%;border-top:.4em solid var(--ifm-color-primary);height:3rem;margin:0 auto;width:3rem}@keyframes b{to{transform:rotate(1turn)}}.loader_jW2z{margin-top:2rem}.search-result-match{background:#ffd78e40;color:var(--docsearch-hit-color);padding:.09em 0}.features_t9lD{align-items:center;display:flex;padding:2rem 0;width:100%}.buttons_AeoN,.headerContainer_Dcc3,.heroSubtitle_jFu1{justify-content:center;display:flex}.featureSvg_GfXr{height:200px;width:200px}.heroBanner_qdFl{overflow:hidden;padding:4rem 0 2rem;position:relative;text-align:center}.headerContainer_Dcc3{padding:2rem 0;width:100%}.heroSubtitle_jFu1,.textPadding_Bwvp{padding:10px;width:1000px}.textPadding_Bwvp{border-left:5px solid #ccc;font-style:italic}.bodyContainer_uay2{display:flex;justify-content:center;padding:0 0 4rem;width:100%}@media (min-width:997px){.collapseSidebarButton_P8bN,.expandButton_GQD9{background-color:var(--docusaurus-collapse-button-bg)}.lastUpdated_pFSY{text-align:right}.tocMobile_c8ki{display:none}:root{--docusaurus-announcement-bar-height:30px}.announcementBarClose_o2QS,.announcementBarPlaceholder_F2yB{flex-basis:50px}.collapseSidebarButton_P8bN{border:1px solid var(--ifm-toc-border-color);border-radius:0;bottom:0;display:block!important;height:40px;position:sticky}.collapseSidebarButtonIcon_KlEu{margin-top:4px;transform:rotate(180deg)}.expandButtonIcon_Zdxk,[dir=rtl] .collapseSidebarButtonIcon_KlEu{transform:rotate(0)}.collapseSidebarButton_P8bN:focus,.collapseSidebarButton_P8bN:hover,.expandButton_GQD9:focus,.expandButton_GQD9:hover{background-color:var(--docusaurus-collapse-button-bg-hover)}.menuHtmlItem_pJHL{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu_oMvt{flex-grow:1;padding:.5rem}@supports (scrollbar-gutter:stable){.menu_oMvt{padding:.5rem 0 .5rem .5rem;scrollbar-gutter:stable}}.menuWithAnnouncementBar__b0W{margin-bottom:var(--docusaurus-announcement-bar-height)}.sidebar_zRsu{display:flex;flex-direction:column;height:100%;padding-top:var(--ifm-navbar-height);width:var(--doc-sidebar-width)}.sidebarWithHideableNavbar_R1fS{padding-top:0}.sidebarHidden_nLoz{opacity:0;visibility:hidden}.sidebarLogo_N92F{align-items:center;color:inherit!important;display:flex!important;margin:0 var(--ifm-navbar-padding-horizontal);max-height:var(--ifm-navbar-height);min-height:var(--ifm-navbar-height);text-decoration:none!important}.sidebarLogo_N92F img{height:2rem;margin-right:.5rem}.expandButton_GQD9{align-items:center;display:flex;height:100%;justify-content:center;position:absolute;right:0;top:0;transition:background-color var(--ifm-transition-fast) ease;width:100%}[dir=rtl] .expandButtonIcon_Zdxk{transform:rotate(180deg)}.docSidebarContainer_YiSe{border-right:1px solid var(--ifm-toc-border-color);clip-path:inset(0);display:block;margin-top:calc(var(--ifm-navbar-height)*-1);transition:width var(--ifm-transition-fast) ease;width:var(--doc-sidebar-width);will-change:width}.docSidebarContainerHidden_K0Yj{cursor:pointer;width:var(--doc-sidebar-hidden-width)}.sidebarViewport_GSYG{height:100%;max-height:100vh;position:sticky;top:0}.docMainContainer_V8YA{flex-grow:1;max-width:calc(100% - var(--doc-sidebar-width))}.docMainContainerEnhanced__Qfe{max-width:calc(100% - var(--doc-sidebar-hidden-width))}.docItemWrapperEnhanced_v_MZ{max-width:calc(var(--ifm-container-width) + var(--doc-sidebar-width))!important}.navbarSearchContainer_g_GZ{padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.docItemCol_XRsm{max-width:75%!important}}@media (min-width:1440px){.container{max-width:var(--ifm-container-width-xl)}}@media (max-width:996px){.col{--ifm-col-width:100%;flex-basis:var(--ifm-col-width);margin-left:0}.footer{--ifm-footer-padding-horizontal:0}.colorModeToggle_AfdU,.footer__link-separator,.navbar__item,.tableOfContents_L09I{display:none}.footer__col{margin-bottom:calc(var(--ifm-spacing-vertical)*3)}.footer__link-item{display:block}.hero{padding-left:0;padding-right:0}.navbar>.container,.navbar>.container-fluid{padding:0}.navbar__toggle{display:inherit}.navbar__search-input{width:9rem}.pills--block,.tabs--block{flex-direction:column}.docItemContainer_CWlt{padding:0 .3rem}.navbarSearchContainer_g_GZ{position:absolute;right:var(--ifm-navbar-padding-horizontal)}}@media only screen and (max-width:996px){.searchQueryColumn_zOaR,.searchResultsColumn_nXW0{max-width:60%!important}.searchLogoColumn_c6ut,.searchVersionColumn_YFuH{max-width:40%!important}.searchLogoColumn_c6ut{padding-left:0!important}}@media screen and (max-width:996px){.heroBanner_qdFl{padding:2rem}}@media (max-width:768px){.feelback-q{justify-content:space-between}.DocSearch-Button-Keys,.DocSearch-Button-Placeholder,.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%;max-height:calc(var(--docsearch-vh,1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh,1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh,1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Cancel{appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:0;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}}@media (max-width:576px){.markdown h1:first-child{--ifm-h1-font-size:2rem}.markdown>h2{--ifm-h2-font-size:1.5rem}.markdown>h3{--ifm-h3-font-size:1.25rem}}@media screen and (max-width:576px){.searchQueryColumn_zOaR{max-width:100%!important}.searchVersionColumn_YFuH{max-width:100%!important;padding-left:var(--ifm-spacing-horizontal)!important}}@media (hover:hover){.backToTopButton_D3xs:hover{background-color:var(--ifm-color-emphasis-300)}}@media (pointer:fine){.thin-scrollbar{scrollbar-width:thin}.thin-scrollbar::-webkit-scrollbar{height:var(--ifm-scrollbar-size);width:var(--ifm-scrollbar-size)}.thin-scrollbar::-webkit-scrollbar-track{background:var(--ifm-scrollbar-track-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb{background:var(--ifm-scrollbar-thumb-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--ifm-scrollbar-thumb-hover-background-color)}}@media (prefers-reduced-motion:reduce){:root{--ifm-transition-fast:0ms;--ifm-transition-slow:0ms}}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit--deleting,.DocSearch-Hit--favoriting{transition:none}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}@media print{.announcementBar_D8Uv,.footer,.menu,.navbar,.pagination-nav,.table-of-contents,.tocMobile_c8ki{display:none}.tabs{page-break-inside:avoid}.codeBlockLines_hz4K{white-space:pre-wrap}} \ No newline at end of file diff --git a/assets/js/0018adbe.02517d60.js b/assets/js/0018adbe.85319337.js similarity index 96% rename from assets/js/0018adbe.02517d60.js rename to assets/js/0018adbe.85319337.js index 13553142..f0b6fde9 100644 --- a/assets/js/0018adbe.02517d60.js +++ b/assets/js/0018adbe.85319337.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6940],{9578:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>d,frontMatter:()=>r,metadata:()=>l,toc:()=>c});var n=i(6070),o=i(5710);const r={id:"quickstart",title:"Quickstart"},a=void 0,l={id:"build/quickstart",title:"Quickstart",description:"Welcome to the exciting world of application development in the decentralized",source:"@site/docs/04-build/00-quickstart.mdx",sourceDirName:"04-build",slug:"/build/quickstart",permalink:"/build/quickstart",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:0,frontMatter:{id:"quickstart",title:"Quickstart"},sidebar:"tutorialSidebar",previous:{title:"Example Application",permalink:"/getting-started/example-app"},next:{title:"Protocol SDK",permalink:"/build/protocol-sdks/protocol-sdk"}},s={},c=[{value:"Protocol SDK",id:"protocol-sdk",level:2},{value:"Client SDKs",id:"client-sdks",level:2},{value:"Publish app",id:"publish-app",level:2},{value:"Building app from template",id:"building-app-from-template",level:2}];function p(e){const t={a:"a",blockquote:"blockquote",code:"code",em:"em",h2:"h2",li:"li",ol:"ol",p:"p",strong:"strong",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.p,{children:"Welcome to the exciting world of application development in the decentralized\nspace! As a developer, you have the opportunity to build cutting-edge\napplications using our comprehensive suite of tools. Start by shaping the core\napplication logic with our Protocol SDK and then bring your application to life\nby crafting intuitive user interfaces with the Client SDK. Join our community of\ndevelopers and start creating powerful decentralized applications that can make\na significant impact in the tech world."}),"\n",(0,n.jsx)(t.p,{children:"Application development consists of two main parts:"}),"\n",(0,n.jsxs)(t.ol,{children:["\n",(0,n.jsx)(t.li,{children:"building the application logic with the Protocol SDK"}),"\n",(0,n.jsx)(t.li,{children:"building the application client interface with the Client SDK"}),"\n"]}),"\n",(0,n.jsx)(t.h2,{id:"protocol-sdk",children:"Protocol SDK"}),"\n",(0,n.jsx)(t.p,{children:"The Protocol SDK within the Calimero Network equips developers with tools for\ncreating, testing, and deploying protocols essential for decentralized\napplications (DApps). It features capabilities such as code generation, security\nenhancement, and interoperability support to ensure robust and efficient DApp\noperations. This SDK is crucial for integrating with the Calimero Network's\ncomponents, facilitating seamless updates and versioning critical for DApps in\nfields like decentralized messaging and finance."}),"\n",(0,n.jsx)(t.p,{children:"Currently we have SDK only for rust but in the future we will have SDKs for\nother languages as well."}),"\n",(0,n.jsx)(t.h2,{id:"client-sdks",children:"Client SDKs"}),"\n",(0,n.jsx)(t.p,{children:"The Client SDK includes straightforward tools to help you build your\napplication. For logging in, we provide functions that allow users to\nauthenticate using their wallet credentials, which must be set up as root keys\nin the admin dashboard. This setup ensures that access is both secure and\nstraightforward. For handling data, the SDK supports JSON-RPC for direct data\ntransactions and websockets for live updates. These features are designed to\nmake your development process efficient and effective, allowing you to focus on\ncreating a great user experience."}),"\n",(0,n.jsx)(t.p,{children:"Currently we have SDK only for typescript but in the future we will have SDKs\nfor other languages as well."}),"\n",(0,n.jsx)(t.h2,{id:"publish-app",children:"Publish app"}),"\n",(0,n.jsxs)(t.p,{children:["After you have created your application logic with Rust and your application UI\nwith TypeScript, you can publish your app. Follow instructions in the\n",(0,n.jsx)(t.a,{href:"/build/publish-app",children:"Publish App"})," guide to learn how to publish your app and\nhow users can download and run it."]}),"\n",(0,n.jsx)(t.h2,{id:"building-app-from-template",children:"Building app from template"}),"\n",(0,n.jsxs)(t.p,{children:["We have prepared template repository for you to get started quickly. You can\nfind the template repository\n",(0,n.jsx)(t.a,{href:"https://github.com/calimero-network/core-app-template",children:"here"}),". Repository\ncontains two folders, ",(0,n.jsx)(t.code,{children:"logic"})," and ",(0,n.jsx)(t.code,{children:"app"}),". ",(0,n.jsx)(t.code,{children:"logic"})," folder contains the application\nlogic written in Rust and ",(0,n.jsx)(t.code,{children:"app"})," folder contains the application client interface\nwritten in TypeScript."]}),"\n",(0,n.jsxs)(t.blockquote,{children:["\n",(0,n.jsxs)(t.p,{children:[(0,n.jsx)(t.strong,{children:(0,n.jsx)(t.em,{children:"NOTE:"})})," Logic is still under development and may not be yet published."]}),"\n"]})]})}function d(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(p,{...e})}):p(e)}},5710:(e,t,i)=>{i.d(t,{R:()=>a,x:()=>l});var n=i(758);const o={},r=n.createContext(o);function a(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:a(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6940],{9578:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>d,frontMatter:()=>r,metadata:()=>l,toc:()=>c});var n=i(6070),o=i(8355);const r={id:"quickstart",title:"Quickstart"},a=void 0,l={id:"build/quickstart",title:"Quickstart",description:"Welcome to the exciting world of application development in the decentralized",source:"@site/docs/04-build/00-quickstart.mdx",sourceDirName:"04-build",slug:"/build/quickstart",permalink:"/build/quickstart",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:0,frontMatter:{id:"quickstart",title:"Quickstart"},sidebar:"tutorialSidebar",previous:{title:"Example Application",permalink:"/getting-started/example-app"},next:{title:"Protocol SDK",permalink:"/build/protocol-sdks/protocol-sdk"}},s={},c=[{value:"Protocol SDK",id:"protocol-sdk",level:2},{value:"Client SDKs",id:"client-sdks",level:2},{value:"Publish app",id:"publish-app",level:2},{value:"Building app from template",id:"building-app-from-template",level:2}];function p(e){const t={a:"a",blockquote:"blockquote",code:"code",em:"em",h2:"h2",li:"li",ol:"ol",p:"p",strong:"strong",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.p,{children:"Welcome to the exciting world of application development in the decentralized\nspace! As a developer, you have the opportunity to build cutting-edge\napplications using our comprehensive suite of tools. Start by shaping the core\napplication logic with our Protocol SDK and then bring your application to life\nby crafting intuitive user interfaces with the Client SDK. Join our community of\ndevelopers and start creating powerful decentralized applications that can make\na significant impact in the tech world."}),"\n",(0,n.jsx)(t.p,{children:"Application development consists of two main parts:"}),"\n",(0,n.jsxs)(t.ol,{children:["\n",(0,n.jsx)(t.li,{children:"building the application logic with the Protocol SDK"}),"\n",(0,n.jsx)(t.li,{children:"building the application client interface with the Client SDK"}),"\n"]}),"\n",(0,n.jsx)(t.h2,{id:"protocol-sdk",children:"Protocol SDK"}),"\n",(0,n.jsx)(t.p,{children:"The Protocol SDK within the Calimero Network equips developers with tools for\ncreating, testing, and deploying protocols essential for decentralized\napplications (DApps). It features capabilities such as code generation, security\nenhancement, and interoperability support to ensure robust and efficient DApp\noperations. This SDK is crucial for integrating with the Calimero Network's\ncomponents, facilitating seamless updates and versioning critical for DApps in\nfields like decentralized messaging and finance."}),"\n",(0,n.jsx)(t.p,{children:"Currently we have SDK only for rust but in the future we will have SDKs for\nother languages as well."}),"\n",(0,n.jsx)(t.h2,{id:"client-sdks",children:"Client SDKs"}),"\n",(0,n.jsx)(t.p,{children:"The Client SDK includes straightforward tools to help you build your\napplication. For logging in, we provide functions that allow users to\nauthenticate using their wallet credentials, which must be set up as root keys\nin the admin dashboard. This setup ensures that access is both secure and\nstraightforward. For handling data, the SDK supports JSON-RPC for direct data\ntransactions and websockets for live updates. These features are designed to\nmake your development process efficient and effective, allowing you to focus on\ncreating a great user experience."}),"\n",(0,n.jsx)(t.p,{children:"Currently we have SDK only for typescript but in the future we will have SDKs\nfor other languages as well."}),"\n",(0,n.jsx)(t.h2,{id:"publish-app",children:"Publish app"}),"\n",(0,n.jsxs)(t.p,{children:["After you have created your application logic with Rust and your application UI\nwith TypeScript, you can publish your app. Follow instructions in the\n",(0,n.jsx)(t.a,{href:"/build/publish-app",children:"Publish App"})," guide to learn how to publish your app and\nhow users can download and run it."]}),"\n",(0,n.jsx)(t.h2,{id:"building-app-from-template",children:"Building app from template"}),"\n",(0,n.jsxs)(t.p,{children:["We have prepared template repository for you to get started quickly. You can\nfind the template repository\n",(0,n.jsx)(t.a,{href:"https://github.com/calimero-network/core-app-template",children:"here"}),". Repository\ncontains two folders, ",(0,n.jsx)(t.code,{children:"logic"})," and ",(0,n.jsx)(t.code,{children:"app"}),". ",(0,n.jsx)(t.code,{children:"logic"})," folder contains the application\nlogic written in Rust and ",(0,n.jsx)(t.code,{children:"app"})," folder contains the application client interface\nwritten in TypeScript."]}),"\n",(0,n.jsxs)(t.blockquote,{children:["\n",(0,n.jsxs)(t.p,{children:[(0,n.jsx)(t.strong,{children:(0,n.jsx)(t.em,{children:"NOTE:"})})," Logic is still under development and may not be yet published."]}),"\n"]})]})}function d(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(p,{...e})}):p(e)}},8355:(e,t,i)=>{i.d(t,{R:()=>a,x:()=>l});var n=i(758);const o={},r=n.createContext(o);function a(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:a(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/01954a18.76e983ea.js b/assets/js/01954a18.787a0508.js similarity index 94% rename from assets/js/01954a18.76e983ea.js rename to assets/js/01954a18.787a0508.js index c27322d6..32ef2e2a 100644 --- a/assets/js/01954a18.76e983ea.js +++ b/assets/js/01954a18.787a0508.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7838],{7073:(t,e,o)=>{o.r(e),o.d(e,{assets:()=>u,contentTitle:()=>s,default:()=>d,frontMatter:()=>r,metadata:()=>c,toc:()=>l});var n=o(6070),i=o(5710);const r={id:"github",title:"GitHub"},s=void 0,c={id:"contribute/github",title:"GitHub",description:"All work on Calimero happens directly on GitHub. Both core team members and",source:"@site/docs/05-contribute/01-github.mdx",sourceDirName:"05-contribute",slug:"/contribute/github",permalink:"/contribute/github",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"github",title:"GitHub"},sidebar:"tutorialSidebar",previous:{title:"Dev Mode",permalink:"/build/dev-mode"},next:{title:"Hackathons",permalink:"/contribute/hackathons"}},u={},l=[{value:"How to Contribute",id:"how-to-contribute",level:2},{value:"Additional Ways to Contribute",id:"additional-ways-to-contribute",level:2}];function a(t){const e={a:"a",h2:"h2",li:"li",p:"p",strong:"strong",ul:"ul",...(0,i.R)(),...t.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(e.p,{children:"All work on Calimero happens directly on GitHub. Both core team members and\nexternal contributors send pull requests which go through the same review\nprocess."}),"\n",(0,n.jsx)(e.h2,{id:"how-to-contribute",children:"How to Contribute"}),"\n",(0,n.jsxs)(e.p,{children:["We appreciate your interest in contributing to our project! To get started with\ncontributing, please follow the instructions outlined in our\n",(0,n.jsx)(e.a,{href:"https://github.com/calimero-network/core/blob/master/CONTRIBUTING.md",children:"CONTRIBUTING"}),"\nfile."]}),"\n",(0,n.jsx)(e.h2,{id:"additional-ways-to-contribute",children:"Additional Ways to Contribute"}),"\n",(0,n.jsxs)(e.ul,{children:["\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Show Your Support:"})," If you find this project helpful, please star it on\nGitHub. Your stars help the project grow and reach more developers like you."]}),"\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Spread the Word:"})," Share the project with your friends and colleagues who\nmight be interested in contributing or using it."]}),"\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Join Discussions:"})," Participate in discussions on GitHub\n",(0,n.jsx)(e.a,{href:"https://github.com/calimero-network/core/issues",children:"Issues"})," or\n",(0,n.jsx)(e.a,{href:"https://github.com/orgs/calimero-network/discussions",children:"Discussions"})," to share\nyour ideas and provide feedback."]}),"\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Write Tutorials or Blog Posts:"})," Create tutorials or blog posts about how to\nuse the project or your experience contributing to it."]}),"\n"]})]})}function d(t={}){const{wrapper:e}={...(0,i.R)(),...t.components};return e?(0,n.jsx)(e,{...t,children:(0,n.jsx)(a,{...t})}):a(t)}},5710:(t,e,o)=>{o.d(e,{R:()=>s,x:()=>c});var n=o(758);const i={},r=n.createContext(i);function s(t){const e=n.useContext(r);return n.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function c(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(i):t.components||i:s(t.components),n.createElement(r.Provider,{value:e},t.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7838],{7073:(t,e,o)=>{o.r(e),o.d(e,{assets:()=>u,contentTitle:()=>s,default:()=>d,frontMatter:()=>r,metadata:()=>c,toc:()=>l});var n=o(6070),i=o(8355);const r={id:"github",title:"GitHub"},s=void 0,c={id:"contribute/github",title:"GitHub",description:"All work on Calimero happens directly on GitHub. Both core team members and",source:"@site/docs/05-contribute/01-github.mdx",sourceDirName:"05-contribute",slug:"/contribute/github",permalink:"/contribute/github",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"github",title:"GitHub"},sidebar:"tutorialSidebar",previous:{title:"Dev Mode",permalink:"/build/dev-mode"},next:{title:"Hackathons",permalink:"/contribute/hackathons"}},u={},l=[{value:"How to Contribute",id:"how-to-contribute",level:2},{value:"Additional Ways to Contribute",id:"additional-ways-to-contribute",level:2}];function a(t){const e={a:"a",h2:"h2",li:"li",p:"p",strong:"strong",ul:"ul",...(0,i.R)(),...t.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(e.p,{children:"All work on Calimero happens directly on GitHub. Both core team members and\nexternal contributors send pull requests which go through the same review\nprocess."}),"\n",(0,n.jsx)(e.h2,{id:"how-to-contribute",children:"How to Contribute"}),"\n",(0,n.jsxs)(e.p,{children:["We appreciate your interest in contributing to our project! To get started with\ncontributing, please follow the instructions outlined in our\n",(0,n.jsx)(e.a,{href:"https://github.com/calimero-network/core/blob/master/CONTRIBUTING.md",children:"CONTRIBUTING"}),"\nfile."]}),"\n",(0,n.jsx)(e.h2,{id:"additional-ways-to-contribute",children:"Additional Ways to Contribute"}),"\n",(0,n.jsxs)(e.ul,{children:["\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Show Your Support:"})," If you find this project helpful, please star it on\nGitHub. Your stars help the project grow and reach more developers like you."]}),"\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Spread the Word:"})," Share the project with your friends and colleagues who\nmight be interested in contributing or using it."]}),"\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Join Discussions:"})," Participate in discussions on GitHub\n",(0,n.jsx)(e.a,{href:"https://github.com/calimero-network/core/issues",children:"Issues"})," or\n",(0,n.jsx)(e.a,{href:"https://github.com/orgs/calimero-network/discussions",children:"Discussions"})," to share\nyour ideas and provide feedback."]}),"\n",(0,n.jsxs)(e.li,{children:[(0,n.jsx)(e.strong,{children:"Write Tutorials or Blog Posts:"})," Create tutorials or blog posts about how to\nuse the project or your experience contributing to it."]}),"\n"]})]})}function d(t={}){const{wrapper:e}={...(0,i.R)(),...t.components};return e?(0,n.jsx)(e,{...t,children:(0,n.jsx)(a,{...t})}):a(t)}},8355:(t,e,o)=>{o.d(e,{R:()=>s,x:()=>c});var n=o(758);const i={},r=n.createContext(i);function s(t){const e=n.useContext(r);return n.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function c(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(i):t.components||i:s(t.components),n.createElement(r.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/0b38cd53.a1796f05.js b/assets/js/0b38cd53.a57cb6f8.js similarity index 96% rename from assets/js/0b38cd53.a1796f05.js rename to assets/js/0b38cd53.a57cb6f8.js index 2d71c457..8390d307 100644 --- a/assets/js/0b38cd53.a1796f05.js +++ b/assets/js/0b38cd53.a57cb6f8.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6673],{507:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>h,frontMatter:()=>a,metadata:()=>r,toc:()=>l});var i=t(6070),s=t(5710);const a={id:"specialized-nodes",title:"Specialized Nodes"},o=void 0,r={id:"learn/advanced-concepts/specialized-nodes",title:"Specialized Nodes",description:"Specialized nodes in the Calimero Network are third-party nodes that augment a",source:"@site/docs/02-learn/04-advanced-concepts/01-specialized-nodes.mdx",sourceDirName:"02-learn/04-advanced-concepts",slug:"/learn/advanced-concepts/specialized-nodes",permalink:"/learn/advanced-concepts/specialized-nodes",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"specialized-nodes",title:"Specialized Nodes"},sidebar:"tutorialSidebar",previous:{title:"Contexts",permalink:"/learn/core-concepts/contexts"},next:{title:"Encryption",permalink:"/learn/advanced-concepts/encryption"}},c={},l=[{value:"Key Concepts",id:"key-concepts",level:3},{value:"Types of Specialized Nodes",id:"types-of-specialized-nodes",level:3},{value:"Reliability Through Decentralization",id:"reliability-through-decentralization",level:3}];function d(e){const n={h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"Specialized nodes in the Calimero Network are third-party nodes that augment a\ncontext's capacity and reliability. They participate in a context but have\nadditional capabilities, providing various services while maintaining the\ndecentralized nature of the network."}),"\n",(0,i.jsx)(n.h3,{id:"key-concepts",children:"Key Concepts"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Incentivization"}),": These nodes can be incentivized through contracts on\nblockchains that pay them for their services, ensuring they remain motivated\nto perform their roles effectively."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Permissions and Roles"}),": Specialized nodes can have different levels of\npermissions, ranging from being subscribed to encrypted network events to\nfully participating as part of the context."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"types-of-specialized-nodes",children:"Types of Specialized Nodes"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Storage Nodes"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Encrypted Transaction Storage"}),": These nodes store encrypted transactions\nwithout the ability to read them. They guarantee 100% uptime, ensuring that\nall transactions are available even when peers are offline. When peers come\nback online, the node provides missed transactions and new transactions for\nreplication."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Blob Storage"}),": These nodes also store encrypted blobs of\nnon-state-transitional data, ensuring that all necessary data is always\navailable without holding decryption keys."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Delegated Execution Nodes"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Context Maintenance"}),": These nodes fully join a context and maintain the\ncontext state on their end. They can handle resource-intensive executions,\ndelegating specific calls to optimize performance and resource utilization."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Administrative Nodes"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Event Observation and Action"}),": These nodes observe real-world events and\nact on them within the context. For example, in a billionaire's club\ncontext, an administrative node could monitor members' accounts on a\nblockchain and evict them if their balance falls below a certain threshold."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"reliability-through-decentralization",children:"Reliability Through Decentralization"}),"\n",(0,i.jsx)(n.p,{children:"Specialized nodes ensure that the context remains operational and consistent,\neven when primary peers are offline. They provide the necessary data and\ntransactions to keep the context up-to-date. The decentralized nature ensures\nthat the state is eventually consistent. Fragmentation does not cause issues as\nthe system reconciles itself when peers come back online, highlighting the\nnetwork's reliability without reliance on any single specialized node."})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>r});var i=t(758);const s={},a=i.createContext(s);function o(e){const n=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6673],{507:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>h,frontMatter:()=>a,metadata:()=>r,toc:()=>l});var i=t(6070),s=t(8355);const a={id:"specialized-nodes",title:"Specialized Nodes"},o=void 0,r={id:"learn/advanced-concepts/specialized-nodes",title:"Specialized Nodes",description:"Specialized nodes in the Calimero Network are third-party nodes that augment a",source:"@site/docs/02-learn/04-advanced-concepts/01-specialized-nodes.mdx",sourceDirName:"02-learn/04-advanced-concepts",slug:"/learn/advanced-concepts/specialized-nodes",permalink:"/learn/advanced-concepts/specialized-nodes",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"specialized-nodes",title:"Specialized Nodes"},sidebar:"tutorialSidebar",previous:{title:"Contexts",permalink:"/learn/core-concepts/contexts"},next:{title:"Encryption",permalink:"/learn/advanced-concepts/encryption"}},c={},l=[{value:"Key Concepts",id:"key-concepts",level:3},{value:"Types of Specialized Nodes",id:"types-of-specialized-nodes",level:3},{value:"Reliability Through Decentralization",id:"reliability-through-decentralization",level:3}];function d(e){const n={h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"Specialized nodes in the Calimero Network are third-party nodes that augment a\ncontext's capacity and reliability. They participate in a context but have\nadditional capabilities, providing various services while maintaining the\ndecentralized nature of the network."}),"\n",(0,i.jsx)(n.h3,{id:"key-concepts",children:"Key Concepts"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Incentivization"}),": These nodes can be incentivized through contracts on\nblockchains that pay them for their services, ensuring they remain motivated\nto perform their roles effectively."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Permissions and Roles"}),": Specialized nodes can have different levels of\npermissions, ranging from being subscribed to encrypted network events to\nfully participating as part of the context."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"types-of-specialized-nodes",children:"Types of Specialized Nodes"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Storage Nodes"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Encrypted Transaction Storage"}),": These nodes store encrypted transactions\nwithout the ability to read them. They guarantee 100% uptime, ensuring that\nall transactions are available even when peers are offline. When peers come\nback online, the node provides missed transactions and new transactions for\nreplication."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Blob Storage"}),": These nodes also store encrypted blobs of\nnon-state-transitional data, ensuring that all necessary data is always\navailable without holding decryption keys."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Delegated Execution Nodes"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Context Maintenance"}),": These nodes fully join a context and maintain the\ncontext state on their end. They can handle resource-intensive executions,\ndelegating specific calls to optimize performance and resource utilization."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Administrative Nodes"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Event Observation and Action"}),": These nodes observe real-world events and\nact on them within the context. For example, in a billionaire's club\ncontext, an administrative node could monitor members' accounts on a\nblockchain and evict them if their balance falls below a certain threshold."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"reliability-through-decentralization",children:"Reliability Through Decentralization"}),"\n",(0,i.jsx)(n.p,{children:"Specialized nodes ensure that the context remains operational and consistent,\neven when primary peers are offline. They provide the necessary data and\ntransactions to keep the context up-to-date. The decentralized nature ensures\nthat the state is eventually consistent. Fragmentation does not cause issues as\nthe system reconciles itself when peers come back online, highlighting the\nnetwork's reliability without reliance on any single specialized node."})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>r});var i=t(758);const s={},a=i.createContext(s);function o(e){const n=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/13477880.c07d1977.js b/assets/js/13477880.2149d152.js similarity index 91% rename from assets/js/13477880.c07d1977.js rename to assets/js/13477880.2149d152.js index 848f5876..8241142f 100644 --- a/assets/js/13477880.c07d1977.js +++ b/assets/js/13477880.2149d152.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[105],{6778:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>u,frontMatter:()=>s,metadata:()=>i,toc:()=>l});var r=o(6070),n=o(5710);const s={id:"only-peers",title:"Only Peers"},a=void 0,i={id:"explore/awesome-projects/only-peers",title:"Only Peers",description:"Only Peers is a decentralized social networking app that empowers you to share",source:"@site/docs/01-explore/06-awesome-projects/01-only-peers.mdx",sourceDirName:"01-explore/06-awesome-projects",slug:"/explore/awesome-projects/only-peers",permalink:"/explore/awesome-projects/only-peers",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"only-peers",title:"Only Peers"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Intellectual Property Management",permalink:"/explore/use-cases/decentralized-intellectual-property-management"},next:{title:"Rock Paper Scissors",permalink:"/explore/awesome-projects/rock-paper-scissors"}},c={},l=[];function p(e){const t={a:"a",p:"p",...(0,n.R)(),...e.components};return(0,r.jsxs)(t.p,{children:["Only Peers is a decentralized social networking app that empowers you to share\nyour thoughts and engage with your community without compromising your privacy.\nIt allows you to write posts, leave comments, and interact with friends.\nHowever, unlike traditional social networks, Only Peers ensures your data\nremains under your control, protected from central authorities and prying eyes.\nExperience the freedom of a decentralized platform where your voice cannot be\ncensored and your privacy is prioritized. Explore the source code on\n",(0,r.jsx)(t.a,{href:"https://github.com/calimero-network/only-peers-client",children:"GitHub repository"}),"."]})}function u(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(p,{...e})}):p(e)}},5710:(e,t,o)=>{o.d(t,{R:()=>a,x:()=>i});var r=o(758);const n={},s=r.createContext(n);function a(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:a(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[105],{6778:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>u,frontMatter:()=>s,metadata:()=>i,toc:()=>l});var r=o(6070),n=o(8355);const s={id:"only-peers",title:"Only Peers"},a=void 0,i={id:"explore/awesome-projects/only-peers",title:"Only Peers",description:"Only Peers is a decentralized social networking app that empowers you to share",source:"@site/docs/01-explore/06-awesome-projects/01-only-peers.mdx",sourceDirName:"01-explore/06-awesome-projects",slug:"/explore/awesome-projects/only-peers",permalink:"/explore/awesome-projects/only-peers",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"only-peers",title:"Only Peers"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Intellectual Property Management",permalink:"/explore/use-cases/decentralized-intellectual-property-management"},next:{title:"Rock Paper Scissors",permalink:"/explore/awesome-projects/rock-paper-scissors"}},c={},l=[];function p(e){const t={a:"a",p:"p",...(0,n.R)(),...e.components};return(0,r.jsxs)(t.p,{children:["Only Peers is a decentralized social networking app that empowers you to share\nyour thoughts and engage with your community without compromising your privacy.\nIt allows you to write posts, leave comments, and interact with friends.\nHowever, unlike traditional social networks, Only Peers ensures your data\nremains under your control, protected from central authorities and prying eyes.\nExperience the freedom of a decentralized platform where your voice cannot be\ncensored and your privacy is prioritized. Explore the source code on\n",(0,r.jsx)(t.a,{href:"https://github.com/calimero-network/only-peers-client",children:"GitHub repository"}),"."]})}function u(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(p,{...e})}):p(e)}},8355:(e,t,o)=>{o.d(t,{R:()=>a,x:()=>i});var r=o(758);const n={},s=r.createContext(n);function a(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:a(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/150624dd.ad977ac4.js b/assets/js/150624dd.8ba1f65a.js similarity index 95% rename from assets/js/150624dd.ad977ac4.js rename to assets/js/150624dd.8ba1f65a.js index e9e6c836..db34c381 100644 --- a/assets/js/150624dd.ad977ac4.js +++ b/assets/js/150624dd.8ba1f65a.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2329],{2397:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var i=n(6070),o=n(5710);const r={id:"terminology",title:"Terminology"},s=void 0,a={id:"learn/terminology",title:"Terminology",description:"As projects grow, it's important to have a shared vocabulary to help communicate",source:"@site/docs/02-learn/01-terminology.mdx",sourceDirName:"02-learn",slug:"/learn/terminology",permalink:"/learn/terminology",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"terminology",title:"Terminology"},sidebar:"tutorialSidebar",previous:{title:"Rock Paper Scissors",permalink:"/explore/awesome-projects/rock-paper-scissors"},next:{title:"Architecture",permalink:"/learn/architecture"}},c={},l=[];function d(e){const t={li:"li",p:"p",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.p,{children:"As projects grow, it's important to have a shared vocabulary to help communicate\neffectively. This page provides a list of terms used in the documentation and\nthroughout the codebase."}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Node"})," is any individual device or computer that participates in the\nnetwork. To avoid confusion with network layer used in the protocol, instead\nof network we are using term ",(0,i.jsx)(t.strong,{children:"Context"}),"."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Peer"})," is a specific instance of a node within a P2P network that interacts\nwith other peers. Peer represents user."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Peer Id"})," is a unique identifier assigned to each peer in the network. It is\nused to distinguish between different peers and ensure that messages are\ndelivered to the correct recipient."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Context"})," is the core of the Calimero ecosystem. It is an application\nspecific network designed to enable direct communication between users,\neliminating the need for intermediaries"]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Application"})," is a software program designed to perform specific tasks or\nsolve particular problems. To ensure compatibility and functionality, it\nshould be developed according to the protocol SDK instructions provided. Once\ndeveloped, the application should be published in a format that others can use\nduring runtime, specifically in WebAssembly (WASM) format. Developer can also\nbuild frontend for an application, deployed separately, allowing users to\ninteract with an app directly. This user interface facilitates interaction\nwith the underlying software, making the application accessible and\nuser-friendly."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Root key"})," is the public part of a wallet cryptographic key pair used to\nverify the signature of sensitive actions. This public key is used to ensure\nthat any data or actions signed with the corresponding private key can be\ntrusted. Essentially, the root key serves as a trust anchor, enabling users to\nvalidate the authenticity and integrity of operations or communications\nassociated with the node. It does not grant direct control over the node but\nensures that actions authenticated with the private part of the root key are\nlegitimate."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Client key"})," is a cryptographic key tailored for each user session, acting\nas a session key or token. Each client key must be signed with the root key to\nbe valid which is done automatically during login. This ensures that only\nsessions authenticated by the trusted root key can interact with the node."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Specialized node"})," is third-party node that augment a context's capacity and\nreliability. It participates in a context but have additional capabilities,\nproviding various services while maintaining the decentralized nature of the\nnetwork."]}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>a});var i=n(758);const o={},r=i.createContext(o);function s(e){const t=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:s(e.components),i.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2329],{2397:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var i=n(6070),o=n(8355);const r={id:"terminology",title:"Terminology"},s=void 0,a={id:"learn/terminology",title:"Terminology",description:"As projects grow, it's important to have a shared vocabulary to help communicate",source:"@site/docs/02-learn/01-terminology.mdx",sourceDirName:"02-learn",slug:"/learn/terminology",permalink:"/learn/terminology",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"terminology",title:"Terminology"},sidebar:"tutorialSidebar",previous:{title:"Rock Paper Scissors",permalink:"/explore/awesome-projects/rock-paper-scissors"},next:{title:"Architecture",permalink:"/learn/architecture"}},c={},l=[];function d(e){const t={li:"li",p:"p",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.p,{children:"As projects grow, it's important to have a shared vocabulary to help communicate\neffectively. This page provides a list of terms used in the documentation and\nthroughout the codebase."}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Node"})," is any individual device or computer that participates in the\nnetwork. To avoid confusion with network layer used in the protocol, instead\nof network we are using term ",(0,i.jsx)(t.strong,{children:"Context"}),"."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Peer"})," is a specific instance of a node within a P2P network that interacts\nwith other peers. Peer represents user."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Peer Id"})," is a unique identifier assigned to each peer in the network. It is\nused to distinguish between different peers and ensure that messages are\ndelivered to the correct recipient."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Context"})," is the core of the Calimero ecosystem. It is an application\nspecific network designed to enable direct communication between users,\neliminating the need for intermediaries"]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Application"})," is a software program designed to perform specific tasks or\nsolve particular problems. To ensure compatibility and functionality, it\nshould be developed according to the protocol SDK instructions provided. Once\ndeveloped, the application should be published in a format that others can use\nduring runtime, specifically in WebAssembly (WASM) format. Developer can also\nbuild frontend for an application, deployed separately, allowing users to\ninteract with an app directly. This user interface facilitates interaction\nwith the underlying software, making the application accessible and\nuser-friendly."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Root key"})," is the public part of a wallet cryptographic key pair used to\nverify the signature of sensitive actions. This public key is used to ensure\nthat any data or actions signed with the corresponding private key can be\ntrusted. Essentially, the root key serves as a trust anchor, enabling users to\nvalidate the authenticity and integrity of operations or communications\nassociated with the node. It does not grant direct control over the node but\nensures that actions authenticated with the private part of the root key are\nlegitimate."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Client key"})," is a cryptographic key tailored for each user session, acting\nas a session key or token. Each client key must be signed with the root key to\nbe valid which is done automatically during login. This ensures that only\nsessions authenticated by the trusted root key can interact with the node."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Specialized node"})," is third-party node that augment a context's capacity and\nreliability. It participates in a context but have additional capabilities,\nproviding various services while maintaining the decentralized nature of the\nnetwork."]}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>a});var i=n(758);const o={},r=i.createContext(o);function s(e){const t=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:s(e.components),i.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/15a7497e.edc0d23c.js b/assets/js/15a7497e.82ada792.js similarity index 97% rename from assets/js/15a7497e.edc0d23c.js rename to assets/js/15a7497e.82ada792.js index 5bffd9d3..389e73c1 100644 --- a/assets/js/15a7497e.edc0d23c.js +++ b/assets/js/15a7497e.82ada792.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7476],{4682:(e,n,o)=>{o.r(n),o.d(n,{assets:()=>a,contentTitle:()=>r,default:()=>h,frontMatter:()=>s,metadata:()=>l,toc:()=>c});var t=o(6070),i=o(5710);const s={id:"protocol-sdk",title:"Protocol SDK"},r=void 0,l={id:"build/protocol-sdks/protocol-sdk",title:"Protocol SDK",description:"The Protocol SDK within the Calimero Network serves as a foundational tool for",source:"@site/docs/04-build/01-protocol-sdks/01-protocol-sdk.mdx",sourceDirName:"04-build/01-protocol-sdks",slug:"/build/protocol-sdks/protocol-sdk",permalink:"/build/protocol-sdks/protocol-sdk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"protocol-sdk",title:"Protocol SDK"},sidebar:"tutorialSidebar",previous:{title:"Quickstart",permalink:"/build/quickstart"},next:{title:"Rust Protocol SDK",permalink:"/build/protocol-sdks/protocol-rs-sdk"}},a={},c=[{value:"Features and Functionalities",id:"features-and-functionalities",level:3},{value:"Role in DApp Development",id:"role-in-dapp-development",level:3},{value:"Integration with Other Calimero Components",id:"integration-with-other-calimero-components",level:3},{value:"Use Cases",id:"use-cases",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.p,{children:"The Protocol SDK within the Calimero Network serves as a foundational tool for\ndevelopers, enabling them to design, develop, and deploy the specific protocols\nthat govern the operation of their decentralized applications (DApps). This SDK\nis particularly crucial in a network like Calimero, where privacy, security, and\ndecentralized communication are paramount. Here's an overview of the Protocol\nSDK, highlighting its features, functionalities, and its role in the development\nlifecycle of DApps:"}),"\n",(0,t.jsx)(n.h3,{id:"features-and-functionalities",children:"Features and Functionalities"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Protocol Definition"}),": Allows developers to define the rules and behaviors\nof their application networks, including communication protocols, data\nformats, and interaction patterns among nodes."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Code Generation"}),": Automates the generation of boilerplate code required to\nimplement the defined protocols, significantly speeding up the development\nprocess and reducing the potential for errors."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Interoperability Support"}),": Facilitates the creation of protocols that can\ninteract with various blockchains and external systems, ensuring that\nCalimero-based DApps can operate within the broader blockchain ecosystem."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Security Focus"}),": Provides tools and libraries to incorporate advanced\nsecurity features into protocols, such as end-to-end encryption, secure key\nmanagement, and privacy-preserving data sharing mechanisms."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Performance Optimization"}),": Includes optimization tools and best practices\nto ensure that the protocols are efficient in terms of resource usage,\nsuitable for decentralized networks where performance can be a critical\nconcern."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"role-in-dapp-development",children:"Role in DApp Development"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Protocol Development"}),": At the core of any DApp on the Calimero Network is a\nprotocol that dictates how the application functions, how nodes within the\napplication's network communicate, and how data is handled and stored. The\nProtocol SDK is the primary tool for developing these protocols."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Testing and Deployment"}),": The SDK provides an environment for thorough\ntesting of the protocols in simulated conditions before they are deployed on\nthe live network. This ensures that any issues can be identified and resolved\nin a controlled setting, minimizing risks."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Versioning and Updates"}),": Supports protocol versioning, enabling developers\nto iterate on their protocols and roll out updates in a structured manner.\nThis is crucial for maintaining compatibility and ensuring the longevity and\nscalability of DApps."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"integration-with-other-calimero-components",children:"Integration with Other Calimero Components"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Client Nodes"}),": Protocols developed with the Protocol SDK are deployed on\nclient nodes, which act as the runtime environment for the DApps built on\nthese protocols."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Client SDKs"}),": These SDKs interact with the protocols at a higher level,\nproviding interfaces for end-users to interact with the DApps. The seamless\nintegration between the Protocol SDK and Client SDKs ensures a smooth user\nexperience."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Specialized Nodes"}),": Some protocols may require specialized computational\nresources or functionalities. The Protocol SDK allows for the integration of\nthese services, enabling DApps to leverage the specialized nodes within the\nCalimero Network."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"use-cases",children:"Use Cases"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Decentralized Messaging"}),": For a messaging app, the Protocol SDK could be\nused to define the encryption protocols, message delivery mechanisms, and peer\ndiscovery protocols."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Decentralized Finance (DeFi)"}),": In a DeFi application, the SDK could define\nthe protocols for executing smart contracts, handling transactions, and\ninteracting with external blockchains for asset transfers."]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:"The Protocol SDK is a critical component of the Calimero Network, empowering\ndevelopers to build sophisticated, secure, and efficient decentralized\napplications. By abstracting much of the complexity associated with protocol\ndevelopment, the SDK enables developers to focus on the unique features and\nfunctionalities of their DApps, fostering innovation and growth within the\nCalimero ecosystem."})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},5710:(e,n,o)=>{o.d(n,{R:()=>r,x:()=>l});var t=o(758);const i={},s=t.createContext(i);function r(e){const n=t.useContext(s);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),t.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7476],{4682:(e,n,o)=>{o.r(n),o.d(n,{assets:()=>a,contentTitle:()=>r,default:()=>h,frontMatter:()=>s,metadata:()=>l,toc:()=>c});var t=o(6070),i=o(8355);const s={id:"protocol-sdk",title:"Protocol SDK"},r=void 0,l={id:"build/protocol-sdks/protocol-sdk",title:"Protocol SDK",description:"The Protocol SDK within the Calimero Network serves as a foundational tool for",source:"@site/docs/04-build/01-protocol-sdks/01-protocol-sdk.mdx",sourceDirName:"04-build/01-protocol-sdks",slug:"/build/protocol-sdks/protocol-sdk",permalink:"/build/protocol-sdks/protocol-sdk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"protocol-sdk",title:"Protocol SDK"},sidebar:"tutorialSidebar",previous:{title:"Quickstart",permalink:"/build/quickstart"},next:{title:"Rust Protocol SDK",permalink:"/build/protocol-sdks/protocol-rs-sdk"}},a={},c=[{value:"Features and Functionalities",id:"features-and-functionalities",level:3},{value:"Role in DApp Development",id:"role-in-dapp-development",level:3},{value:"Integration with Other Calimero Components",id:"integration-with-other-calimero-components",level:3},{value:"Use Cases",id:"use-cases",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.p,{children:"The Protocol SDK within the Calimero Network serves as a foundational tool for\ndevelopers, enabling them to design, develop, and deploy the specific protocols\nthat govern the operation of their decentralized applications (DApps). This SDK\nis particularly crucial in a network like Calimero, where privacy, security, and\ndecentralized communication are paramount. Here's an overview of the Protocol\nSDK, highlighting its features, functionalities, and its role in the development\nlifecycle of DApps:"}),"\n",(0,t.jsx)(n.h3,{id:"features-and-functionalities",children:"Features and Functionalities"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Protocol Definition"}),": Allows developers to define the rules and behaviors\nof their application networks, including communication protocols, data\nformats, and interaction patterns among nodes."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Code Generation"}),": Automates the generation of boilerplate code required to\nimplement the defined protocols, significantly speeding up the development\nprocess and reducing the potential for errors."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Interoperability Support"}),": Facilitates the creation of protocols that can\ninteract with various blockchains and external systems, ensuring that\nCalimero-based DApps can operate within the broader blockchain ecosystem."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Security Focus"}),": Provides tools and libraries to incorporate advanced\nsecurity features into protocols, such as end-to-end encryption, secure key\nmanagement, and privacy-preserving data sharing mechanisms."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Performance Optimization"}),": Includes optimization tools and best practices\nto ensure that the protocols are efficient in terms of resource usage,\nsuitable for decentralized networks where performance can be a critical\nconcern."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"role-in-dapp-development",children:"Role in DApp Development"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Protocol Development"}),": At the core of any DApp on the Calimero Network is a\nprotocol that dictates how the application functions, how nodes within the\napplication's network communicate, and how data is handled and stored. The\nProtocol SDK is the primary tool for developing these protocols."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Testing and Deployment"}),": The SDK provides an environment for thorough\ntesting of the protocols in simulated conditions before they are deployed on\nthe live network. This ensures that any issues can be identified and resolved\nin a controlled setting, minimizing risks."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Versioning and Updates"}),": Supports protocol versioning, enabling developers\nto iterate on their protocols and roll out updates in a structured manner.\nThis is crucial for maintaining compatibility and ensuring the longevity and\nscalability of DApps."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"integration-with-other-calimero-components",children:"Integration with Other Calimero Components"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Client Nodes"}),": Protocols developed with the Protocol SDK are deployed on\nclient nodes, which act as the runtime environment for the DApps built on\nthese protocols."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Client SDKs"}),": These SDKs interact with the protocols at a higher level,\nproviding interfaces for end-users to interact with the DApps. The seamless\nintegration between the Protocol SDK and Client SDKs ensures a smooth user\nexperience."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Specialized Nodes"}),": Some protocols may require specialized computational\nresources or functionalities. The Protocol SDK allows for the integration of\nthese services, enabling DApps to leverage the specialized nodes within the\nCalimero Network."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"use-cases",children:"Use Cases"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Decentralized Messaging"}),": For a messaging app, the Protocol SDK could be\nused to define the encryption protocols, message delivery mechanisms, and peer\ndiscovery protocols."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Decentralized Finance (DeFi)"}),": In a DeFi application, the SDK could define\nthe protocols for executing smart contracts, handling transactions, and\ninteracting with external blockchains for asset transfers."]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:"The Protocol SDK is a critical component of the Calimero Network, empowering\ndevelopers to build sophisticated, secure, and efficient decentralized\napplications. By abstracting much of the complexity associated with protocol\ndevelopment, the SDK enables developers to focus on the unique features and\nfunctionalities of their DApps, fostering innovation and growth within the\nCalimero ecosystem."})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},8355:(e,n,o)=>{o.d(n,{R:()=>r,x:()=>l});var t=o(758);const i={},s=t.createContext(i);function r(e){const n=t.useContext(s);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),t.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/17896441.74a5fd32.js b/assets/js/17896441.22631d99.js similarity index 94% rename from assets/js/17896441.74a5fd32.js rename to assets/js/17896441.22631d99.js index 80b3dd15..23795cd9 100644 --- a/assets/js/17896441.74a5fd32.js +++ b/assets/js/17896441.22631d99.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8401],{1159:(e,t,o)=>{o.d(t,{A:()=>p});var a=o(758),r=o(6476),s=o(2041),i=o(6070);const n=[{value:"accurate",title:"Accurate",description:"Accurately describes the product or feature."},{value:"problem-solved",title:"Solved my problem",description:"Helped me resolve an issue."},{value:"clear",title:"Easy to understand",description:"Easy to follow and comprehend."},{value:"product-chosen",title:"Helped me decide to use the product",description:"Convinced me to adopt the product or feature."},{value:"other-yes",title:"Another reason"}],l=[{value:"inaccurate",title:"Inaccurate",description:"Doesn't accurately describe the product or feature."},{value:"missing-info",title:"Couldn't find what I was looking for",description:"Missing important information."},{value:"unclear",title:"Hard to understand",description:"Too complicated or unclear."},{value:"bad-examples",title:"Code samples errors",description:"One or more code samples are incorrect."},{value:"other-no",title:"Another reason"}],c="61a5fb78-4d70-402a-9692-c8ecf3755ed8";function d(){const[e,t]=(0,a.useState)();return(0,i.jsx)("div",{className:"feelback-container",children:e?(0,i.jsx)(s.l6,{contentSetId:c,layout:"radio-group",preset:s.MB,tags:"y"===e?n:l,title:"y"===e?"What did you like?":"What can we improve?",placeholder:"(optional) Please, provide additional feedback.",textAnswer:e}):(0,i.jsx)(s.vN,{text:"Was this page helpful?",items:s.D1,showLabels:!0,onClick:e=>t(e)})})}function u(){return(0,i.jsx)(i.Fragment,{children:(0,i.jsx)("div",{className:"alert alert--success",children:(0,i.jsxs)("summary",{children:["Need some help? ",(0,i.jsx)("a",{children:"Check "}),(0,i.jsx)("a",{href:"/resources/community-and-support",children:"Support"})," page"]})})})}function p(e){return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(r.A,{...e}),(0,i.jsx)("div",{style:{marginTop:"16px"},className:"theme-admonition theme-admonition-tip admonition_node_modules-@docusaurus-theme-classic-lib-theme-Admonition-Layout-styles-module alert alert--info",children:(0,i.jsx)(d,{})}),(0,i.jsx)("div",{style:{paddingTop:"16px"},children:(0,i.jsx)(u,{})})]})}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8401],{8949:(e,t,o)=>{o.d(t,{A:()=>p});var a=o(758),r=o(2038),s=o(2041),i=o(6070);const n=[{value:"accurate",title:"Accurate",description:"Accurately describes the product or feature."},{value:"problem-solved",title:"Solved my problem",description:"Helped me resolve an issue."},{value:"clear",title:"Easy to understand",description:"Easy to follow and comprehend."},{value:"product-chosen",title:"Helped me decide to use the product",description:"Convinced me to adopt the product or feature."},{value:"other-yes",title:"Another reason"}],l=[{value:"inaccurate",title:"Inaccurate",description:"Doesn't accurately describe the product or feature."},{value:"missing-info",title:"Couldn't find what I was looking for",description:"Missing important information."},{value:"unclear",title:"Hard to understand",description:"Too complicated or unclear."},{value:"bad-examples",title:"Code samples errors",description:"One or more code samples are incorrect."},{value:"other-no",title:"Another reason"}],c="61a5fb78-4d70-402a-9692-c8ecf3755ed8";function d(){const[e,t]=(0,a.useState)();return(0,i.jsx)("div",{className:"feelback-container",children:e?(0,i.jsx)(s.l6,{contentSetId:c,layout:"radio-group",preset:s.MB,tags:"y"===e?n:l,title:"y"===e?"What did you like?":"What can we improve?",placeholder:"(optional) Please, provide additional feedback.",textAnswer:e}):(0,i.jsx)(s.vN,{text:"Was this page helpful?",items:s.D1,showLabels:!0,onClick:e=>t(e)})})}function u(){return(0,i.jsx)(i.Fragment,{children:(0,i.jsx)("div",{className:"alert alert--success",children:(0,i.jsxs)("summary",{children:["Need some help? ",(0,i.jsx)("a",{children:"Check "}),(0,i.jsx)("a",{href:"/resources/community-and-support",children:"Support"})," page"]})})})}function p(e){return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(r.A,{...e}),(0,i.jsx)("div",{style:{marginTop:"16px"},className:"theme-admonition theme-admonition-tip admonition_node_modules-@docusaurus-theme-classic-lib-theme-Admonition-Layout-styles-module alert alert--info",children:(0,i.jsx)(d,{})}),(0,i.jsx)("div",{style:{paddingTop:"16px"},children:(0,i.jsx)(u,{})})]})}}}]); \ No newline at end of file diff --git a/assets/js/190ec3a6.b2b26736.js b/assets/js/190ec3a6.648b239a.js similarity index 98% rename from assets/js/190ec3a6.b2b26736.js rename to assets/js/190ec3a6.648b239a.js index df5ebc08..da76bdc4 100644 --- a/assets/js/190ec3a6.b2b26736.js +++ b/assets/js/190ec3a6.648b239a.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7707],{8026:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var s=i(6070),t=i(5710);const r={id:"admin-client-api",title:"Admin Client API"},l=void 0,a={id:"learn/core-concepts/node/admin-client-api",title:"Admin Client API",description:"About Admin Client API",source:"@site/docs/02-learn/03-core-concepts/02-node/admin-api.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/admin-client-api",permalink:"/learn/core-concepts/node/admin-client-api",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,frontMatter:{id:"admin-client-api",title:"Admin Client API"},sidebar:"tutorialSidebar",previous:{title:"Network",permalink:"/learn/core-concepts/node/network"},next:{title:"Applications",permalink:"/learn/core-concepts/applications"}},o={},c=[{value:"About Admin Client API",id:"about-admin-client-api",level:3},{value:"How to Use",id:"how-to-use",level:3},{value:"API Endpoints",id:"api-endpoints",level:3}];function d(e){const n={code:"code",h3:"h3",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h3,{id:"about-admin-client-api",children:"About Admin Client API"}),"\n",(0,s.jsxs)(n.p,{children:["Our Admin Client API offers a comprehensive set of endpoints designed to\nfacilitate the management and administration of the node states. With intuitive\nroutes and robust handlers, administrators can seamlessly navigate various node\noperations with ease and efficiency. The Admin Client API, paired with the\n",(0,s.jsx)(n.strong,{children:"Admin UI"})," \u2014 a web application, is your go-to tool for managing node states,\nsimplifying interactions with the server."]}),"\n",(0,s.jsx)(n.p,{children:"The Admin API empowers you to:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Revoke root keys"}),"\n",(0,s.jsx)(n.li,{children:"Request validation challenge"}),"\n",(0,s.jsx)(n.li,{children:"Install and list node applications"}),"\n",(0,s.jsx)(n.li,{children:"Fetch decentralized identifiers (DID)"}),"\n",(0,s.jsx)(n.li,{children:"Manage client keys"}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"In essence, the Admin API simplifies node management, while the Admin UI offers\nan intuitive interface for seamless control."}),"\n",(0,s.jsx)(n.h3,{id:"how-to-use",children:"How to Use"}),"\n",(0,s.jsxs)(n.p,{children:["To utilize the Admin API endpoints effectively, the recommended approach is to\nleverage the ",(0,s.jsx)(n.strong,{children:"Admin UI web application"}),". The Admin UI automates various steps\ninvolved in interacting with the Admin API, ensuring seamless integration and\nproviding the best user experience."]}),"\n",(0,s.jsx)(n.p,{children:"By using the Admin UI, administrators can streamline their workflow, access\nessential functionalities with ease, and benefit from intuitive visualizations\nand controls. This approach not only simplifies the management of decentralized\nnetworks but also ensures that administrators have access to the best options\nand features available."}),"\n",(0,s.jsx)(n.h3,{id:"api-endpoints",children:"API Endpoints"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Root Key Request"})," - This endpoint allows administrators to add root keys\nfor secure authentication and access control within the decentralized network\nenvironment. Validation Challenge Generation"]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Pre requirements"}),' - Before calling "Root Key Request" endpoint, it is\nessential to first call the "/request-challenge" endpoint. This step is\nnecessary as the "Root Key Request" endpoint requires a challenge to be\npassed and verified during the process of adding the root key']}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/root-key"})]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Parameters"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"accountId"})," : The account identifier associated with the request."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"signature"})," : The signature generated by signing the challenge and message\nwith the wallet."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"publicKey"})," : The public key used for verification."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"callbackUrl"})," : The URL to which the response callback should be sent."]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"Note: The parameters for this POST request, including accountId, signature,\nand publicKey, are generated by signing the challenge and message with the\nwallet."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'curl -X POST \\\n-H "Content-Type: application/json" \\\n-d \'{"accountId": "", "signature": "", "publicKey": "", "callbackUrl": ""}\' \\\nhttp:///admin-api/root-key\n'})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: "Root key added" }\n> Error response\n { error: "Failed to add root key: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Request authentication challenge"})," - Administrators can utilize this\nendpoint to generate validation challenges, enabling users to authenticate\ntheir identity via wallet signatures for enhanced security measures."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/request-challenge"})]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"curl -X POST http:///admin-api/request-challenge\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: { challenge: } }\n> Error response\n { error: "Failed to fetch challenge: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Install Application"})," - This endpoint facilitates the installation of new\napplications on the node, expanding the functionality and capabilities of the\ndecentralized network ecosystem."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/install-application"})]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Parameters"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"application"})," : Application name - can be selected from the Admin UI"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"version"})," : Application release version - can be selected from the Admin UI"]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'curl -X POST \\\n-H "Content-Type: application/json" \\\n-d \'{"application": "", "version": ""}\' \\\nhttp:///admin-api/install-application\n'})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: "Application Installed" }\n> Error response\n { error: "Failed to install application: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"List installed Application"})," - This endpoint returns a list of installed\napplications, providing valuable insights into the current state of the\ndecentralized network ecosystem"]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"GET"})," ",(0,s.jsx)(n.code,{children:"/applications"})]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"curl -X GET http:///admin-api/applications\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: {\n applications:\n [{\n application_name: ,\n version: \n }]\n }}\n> Error response\n { error: "Failed to fetch installed applications: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Add Client Key"})," - Administrators can add new client keys via this\nendpoint, enabling seamless access and authentication for authorized users\nwithin the network."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/add-client-key"})]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Parameters"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"wallet_signature"})," : Signature generated with the wallet"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"payload"})," : Reqest payload containing message and metadata"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"wallet_metadata"})," : Crypto wallet metadata containing information for\nwallet_type and signing_key"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'curl -X POST \\\n-H "Content-Type: application/json" \\\n-d \'{"wallet_signature": "", "payload": { "message": , "metadata": }. "wallet_metadata": {"wallet_type": , "signing_key": }}\' \\\nhttp:///admin-api/add-client-key\n'})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: "Client key stored" }\n> Error response\n { error: "Failed to add client key: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Get the DID"})," - Fetches the Decentralized Identifier (DID) associated with\nthe node, providing a unique identifier for network entities and enabling\ninteroperability across decentralized applications."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"GET"})," ",(0,s.jsx)(n.code,{children:"/did"})]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"curl -X GET http:///admin-api/did\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data:\n {\n id: ,\n root_keys:\n [{\n signing_key: \n }]\n }\n }\n> Error response\n { error: "Failed to fetch DID: " }\n'})}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},5710:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>a});var s=i(758);const t={},r=s.createContext(t);function l(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:l(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7707],{8026:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var s=i(6070),t=i(8355);const r={id:"admin-client-api",title:"Admin Client API"},l=void 0,a={id:"learn/core-concepts/node/admin-client-api",title:"Admin Client API",description:"About Admin Client API",source:"@site/docs/02-learn/03-core-concepts/02-node/admin-api.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/admin-client-api",permalink:"/learn/core-concepts/node/admin-client-api",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,frontMatter:{id:"admin-client-api",title:"Admin Client API"},sidebar:"tutorialSidebar",previous:{title:"Network",permalink:"/learn/core-concepts/node/network"},next:{title:"Applications",permalink:"/learn/core-concepts/applications"}},o={},c=[{value:"About Admin Client API",id:"about-admin-client-api",level:3},{value:"How to Use",id:"how-to-use",level:3},{value:"API Endpoints",id:"api-endpoints",level:3}];function d(e){const n={code:"code",h3:"h3",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h3,{id:"about-admin-client-api",children:"About Admin Client API"}),"\n",(0,s.jsxs)(n.p,{children:["Our Admin Client API offers a comprehensive set of endpoints designed to\nfacilitate the management and administration of the node states. With intuitive\nroutes and robust handlers, administrators can seamlessly navigate various node\noperations with ease and efficiency. The Admin Client API, paired with the\n",(0,s.jsx)(n.strong,{children:"Admin UI"})," \u2014 a web application, is your go-to tool for managing node states,\nsimplifying interactions with the server."]}),"\n",(0,s.jsx)(n.p,{children:"The Admin API empowers you to:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Revoke root keys"}),"\n",(0,s.jsx)(n.li,{children:"Request validation challenge"}),"\n",(0,s.jsx)(n.li,{children:"Install and list node applications"}),"\n",(0,s.jsx)(n.li,{children:"Fetch decentralized identifiers (DID)"}),"\n",(0,s.jsx)(n.li,{children:"Manage client keys"}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"In essence, the Admin API simplifies node management, while the Admin UI offers\nan intuitive interface for seamless control."}),"\n",(0,s.jsx)(n.h3,{id:"how-to-use",children:"How to Use"}),"\n",(0,s.jsxs)(n.p,{children:["To utilize the Admin API endpoints effectively, the recommended approach is to\nleverage the ",(0,s.jsx)(n.strong,{children:"Admin UI web application"}),". The Admin UI automates various steps\ninvolved in interacting with the Admin API, ensuring seamless integration and\nproviding the best user experience."]}),"\n",(0,s.jsx)(n.p,{children:"By using the Admin UI, administrators can streamline their workflow, access\nessential functionalities with ease, and benefit from intuitive visualizations\nand controls. This approach not only simplifies the management of decentralized\nnetworks but also ensures that administrators have access to the best options\nand features available."}),"\n",(0,s.jsx)(n.h3,{id:"api-endpoints",children:"API Endpoints"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Root Key Request"})," - This endpoint allows administrators to add root keys\nfor secure authentication and access control within the decentralized network\nenvironment. Validation Challenge Generation"]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Pre requirements"}),' - Before calling "Root Key Request" endpoint, it is\nessential to first call the "/request-challenge" endpoint. This step is\nnecessary as the "Root Key Request" endpoint requires a challenge to be\npassed and verified during the process of adding the root key']}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/root-key"})]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Parameters"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"accountId"})," : The account identifier associated with the request."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"signature"})," : The signature generated by signing the challenge and message\nwith the wallet."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"publicKey"})," : The public key used for verification."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"callbackUrl"})," : The URL to which the response callback should be sent."]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"Note: The parameters for this POST request, including accountId, signature,\nand publicKey, are generated by signing the challenge and message with the\nwallet."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'curl -X POST \\\n-H "Content-Type: application/json" \\\n-d \'{"accountId": "", "signature": "", "publicKey": "", "callbackUrl": ""}\' \\\nhttp:///admin-api/root-key\n'})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: "Root key added" }\n> Error response\n { error: "Failed to add root key: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Request authentication challenge"})," - Administrators can utilize this\nendpoint to generate validation challenges, enabling users to authenticate\ntheir identity via wallet signatures for enhanced security measures."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/request-challenge"})]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"curl -X POST http:///admin-api/request-challenge\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: { challenge: } }\n> Error response\n { error: "Failed to fetch challenge: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Install Application"})," - This endpoint facilitates the installation of new\napplications on the node, expanding the functionality and capabilities of the\ndecentralized network ecosystem."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/install-application"})]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Parameters"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"application"})," : Application name - can be selected from the Admin UI"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"version"})," : Application release version - can be selected from the Admin UI"]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'curl -X POST \\\n-H "Content-Type: application/json" \\\n-d \'{"application": "", "version": ""}\' \\\nhttp:///admin-api/install-application\n'})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: "Application Installed" }\n> Error response\n { error: "Failed to install application: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"List installed Application"})," - This endpoint returns a list of installed\napplications, providing valuable insights into the current state of the\ndecentralized network ecosystem"]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"GET"})," ",(0,s.jsx)(n.code,{children:"/applications"})]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"curl -X GET http:///admin-api/applications\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: {\n applications:\n [{\n application_name: ,\n version: \n }]\n }}\n> Error response\n { error: "Failed to fetch installed applications: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Add Client Key"})," - Administrators can add new client keys via this\nendpoint, enabling seamless access and authentication for authorized users\nwithin the network."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"POST"})," ",(0,s.jsx)(n.code,{children:"/add-client-key"})]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Parameters"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"wallet_signature"})," : Signature generated with the wallet"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"payload"})," : Reqest payload containing message and metadata"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"wallet_metadata"})," : Crypto wallet metadata containing information for\nwallet_type and signing_key"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example call with curl"})}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'curl -X POST \\\n-H "Content-Type: application/json" \\\n-d \'{"wallet_signature": "", "payload": { "message": , "metadata": }. "wallet_metadata": {"wallet_type": , "signing_key": }}\' \\\nhttp:///admin-api/add-client-key\n'})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data: "Client key stored" }\n> Error response\n { error: "Failed to add client key: " }\n'})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Get the DID"})," - Fetches the Decentralized Identifier (DID) associated with\nthe node, providing a unique identifier for network entities and enabling\ninteroperability across decentralized applications."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"GET"})," ",(0,s.jsx)(n.code,{children:"/did"})]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"curl -X GET http:///admin-api/did\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Example response"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:'> Success response\n { data:\n {\n id: ,\n root_keys:\n [{\n signing_key: \n }]\n }\n }\n> Error response\n { error: "Failed to fetch DID: " }\n'})}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8355:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>a});var s=i(758);const t={},r=s.createContext(t);function l(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:l(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1a4e3797.da39caec.js b/assets/js/1a4e3797.d7d54df8.js similarity index 81% rename from assets/js/1a4e3797.da39caec.js rename to assets/js/1a4e3797.d7d54df8.js index 381ac942..fc4c340c 100644 --- a/assets/js/1a4e3797.da39caec.js +++ b/assets/js/1a4e3797.d7d54df8.js @@ -1,2 +1,2 @@ -/*! For license information please see 1a4e3797.da39caec.js.LICENSE.txt */ -(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2138],{8181:e=>{function t(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function r(e){return"function"==typeof e}function n(e){return"object"==typeof e&&null!==e}function i(e){return void 0===e}e.exports=t,t.prototype._events=void 0,t.prototype._maxListeners=void 0,t.defaultMaxListeners=10,t.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},t.prototype.emit=function(e){var t,s,a,c,o,u;if(this._events||(this._events={}),"error"===e&&(!this._events.error||n(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var h=new Error('Uncaught, unspecified "error" event. ('+t+")");throw h.context=t,h}if(i(s=this._events[e]))return!1;if(r(s))switch(arguments.length){case 1:s.call(this);break;case 2:s.call(this,arguments[1]);break;case 3:s.call(this,arguments[1],arguments[2]);break;default:c=Array.prototype.slice.call(arguments,1),s.apply(this,c)}else if(n(s))for(c=Array.prototype.slice.call(arguments,1),a=(u=s.slice()).length,o=0;o0&&this._events[e].length>a&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},t.prototype.on=t.prototype.addListener,t.prototype.once=function(e,t){if(!r(t))throw TypeError("listener must be a function");var n=!1;function i(){this.removeListener(e,i),n||(n=!0,t.apply(this,arguments))}return i.listener=t,this.on(e,i),this},t.prototype.removeListener=function(e,t){var i,s,a,c;if(!r(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(a=(i=this._events[e]).length,s=-1,i===t||r(i.listener)&&i.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(n(i)){for(c=a;c-- >0;)if(i[c]===t||i[c].listener&&i[c].listener===t){s=c;break}if(s<0)return this;1===i.length?(i.length=0,delete this._events[e]):i.splice(s,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},t.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(r(n=this._events[e]))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},t.prototype.listeners=function(e){return this._events&&this._events[e]?r(this._events[e])?[this._events[e]]:this._events[e].slice():[]},t.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(r(t))return 1;if(t)return t.length}return 0},t.listenerCount=function(e,t){return e.listenerCount(t)}},6678:(e,t,r)=>{"use strict";var n=r(7728),i=r(2538),s=r(6172),a=r(4908),c=r(7298);function o(e,t,r,i){return new n(e,t,r,i)}o.version=r(3015),o.AlgoliaSearchHelper=n,o.SearchParameters=a,o.RecommendParameters=i,o.SearchResults=c,o.RecommendResults=s,e.exports=o},7085:(e,t,r)=>{"use strict";var n=r(8181);function i(e,t,r){this.main=e,this.fn=t,this.recommendFn=r,this.lastResults=null,this.lastRecommendResults=null}r(7461)(i,n),i.prototype.detach=function(){this.removeAllListeners(),this.main.detachDerivedHelper(this)},i.prototype.getModifiedState=function(e){return this.fn(e)},i.prototype.getModifiedRecommendState=function(e){return this.recommendFn(e)},e.exports=i},2538:e=>{"use strict";function t(e){e=e||{},this.params=e.params||[]}t.prototype={constructor:t,addParams:function(e){var r=this.params.slice();return r.push(e),new t({params:r})},removeParams:function(e){return new t({params:this.params.filter((function(t){return t.$$id!==e}))})},addFrequentlyBoughtTogether:function(e){return this.addParams(Object.assign({},e,{model:"bought-together"}))},addRelatedProducts:function(e){return this.addParams(Object.assign({},e,{model:"related-products"}))},addTrendingItems:function(e){return this.addParams(Object.assign({},e,{model:"trending-items"}))},addTrendingFacets:function(e){return this.addParams(Object.assign({},e,{model:"trending-facets"}))},addLookingSimilar:function(e){return this.addParams(Object.assign({},e,{model:"looking-similar"}))},_buildQueries:function(e,t){return this.params.filter((function(e){return void 0===t[e.$$id]})).map((function(t){var r=Object.assign({},t,{indexName:e,threshold:t.threshold||0});return delete r.$$id,r}))}},e.exports=t},6172:e=>{"use strict";function t(e,t){this._state=e,this._rawResults={};var r=this;e.params.forEach((function(e){var n=e.$$id;r[n]=t[n],r._rawResults[n]=t[n]}))}t.prototype={constructor:t},e.exports=t},2567:(e,t,r)=>{"use strict";var n=r(4905),i=r(5512),s=r(5188),a={addRefinement:function(e,t,r){if(a.isRefined(e,t,r))return e;var i=""+r,s=e[t]?e[t].concat(i):[i],c={};return c[t]=s,n({},c,e)},removeRefinement:function(e,t,r){if(void 0===r)return a.clearRefinement(e,(function(e,r){return t===r}));var n=""+r;return a.clearRefinement(e,(function(e,r){return t===r&&n===e}))},toggleRefinement:function(e,t,r){if(void 0===r)throw new Error("toggleRefinement should be used with a value");return a.isRefined(e,t,r)?a.removeRefinement(e,t,r):a.addRefinement(e,t,r)},clearRefinement:function(e,t,r){if(void 0===t)return i(e)?{}:e;if("string"==typeof t)return s(e,[t]);if("function"==typeof t){var n=!1,a=Object.keys(e).reduce((function(i,s){var a=e[s]||[],c=a.filter((function(e){return!t(e,s,r)}));return c.length!==a.length&&(n=!0),i[s]=c,i}),{});return n?a:e}},isRefined:function(e,t,r){var n=Boolean(e[t])&&e[t].length>0;if(void 0===r||!n)return n;var i=""+r;return-1!==e[t].indexOf(i)}};e.exports=a},4908:(e,t,r)=>{"use strict";var n=r(4905),i=r(6690),s=r(8280),a=r(6953),c=r(5512),o=r(5188),u=r(2374),h=r(5727),f=r(2567);function l(e,t){return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((function(e,r){return l(t[r],e)})):e===t}function m(e){var t=e?m._parseNumbers(e):{};void 0===t.userToken||h(t.userToken)||console.warn("[algoliasearch-helper] The `userToken` parameter is invalid. This can lead to wrong analytics.\n - Format: [a-zA-Z0-9_-]{1,64}"),this.facets=t.facets||[],this.disjunctiveFacets=t.disjunctiveFacets||[],this.hierarchicalFacets=t.hierarchicalFacets||[],this.facetsRefinements=t.facetsRefinements||{},this.facetsExcludes=t.facetsExcludes||{},this.disjunctiveFacetsRefinements=t.disjunctiveFacetsRefinements||{},this.numericRefinements=t.numericRefinements||{},this.tagRefinements=t.tagRefinements||[],this.hierarchicalFacetsRefinements=t.hierarchicalFacetsRefinements||{};var r=this;Object.keys(t).forEach((function(e){var n=-1!==m.PARAMETERS.indexOf(e),i=void 0!==t[e];!n&&i&&(r[e]=t[e])}))}m.PARAMETERS=Object.keys(new m),m._parseNumbers=function(e){if(e instanceof m)return e;var t={};if(["aroundPrecision","aroundRadius","getRankingInfo","minWordSizefor2Typos","minWordSizefor1Typo","page","maxValuesPerFacet","distinct","minimumAroundRadius","hitsPerPage","minProximity"].forEach((function(r){var n=e[r];if("string"==typeof n){var i=parseFloat(n);t[r]=isNaN(i)?n:i}})),Array.isArray(e.insideBoundingBox)&&(t.insideBoundingBox=e.insideBoundingBox.map((function(e){return Array.isArray(e)?e.map((function(e){return parseFloat(e)})):e}))),e.numericRefinements){var r={};Object.keys(e.numericRefinements).forEach((function(t){var n=e.numericRefinements[t]||{};r[t]={},Object.keys(n).forEach((function(e){var i=n[e].map((function(e){return Array.isArray(e)?e.map((function(e){return"string"==typeof e?parseFloat(e):e})):"string"==typeof e?parseFloat(e):e}));r[t][e]=i}))})),t.numericRefinements=r}return a(e,t)},m.make=function(e){var t=new m(e);return(e.hierarchicalFacets||[]).forEach((function(e){if(e.rootPath){var r=t.getHierarchicalRefinement(e.name);r.length>0&&0!==r[0].indexOf(e.rootPath)&&(t=t.clearRefinements(e.name)),0===(r=t.getHierarchicalRefinement(e.name)).length&&(t=t.toggleHierarchicalFacetRefinement(e.name,e.rootPath))}})),t},m.validate=function(e,t){var r=t||{};return e.tagFilters&&r.tagRefinements&&r.tagRefinements.length>0?new Error("[Tags] Cannot switch from the managed tag API to the advanced API. It is probably an error, if it is really what you want, you should first clear the tags with clearTags method."):e.tagRefinements.length>0&&r.tagFilters?new Error("[Tags] Cannot switch from the advanced tag API to the managed API. It is probably an error, if it is not, you should first clear the tags with clearTags method."):e.numericFilters&&r.numericRefinements&&c(r.numericRefinements)?new Error("[Numeric filters] Can't switch from the advanced to the managed API. It is probably an error, if this is really what you want, you have to first clear the numeric filters."):c(e.numericRefinements)&&r.numericFilters?new Error("[Numeric filters] Can't switch from the managed API to the advanced. It is probably an error, if this is really what you want, you have to first clear the numeric filters."):null},m.prototype={constructor:m,clearRefinements:function(e){var t={numericRefinements:this._clearNumericRefinements(e),facetsRefinements:f.clearRefinement(this.facetsRefinements,e,"conjunctiveFacet"),facetsExcludes:f.clearRefinement(this.facetsExcludes,e,"exclude"),disjunctiveFacetsRefinements:f.clearRefinement(this.disjunctiveFacetsRefinements,e,"disjunctiveFacet"),hierarchicalFacetsRefinements:f.clearRefinement(this.hierarchicalFacetsRefinements,e,"hierarchicalFacet")};return t.numericRefinements===this.numericRefinements&&t.facetsRefinements===this.facetsRefinements&&t.facetsExcludes===this.facetsExcludes&&t.disjunctiveFacetsRefinements===this.disjunctiveFacetsRefinements&&t.hierarchicalFacetsRefinements===this.hierarchicalFacetsRefinements?this:this.setQueryParameters(t)},clearTags:function(){return void 0===this.tagFilters&&0===this.tagRefinements.length?this:this.setQueryParameters({tagFilters:void 0,tagRefinements:[]})},setIndex:function(e){return e===this.index?this:this.setQueryParameters({index:e})},setQuery:function(e){return e===this.query?this:this.setQueryParameters({query:e})},setPage:function(e){return e===this.page?this:this.setQueryParameters({page:e})},setFacets:function(e){return this.setQueryParameters({facets:e})},setDisjunctiveFacets:function(e){return this.setQueryParameters({disjunctiveFacets:e})},setHitsPerPage:function(e){return this.hitsPerPage===e?this:this.setQueryParameters({hitsPerPage:e})},setTypoTolerance:function(e){return this.typoTolerance===e?this:this.setQueryParameters({typoTolerance:e})},addNumericRefinement:function(e,t,r){var n=u(r);if(this.isNumericRefined(e,t,n))return this;var i=a({},this.numericRefinements);return i[e]=a({},i[e]),i[e][t]?(i[e][t]=i[e][t].slice(),i[e][t].push(n)):i[e][t]=[n],this.setQueryParameters({numericRefinements:i})},getConjunctiveRefinements:function(e){return this.isConjunctiveFacet(e)&&this.facetsRefinements[e]||[]},getDisjunctiveRefinements:function(e){return this.isDisjunctiveFacet(e)&&this.disjunctiveFacetsRefinements[e]||[]},getHierarchicalRefinement:function(e){return this.hierarchicalFacetsRefinements[e]||[]},getExcludeRefinements:function(e){return this.isConjunctiveFacet(e)&&this.facetsExcludes[e]||[]},removeNumericRefinement:function(e,t,r){var n=r;return void 0!==n?this.isNumericRefined(e,t,n)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(r,i){return i===e&&r.op===t&&l(r.val,u(n))}))}):this:void 0!==t?this.isNumericRefined(e,t)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(r,n){return n===e&&r.op===t}))}):this:this.isNumericRefined(e)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(t,r){return r===e}))}):this},getNumericRefinements:function(e){return this.numericRefinements[e]||{}},getNumericRefinement:function(e,t){return this.numericRefinements[e]&&this.numericRefinements[e][t]},_clearNumericRefinements:function(e){if(void 0===e)return c(this.numericRefinements)?{}:this.numericRefinements;if("string"==typeof e)return o(this.numericRefinements,[e]);if("function"==typeof e){var t=!1,r=this.numericRefinements,n=Object.keys(r).reduce((function(n,i){var s=r[i],a={};return s=s||{},Object.keys(s).forEach((function(r){var n=s[r]||[],c=[];n.forEach((function(t){e({val:t,op:r},i,"numeric")||c.push(t)})),c.length!==n.length&&(t=!0),a[r]=c})),n[i]=a,n}),{});return t?n:this.numericRefinements}},addFacet:function(e){return this.isConjunctiveFacet(e)?this:this.setQueryParameters({facets:this.facets.concat([e])})},addDisjunctiveFacet:function(e){return this.isDisjunctiveFacet(e)?this:this.setQueryParameters({disjunctiveFacets:this.disjunctiveFacets.concat([e])})},addHierarchicalFacet:function(e){if(this.isHierarchicalFacet(e.name))throw new Error("Cannot declare two hierarchical facets with the same name: `"+e.name+"`");return this.setQueryParameters({hierarchicalFacets:this.hierarchicalFacets.concat([e])})},addFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsRefinements,e,t)?this:this.setQueryParameters({facetsRefinements:f.addRefinement(this.facetsRefinements,e,t)})},addExcludeRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsExcludes,e,t)?this:this.setQueryParameters({facetsExcludes:f.addRefinement(this.facetsExcludes,e,t)})},addDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return f.isRefined(this.disjunctiveFacetsRefinements,e,t)?this:this.setQueryParameters({disjunctiveFacetsRefinements:f.addRefinement(this.disjunctiveFacetsRefinements,e,t)})},addTagRefinement:function(e){if(this.isTagRefined(e))return this;var t={tagRefinements:this.tagRefinements.concat(e)};return this.setQueryParameters(t)},removeFacet:function(e){return this.isConjunctiveFacet(e)?this.clearRefinements(e).setQueryParameters({facets:this.facets.filter((function(t){return t!==e}))}):this},removeDisjunctiveFacet:function(e){return this.isDisjunctiveFacet(e)?this.clearRefinements(e).setQueryParameters({disjunctiveFacets:this.disjunctiveFacets.filter((function(t){return t!==e}))}):this},removeHierarchicalFacet:function(e){return this.isHierarchicalFacet(e)?this.clearRefinements(e).setQueryParameters({hierarchicalFacets:this.hierarchicalFacets.filter((function(t){return t.name!==e}))}):this},removeFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsRefinements,e,t)?this.setQueryParameters({facetsRefinements:f.removeRefinement(this.facetsRefinements,e,t)}):this},removeExcludeRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsExcludes,e,t)?this.setQueryParameters({facetsExcludes:f.removeRefinement(this.facetsExcludes,e,t)}):this},removeDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return f.isRefined(this.disjunctiveFacetsRefinements,e,t)?this.setQueryParameters({disjunctiveFacetsRefinements:f.removeRefinement(this.disjunctiveFacetsRefinements,e,t)}):this},removeTagRefinement:function(e){if(!this.isTagRefined(e))return this;var t={tagRefinements:this.tagRefinements.filter((function(t){return t!==e}))};return this.setQueryParameters(t)},toggleRefinement:function(e,t){return this.toggleFacetRefinement(e,t)},toggleFacetRefinement:function(e,t){if(this.isHierarchicalFacet(e))return this.toggleHierarchicalFacetRefinement(e,t);if(this.isConjunctiveFacet(e))return this.toggleConjunctiveFacetRefinement(e,t);if(this.isDisjunctiveFacet(e))return this.toggleDisjunctiveFacetRefinement(e,t);throw new Error("Cannot refine the undeclared facet "+e+"; it should be added to the helper options facets, disjunctiveFacets or hierarchicalFacets")},toggleConjunctiveFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return this.setQueryParameters({facetsRefinements:f.toggleRefinement(this.facetsRefinements,e,t)})},toggleExcludeFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return this.setQueryParameters({facetsExcludes:f.toggleRefinement(this.facetsExcludes,e,t)})},toggleDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return this.setQueryParameters({disjunctiveFacetsRefinements:f.toggleRefinement(this.disjunctiveFacetsRefinements,e,t)})},toggleHierarchicalFacetRefinement:function(e,t){if(!this.isHierarchicalFacet(e))throw new Error(e+" is not defined in the hierarchicalFacets attribute of the helper configuration");var r=this._getHierarchicalFacetSeparator(this.getHierarchicalFacetByName(e)),i={};return void 0!==this.hierarchicalFacetsRefinements[e]&&this.hierarchicalFacetsRefinements[e].length>0&&(this.hierarchicalFacetsRefinements[e][0]===t||0===this.hierarchicalFacetsRefinements[e][0].indexOf(t+r))?-1===t.indexOf(r)?i[e]=[]:i[e]=[t.slice(0,t.lastIndexOf(r))]:i[e]=[t],this.setQueryParameters({hierarchicalFacetsRefinements:n({},i,this.hierarchicalFacetsRefinements)})},addHierarchicalFacetRefinement:function(e,t){if(this.isHierarchicalFacetRefined(e))throw new Error(e+" is already refined.");if(!this.isHierarchicalFacet(e))throw new Error(e+" is not defined in the hierarchicalFacets attribute of the helper configuration.");var r={};return r[e]=[t],this.setQueryParameters({hierarchicalFacetsRefinements:n({},r,this.hierarchicalFacetsRefinements)})},removeHierarchicalFacetRefinement:function(e){if(!this.isHierarchicalFacetRefined(e))return this;var t={};return t[e]=[],this.setQueryParameters({hierarchicalFacetsRefinements:n({},t,this.hierarchicalFacetsRefinements)})},toggleTagRefinement:function(e){return this.isTagRefined(e)?this.removeTagRefinement(e):this.addTagRefinement(e)},isDisjunctiveFacet:function(e){return this.disjunctiveFacets.indexOf(e)>-1},isHierarchicalFacet:function(e){return void 0!==this.getHierarchicalFacetByName(e)},isConjunctiveFacet:function(e){return this.facets.indexOf(e)>-1},isFacetRefined:function(e,t){return!!this.isConjunctiveFacet(e)&&f.isRefined(this.facetsRefinements,e,t)},isExcludeRefined:function(e,t){return!!this.isConjunctiveFacet(e)&&f.isRefined(this.facetsExcludes,e,t)},isDisjunctiveFacetRefined:function(e,t){return!!this.isDisjunctiveFacet(e)&&f.isRefined(this.disjunctiveFacetsRefinements,e,t)},isHierarchicalFacetRefined:function(e,t){if(!this.isHierarchicalFacet(e))return!1;var r=this.getHierarchicalRefinement(e);return t?-1!==r.indexOf(t):r.length>0},isNumericRefined:function(e,t,r){if(void 0===r&&void 0===t)return Boolean(this.numericRefinements[e]);var n=this.numericRefinements[e]&&void 0!==this.numericRefinements[e][t];if(void 0===r||!n)return n;var s,a,c=u(r),o=void 0!==(s=this.numericRefinements[e][t],a=c,i(s,(function(e){return l(e,a)})));return n&&o},isTagRefined:function(e){return-1!==this.tagRefinements.indexOf(e)},getRefinedDisjunctiveFacets:function(){var e=this,t=s(Object.keys(this.numericRefinements).filter((function(t){return Object.keys(e.numericRefinements[t]).length>0})),this.disjunctiveFacets);return Object.keys(this.disjunctiveFacetsRefinements).filter((function(t){return e.disjunctiveFacetsRefinements[t].length>0})).concat(t).concat(this.getRefinedHierarchicalFacets()).sort()},getRefinedHierarchicalFacets:function(){var e=this;return s(this.hierarchicalFacets.map((function(e){return e.name})),Object.keys(this.hierarchicalFacetsRefinements).filter((function(t){return e.hierarchicalFacetsRefinements[t].length>0}))).sort()},getUnrefinedDisjunctiveFacets:function(){var e=this.getRefinedDisjunctiveFacets();return this.disjunctiveFacets.filter((function(t){return-1===e.indexOf(t)}))},managedParameters:["index","facets","disjunctiveFacets","facetsRefinements","hierarchicalFacets","facetsExcludes","disjunctiveFacetsRefinements","numericRefinements","tagRefinements","hierarchicalFacetsRefinements"],getQueryParams:function(){var e=this.managedParameters,t={},r=this;return Object.keys(this).forEach((function(n){var i=r[n];-1===e.indexOf(n)&&void 0!==i&&(t[n]=i)})),t},setQueryParameter:function(e,t){if(this[e]===t)return this;var r={};return r[e]=t,this.setQueryParameters(r)},setQueryParameters:function(e){if(!e)return this;var t=m.validate(this,e);if(t)throw t;var r=this,n=m._parseNumbers(e),i=Object.keys(this).reduce((function(e,t){return e[t]=r[t],e}),{}),s=Object.keys(n).reduce((function(e,t){var r=void 0!==e[t],i=void 0!==n[t];return r&&!i?o(e,[t]):(i&&(e[t]=n[t]),e)}),i);return new this.constructor(s)},resetPage:function(){return void 0===this.page?this:this.setPage(0)},_getHierarchicalFacetSortBy:function(e){return e.sortBy||["isRefined:desc","name:asc"]},_getHierarchicalFacetSeparator:function(e){return e.separator||" > "},_getHierarchicalRootPath:function(e){return e.rootPath||null},_getHierarchicalShowParentLevel:function(e){return"boolean"!=typeof e.showParentLevel||e.showParentLevel},getHierarchicalFacetByName:function(e){return i(this.hierarchicalFacets,(function(t){return t.name===e}))},getHierarchicalFacetBreadcrumb:function(e){if(!this.isHierarchicalFacet(e))return[];var t=this.getHierarchicalRefinement(e)[0];if(!t)return[];var r=this._getHierarchicalFacetSeparator(this.getHierarchicalFacetByName(e));return t.split(r).map((function(e){return e.trim()}))},toString:function(){return JSON.stringify(this,null,2)}},e.exports=m},3222:(e,t,r)=>{"use strict";e.exports=function(e){return function(t,r){var n=e.hierarchicalFacets[r],u=e.hierarchicalFacetsRefinements[n.name]&&e.hierarchicalFacetsRefinements[n.name][0]||"",h=e._getHierarchicalFacetSeparator(n),f=e._getHierarchicalRootPath(n),l=e._getHierarchicalShowParentLevel(n),m=s(e._getHierarchicalFacetSortBy(n)),d=t.every((function(e){return e.exhaustive})),p=function(e,t,r,n,s){return function(u,h,f){var l=u;if(f>0){var m=0;for(l=u;m{"use strict";var n=r(8112),i=r(4905),s=r(5118),a=r(6690),c=r(8060),o=r(6090),u=r(6953),h=r(9940),f=s.escapeFacetValue,l=s.unescapeFacetValue,m=r(3222);function d(e){var t={};return e.forEach((function(e,r){t[e]=r})),t}function p(e,t,r){t&&t[r]&&(e.stats=t[r])}function g(e,t,r){var s=t[0]||{};this._rawResults=t;var o=this;Object.keys(s).forEach((function(e){o[e]=s[e]}));var h=u({persistHierarchicalRootCount:!1},r);Object.keys(h).forEach((function(e){o[e]=h[e]})),this.processingTimeMS=t.reduce((function(e,t){return void 0===t.processingTimeMS?e:e+t.processingTimeMS}),0),this.disjunctiveFacets=[],this.hierarchicalFacets=e.hierarchicalFacets.map((function(){return[]})),this.facets=[];var f=e.getRefinedDisjunctiveFacets(),g=d(e.facets),v=d(e.disjunctiveFacets),y=1,R=s.facets||{};Object.keys(R).forEach((function(t){var r,n,i=R[t],u=(r=e.hierarchicalFacets,n=t,a(r,(function(e){return(e.attributes||[]).indexOf(n)>-1})));if(u){var h=u.attributes.indexOf(t),f=c(e.hierarchicalFacets,(function(e){return e.name===u.name}));o.hierarchicalFacets[f][h]={attribute:t,data:i,exhaustive:s.exhaustiveFacetsCount}}else{var l,m=-1!==e.disjunctiveFacets.indexOf(t),d=-1!==e.facets.indexOf(t);m&&(l=v[t],o.disjunctiveFacets[l]={name:t,data:i,exhaustive:s.exhaustiveFacetsCount},p(o.disjunctiveFacets[l],s.facets_stats,t)),d&&(l=g[t],o.facets[l]={name:t,data:i,exhaustive:s.exhaustiveFacetsCount},p(o.facets[l],s.facets_stats,t))}})),this.hierarchicalFacets=n(this.hierarchicalFacets),f.forEach((function(r){var n=t[y],a=n&&n.facets?n.facets:{},h=e.getHierarchicalFacetByName(r);Object.keys(a).forEach((function(t){var r,f=a[t];if(h){r=c(e.hierarchicalFacets,(function(e){return e.name===h.name}));var m=c(o.hierarchicalFacets[r],(function(e){return e.attribute===t}));if(-1===m)return;o.hierarchicalFacets[r][m].data=u({},o.hierarchicalFacets[r][m].data,f)}else{r=v[t];var d=s.facets&&s.facets[t]||{};o.disjunctiveFacets[r]={name:t,data:i({},f,d),exhaustive:n.exhaustiveFacetsCount},p(o.disjunctiveFacets[r],n.facets_stats,t),e.disjunctiveFacetsRefinements[t]&&e.disjunctiveFacetsRefinements[t].forEach((function(n){!o.disjunctiveFacets[r].data[n]&&e.disjunctiveFacetsRefinements[t].indexOf(l(n))>-1&&(o.disjunctiveFacets[r].data[n]=0)}))}})),y++})),e.getRefinedHierarchicalFacets().forEach((function(r){var n=e.getHierarchicalFacetByName(r),s=e._getHierarchicalFacetSeparator(n),a=e.getHierarchicalRefinement(r);0===a.length||a[0].split(s).length<2||t.slice(y).forEach((function(t){var r=t&&t.facets?t.facets:{};Object.keys(r).forEach((function(t){var u=r[t],h=c(e.hierarchicalFacets,(function(e){return e.name===n.name})),f=c(o.hierarchicalFacets[h],(function(e){return e.attribute===t}));if(-1!==f){var l={};if(a.length>0&&!o.persistHierarchicalRootCount){var m=a[0].split(s)[0];l[m]=o.hierarchicalFacets[h][f].data[m]}o.hierarchicalFacets[h][f].data=i(l,u,o.hierarchicalFacets[h][f].data)}})),y++}))})),Object.keys(e.facetsExcludes).forEach((function(t){var r=e.facetsExcludes[t],n=g[t];o.facets[n]={name:t,data:R[t],exhaustive:s.exhaustiveFacetsCount},r.forEach((function(e){o.facets[n]=o.facets[n]||{name:t},o.facets[n].data=o.facets[n].data||{},o.facets[n].data[e]=0}))})),this.hierarchicalFacets=this.hierarchicalFacets.map(m(e)),this.facets=n(this.facets),this.disjunctiveFacets=n(this.disjunctiveFacets),this._state=e}function v(e,t){function r(e){return e.name===t}if(e._state.isConjunctiveFacet(t)){var n=a(e.facets,r);return n?Object.keys(n.data).map((function(r){var i=f(r);return{name:r,escapedValue:i,count:n.data[r],isRefined:e._state.isFacetRefined(t,i),isExcluded:e._state.isExcludeRefined(t,r)}})):[]}if(e._state.isDisjunctiveFacet(t)){var i=a(e.disjunctiveFacets,r);return i?Object.keys(i.data).map((function(r){var n=f(r);return{name:r,escapedValue:n,count:i.data[r],isRefined:e._state.isDisjunctiveFacetRefined(t,n)}})):[]}if(e._state.isHierarchicalFacet(t)){var s=a(e.hierarchicalFacets,r);if(!s)return s;var c=e._state.getHierarchicalFacetByName(t),o=e._state._getHierarchicalFacetSeparator(c),u=l(e._state.getHierarchicalRefinement(t)[0]||"");0===u.indexOf(c.rootPath)&&(u=u.replace(c.rootPath+o,""));var h=u.split(o);return h.unshift(t),y(s,h,0),s}}function y(e,t,r){e.isRefined=e.name===(t[r]&&t[r].trim()),e.data&&e.data.forEach((function(e){y(e,t,r+1)}))}function R(e,t,r,n){if(n=n||0,Array.isArray(t))return e(t,r[n]);if(!t.data||0===t.data.length)return t;var s=t.data.map((function(t){return R(e,t,r,n+1)})),a=e(s,r[n]);return i({data:a},t)}function F(e,t){var r=a(e,(function(e){return e.name===t}));return r&&r.stats}function b(e,t,r,n,i){var s=a(i,(function(e){return e.name===r})),c=s&&s.data&&s.data[n]?s.data[n]:0,o=s&&s.exhaustive||!1;return{type:t,attributeName:r,name:n,count:c,exhaustive:o}}g.prototype.getFacetByName=function(e){function t(t){return t.name===e}return a(this.facets,t)||a(this.disjunctiveFacets,t)||a(this.hierarchicalFacets,t)},g.DEFAULT_SORT=["isRefined:desc","count:desc","name:asc"],g.prototype.getFacetValues=function(e,t){var r=v(this,e);if(r){var n,s=i({},t,{sortBy:g.DEFAULT_SORT,facetOrdering:!(t&&t.sortBy)}),a=this;if(Array.isArray(r))n=[e];else n=a._state.getHierarchicalFacetByName(r.name).attributes;return R((function(e,t){if(s.facetOrdering){var r=function(e,t){return e.renderingContent&&e.renderingContent.facetOrdering&&e.renderingContent.facetOrdering.values&&e.renderingContent.facetOrdering.values[t]}(a,t);if(r)return function(e,t){var r=[],n=[],i=t.hide||[],s=(t.order||[]).reduce((function(e,t,r){return e[t]=r,e}),{});e.forEach((function(e){var t=e.path||e.name,a=i.indexOf(t)>-1;a||void 0===s[t]?a||n.push(e):r[s[t]]=e})),r=r.filter((function(e){return e}));var a,c=t.sortRemainingBy;return"hidden"===c?r:(a="alpha"===c?[["path","name"],["asc","asc"]]:[["count"],["desc"]],r.concat(h(n,a[0],a[1])))}(e,r)}if(Array.isArray(s.sortBy)){var n=o(s.sortBy,g.DEFAULT_SORT);return h(e,n[0],n[1])}if("function"==typeof s.sortBy)return function(e,t){return t.sort(e)}(s.sortBy,e);throw new Error("options.sortBy is optional but if defined it must be either an array of string (predicates) or a sorting function")}),r,n)}},g.prototype.getFacetStats=function(e){return this._state.isConjunctiveFacet(e)?F(this.facets,e):this._state.isDisjunctiveFacet(e)?F(this.disjunctiveFacets,e):void 0},g.prototype.getRefinements=function(){var e=this._state,t=this,r=[];return Object.keys(e.facetsRefinements).forEach((function(n){e.facetsRefinements[n].forEach((function(i){r.push(b(e,"facet",n,i,t.facets))}))})),Object.keys(e.facetsExcludes).forEach((function(n){e.facetsExcludes[n].forEach((function(i){r.push(b(e,"exclude",n,i,t.facets))}))})),Object.keys(e.disjunctiveFacetsRefinements).forEach((function(n){e.disjunctiveFacetsRefinements[n].forEach((function(i){r.push(b(e,"disjunctive",n,i,t.disjunctiveFacets))}))})),Object.keys(e.hierarchicalFacetsRefinements).forEach((function(n){e.hierarchicalFacetsRefinements[n].forEach((function(i){r.push(function(e,t,r,n){var i=e.getHierarchicalFacetByName(t),s=e._getHierarchicalFacetSeparator(i),c=r.split(s),o=a(n,(function(e){return e.name===t})),u=c.reduce((function(e,t){var r=e&&a(e.data,(function(e){return e.name===t}));return void 0!==r?r:e}),o),h=u&&u.count||0,f=u&&u.exhaustive||!1,l=u&&u.path||"";return{type:"hierarchical",attributeName:t,name:l,count:h,exhaustive:f}}(e,n,i,t.hierarchicalFacets))}))})),Object.keys(e.numericRefinements).forEach((function(t){var n=e.numericRefinements[t];Object.keys(n).forEach((function(e){n[e].forEach((function(n){r.push({type:"numeric",attributeName:t,name:n,numericValue:n,operator:e})}))}))})),e.tagRefinements.forEach((function(e){r.push({type:"tag",attributeName:"_tags",name:e})})),r},e.exports=g},7728:(e,t,r)=>{"use strict";var n=r(8181),i=r(7085),s=r(5118).escapeFacetValue,a=r(7461),c=r(6953),o=r(5512),u=r(5188),h=r(2538),f=r(6172),l=r(2927),m=r(4908),d=r(7298),p=r(3464),g=r(3015);function v(e,t,r,n){"function"==typeof e.addAlgoliaAgent&&e.addAlgoliaAgent("JS Helper ("+g+")"),this.setClient(e);var i=r||{};i.index=t,this.state=m.make(i),this.recommendState=new h({params:i.recommendState}),this.lastResults=null,this.lastRecommendResults=null,this._queryId=0,this._recommendQueryId=0,this._lastQueryIdReceived=-1,this._lastRecommendQueryIdReceived=-1,this.derivedHelpers=[],this._currentNbQueries=0,this._currentNbRecommendQueries=0,this._searchResultsOptions=n,this._recommendCache={}}function y(e){if(e<0)throw new Error("Page requested below 0.");return this._change({state:this.state.setPage(e),isPageReset:!1}),this}function R(){return this.state.page}a(v,n),v.prototype.search=function(){return this._search({onlyWithDerivedHelpers:!1}),this},v.prototype.searchOnlyWithDerivedHelpers=function(){return this._search({onlyWithDerivedHelpers:!0}),this},v.prototype.recommend=function(){return this._recommend(),this},v.prototype.getQuery=function(){var e=this.state;return l._getHitsSearchParams(e)},v.prototype.searchOnce=function(e,t){var r=e?this.state.setQueryParameters(e):this.state,n=l._getQueries(r.index,r),i=this;if(this._currentNbQueries++,this.emit("searchOnce",{state:r}),!t)return this.client.search(n).then((function(e){return i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),{content:new d(r,e.results),state:r,_originalResponse:e}}),(function(e){throw i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),e}));this.client.search(n).then((function(e){i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),t(null,new d(r,e.results),r)})).catch((function(e){i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),t(e,null,r)}))},v.prototype.findAnswers=function(e){console.warn("[algoliasearch-helper] answers is no longer supported");var t=this.state,r=this.derivedHelpers[0];if(!r)return Promise.resolve([]);var n=r.getModifiedState(t),i=c({attributesForPrediction:e.attributesForPrediction,nbHits:e.nbHits},{params:u(l._getHitsSearchParams(n),["attributesToSnippet","hitsPerPage","restrictSearchableAttributes","snippetEllipsisText"])}),s="search for answers was called, but this client does not have a function client.initIndex(index).findAnswers";if("function"!=typeof this.client.initIndex)throw new Error(s);var a=this.client.initIndex(n.index);if("function"!=typeof a.findAnswers)throw new Error(s);return a.findAnswers(n.query,e.queryLanguages,i)},v.prototype.searchForFacetValues=function(e,t,r,n){var i="function"==typeof this.client.searchForFacetValues,a="function"==typeof this.client.initIndex;if(!i&&!a&&"function"!=typeof this.client.search)throw new Error("search for facet values (searchable) was called, but this client does not have a function client.searchForFacetValues or client.initIndex(index).searchForFacetValues");var c=this.state.setQueryParameters(n||{}),o=c.isDisjunctiveFacet(e),u=l.getSearchForFacetQuery(e,t,r,c);this._currentNbQueries++;var h,f=this;return i?h=this.client.searchForFacetValues([{indexName:c.index,params:u}]):a?h=this.client.initIndex(c.index).searchForFacetValues(u):(delete u.facetName,h=this.client.search([{type:"facet",facet:e,indexName:c.index,params:u}]).then((function(e){return e.results[0]}))),this.emit("searchForFacetValues",{state:c,facet:e,query:t}),h.then((function(t){return f._currentNbQueries--,0===f._currentNbQueries&&f.emit("searchQueueEmpty"),(t=Array.isArray(t)?t[0]:t).facetHits.forEach((function(t){t.escapedValue=s(t.value),t.isRefined=o?c.isDisjunctiveFacetRefined(e,t.escapedValue):c.isFacetRefined(e,t.escapedValue)})),t}),(function(e){throw f._currentNbQueries--,0===f._currentNbQueries&&f.emit("searchQueueEmpty"),e}))},v.prototype.setQuery=function(e){return this._change({state:this.state.resetPage().setQuery(e),isPageReset:!0}),this},v.prototype.clearRefinements=function(e){return this._change({state:this.state.resetPage().clearRefinements(e),isPageReset:!0}),this},v.prototype.clearTags=function(){return this._change({state:this.state.resetPage().clearTags(),isPageReset:!0}),this},v.prototype.addDisjunctiveFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addDisjunctiveFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.addDisjunctiveRefine=function(){return this.addDisjunctiveFacetRefinement.apply(this,arguments)},v.prototype.addHierarchicalFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addHierarchicalFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.addNumericRefinement=function(e,t,r){return this._change({state:this.state.resetPage().addNumericRefinement(e,t,r),isPageReset:!0}),this},v.prototype.addFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.addRefine=function(){return this.addFacetRefinement.apply(this,arguments)},v.prototype.addFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().addExcludeRefinement(e,t),isPageReset:!0}),this},v.prototype.addExclude=function(){return this.addFacetExclusion.apply(this,arguments)},v.prototype.addTag=function(e){return this._change({state:this.state.resetPage().addTagRefinement(e),isPageReset:!0}),this},v.prototype.addFrequentlyBoughtTogether=function(e){return this._recommendChange({state:this.recommendState.addFrequentlyBoughtTogether(e)}),this},v.prototype.addRelatedProducts=function(e){return this._recommendChange({state:this.recommendState.addRelatedProducts(e)}),this},v.prototype.addTrendingItems=function(e){return this._recommendChange({state:this.recommendState.addTrendingItems(e)}),this},v.prototype.addTrendingFacets=function(e){return this._recommendChange({state:this.recommendState.addTrendingFacets(e)}),this},v.prototype.addLookingSimilar=function(e){return this._recommendChange({state:this.recommendState.addLookingSimilar(e)}),this},v.prototype.removeNumericRefinement=function(e,t,r){return this._change({state:this.state.resetPage().removeNumericRefinement(e,t,r),isPageReset:!0}),this},v.prototype.removeDisjunctiveFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().removeDisjunctiveFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.removeDisjunctiveRefine=function(){return this.removeDisjunctiveFacetRefinement.apply(this,arguments)},v.prototype.removeHierarchicalFacetRefinement=function(e){return this._change({state:this.state.resetPage().removeHierarchicalFacetRefinement(e),isPageReset:!0}),this},v.prototype.removeFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().removeFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.removeRefine=function(){return this.removeFacetRefinement.apply(this,arguments)},v.prototype.removeFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().removeExcludeRefinement(e,t),isPageReset:!0}),this},v.prototype.removeExclude=function(){return this.removeFacetExclusion.apply(this,arguments)},v.prototype.removeTag=function(e){return this._change({state:this.state.resetPage().removeTagRefinement(e),isPageReset:!0}),this},v.prototype.removeFrequentlyBoughtTogether=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeRelatedProducts=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeTrendingItems=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeTrendingFacets=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeLookingSimilar=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.toggleFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().toggleExcludeFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.toggleExclude=function(){return this.toggleFacetExclusion.apply(this,arguments)},v.prototype.toggleRefinement=function(e,t){return this.toggleFacetRefinement(e,t)},v.prototype.toggleFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().toggleFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.toggleRefine=function(){return this.toggleFacetRefinement.apply(this,arguments)},v.prototype.toggleTag=function(e){return this._change({state:this.state.resetPage().toggleTagRefinement(e),isPageReset:!0}),this},v.prototype.nextPage=function(){var e=this.state.page||0;return this.setPage(e+1)},v.prototype.previousPage=function(){var e=this.state.page||0;return this.setPage(e-1)},v.prototype.setCurrentPage=y,v.prototype.setPage=y,v.prototype.setIndex=function(e){return this._change({state:this.state.resetPage().setIndex(e),isPageReset:!0}),this},v.prototype.setQueryParameter=function(e,t){return this._change({state:this.state.resetPage().setQueryParameter(e,t),isPageReset:!0}),this},v.prototype.setState=function(e){return this._change({state:m.make(e),isPageReset:!1}),this},v.prototype.overrideStateWithoutTriggeringChangeEvent=function(e){return this.state=new m(e),this},v.prototype.hasRefinements=function(e){return!!o(this.state.getNumericRefinements(e))||(this.state.isConjunctiveFacet(e)?this.state.isFacetRefined(e):this.state.isDisjunctiveFacet(e)?this.state.isDisjunctiveFacetRefined(e):!!this.state.isHierarchicalFacet(e)&&this.state.isHierarchicalFacetRefined(e))},v.prototype.isExcluded=function(e,t){return this.state.isExcludeRefined(e,t)},v.prototype.isDisjunctiveRefined=function(e,t){return this.state.isDisjunctiveFacetRefined(e,t)},v.prototype.hasTag=function(e){return this.state.isTagRefined(e)},v.prototype.isTagRefined=function(){return this.hasTagRefinements.apply(this,arguments)},v.prototype.getIndex=function(){return this.state.index},v.prototype.getCurrentPage=R,v.prototype.getPage=R,v.prototype.getTags=function(){return this.state.tagRefinements},v.prototype.getRefinements=function(e){var t=[];if(this.state.isConjunctiveFacet(e))this.state.getConjunctiveRefinements(e).forEach((function(e){t.push({value:e,type:"conjunctive"})})),this.state.getExcludeRefinements(e).forEach((function(e){t.push({value:e,type:"exclude"})}));else if(this.state.isDisjunctiveFacet(e)){this.state.getDisjunctiveRefinements(e).forEach((function(e){t.push({value:e,type:"disjunctive"})}))}var r=this.state.getNumericRefinements(e);return Object.keys(r).forEach((function(e){var n=r[e];t.push({value:n,operator:e,type:"numeric"})})),t},v.prototype.getNumericRefinement=function(e,t){return this.state.getNumericRefinement(e,t)},v.prototype.getHierarchicalFacetBreadcrumb=function(e){return this.state.getHierarchicalFacetBreadcrumb(e)},v.prototype._search=function(e){var t=this.state,r=[],n=[];e.onlyWithDerivedHelpers||(n=l._getQueries(t.index,t),r.push({state:t,queriesCount:n.length,helper:this}),this.emit("search",{state:t,results:this.lastResults}));var i=this.derivedHelpers.map((function(e){var n=e.getModifiedState(t),i=n.index?l._getQueries(n.index,n):[];return r.push({state:n,queriesCount:i.length,helper:e}),e.emit("search",{state:n,results:e.lastResults}),i})),s=Array.prototype.concat.apply(n,i),a=this._queryId++;if(this._currentNbQueries++,!s.length)return Promise.resolve({results:[]}).then(this._dispatchAlgoliaResponse.bind(this,r,a));try{this.client.search(s).then(this._dispatchAlgoliaResponse.bind(this,r,a)).catch(this._dispatchAlgoliaError.bind(this,a))}catch(c){this.emit("error",{error:c})}},v.prototype._recommend=function(){var e=this.state,t=this.recommendState,r=this.getIndex(),n=[{state:t,index:r,helper:this}],i=t.params.map((function(e){return e.$$id}));this.emit("fetch",{recommend:{state:t,results:this.lastRecommendResults}});var s=this._recommendCache,a=this.derivedHelpers.map((function(t){var r=t.getModifiedState(e).index;if(!r)return[];var a=t.getModifiedRecommendState(new h);return n.push({state:a,index:r,helper:t}),i=Array.prototype.concat.apply(i,a.params.map((function(e){return e.$$id}))),t.emit("fetch",{recommend:{state:a,results:t.lastRecommendResults}}),a._buildQueries(r,s)})),c=Array.prototype.concat.apply(this.recommendState._buildQueries(r,s),a);if(0!==c.length)if(c.length>0&&void 0===this.client.getRecommendations)console.warn("Please update algoliasearch/lite to the latest version in order to use recommend widgets.");else{var o=this._recommendQueryId++;this._currentNbRecommendQueries++;try{this.client.getRecommendations(c).then(this._dispatchRecommendResponse.bind(this,o,n,i)).catch(this._dispatchRecommendError.bind(this,o))}catch(u){this.emit("error",{error:u})}}},v.prototype._dispatchAlgoliaResponse=function(e,t,r){var n=this;if(!(t0},v.prototype._change=function(e){var t=e.state,r=e.isPageReset;t!==this.state&&(this.state=t,this.emit("change",{state:this.state,results:this.lastResults,isPageReset:r}))},v.prototype._recommendChange=function(e){var t=e.state;t!==this.recommendState&&(this.recommendState=t,this.emit("recommend:change",{search:{results:this.lastResults,state:this.state},recommend:{results:this.lastRecommendResults,state:this.recommendState}}))},v.prototype.clearCache=function(){return this.client.clearCache&&this.client.clearCache(),this},v.prototype.setClient=function(e){return this.client===e||("function"==typeof e.addAlgoliaAgent&&e.addAlgoliaAgent("JS Helper ("+g+")"),this.client=e),this},v.prototype.getClient=function(){return this.client},v.prototype.derive=function(e,t){var r=new i(this,e,t);return this.derivedHelpers.push(r),r},v.prototype.detachDerivedHelper=function(e){var t=this.derivedHelpers.indexOf(e);if(-1===t)throw new Error("Derived helper already detached");this.derivedHelpers.splice(t,1)},v.prototype.hasPendingRequests=function(){return this._currentNbQueries>0},e.exports=v},8112:e=>{"use strict";e.exports=function(e){return Array.isArray(e)?e.filter(Boolean):[]}},4905:e=>{"use strict";e.exports=function(){return Array.prototype.slice.call(arguments).reduceRight((function(e,t){return Object.keys(Object(t)).forEach((function(r){void 0!==t[r]&&(void 0!==e[r]&&delete e[r],e[r]=t[r])})),e}),{})}},5118:e=>{"use strict";e.exports={escapeFacetValue:function(e){return"string"!=typeof e?e:String(e).replace(/^-/,"\\-")},unescapeFacetValue:function(e){return"string"!=typeof e?e:e.replace(/^\\-/,"-")}}},6690:e=>{"use strict";e.exports=function(e,t){if(Array.isArray(e))for(var r=0;r{"use strict";e.exports=function(e,t){if(!Array.isArray(e))return-1;for(var r=0;r{e.exports=function(e){return e.reduce((function(e,t){return e.concat(t)}),[])}},6090:(e,t,r)=>{"use strict";var n=r(6690);e.exports=function(e,t){var r=(t||[]).map((function(e){return e.split(":")}));return e.reduce((function(e,t){var i=t.split(":"),s=n(r,(function(e){return e[0]===i[0]}));return i.length>1||!s?(e[0].push(i[0]),e[1].push(i[1]),e):(e[0].push(s[0]),e[1].push(s[1]),e)}),[[],[]])}},7461:e=>{"use strict";e.exports=function(e,t){e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}},8280:e=>{"use strict";e.exports=function(e,t){return e.filter((function(r,n){return t.indexOf(r)>-1&&e.indexOf(r)===n}))}},6953:e=>{"use strict";function t(e){return"function"==typeof e||Array.isArray(e)||"[object Object]"===Object.prototype.toString.call(e)}function r(e,n){if(e===n)return e;for(var i in n)if(Object.prototype.hasOwnProperty.call(n,i)&&"__proto__"!==i&&"constructor"!==i){var s=n[i],a=e[i];void 0!==a&&void 0===s||(t(a)&&t(s)?e[i]=r(a,s):e[i]="object"==typeof(c=s)&&null!==c?r(Array.isArray(c)?[]:{},c):c)}var c;return e}e.exports=function(e){t(e)||(e={});for(var n=1,i=arguments.length;n{"use strict";e.exports=function(e){return e&&Object.keys(e).length>0}},5188:e=>{"use strict";e.exports=function(e,t){if(null===e)return{};var r,n,i={},s=Object.keys(e);for(n=0;n=0||(i[r]=e[r]);return i}},9940:e=>{"use strict";function t(e,t){if(e!==t){var r=void 0!==e,n=null===e,i=void 0!==t,s=null===t;if(!s&&e>t||n&&i||!r)return 1;if(!n&&e=n.length?s:"desc"===n[i]?-s:s}return e.index-r.index})),i.map((function(e){return e.value}))}},2374:e=>{"use strict";e.exports=function e(t){if("number"==typeof t)return t;if("string"==typeof t)return parseFloat(t);if(Array.isArray(t))return t.map(e);throw new Error("The value should be a number, a parsable string or an array of those.")}},2927:(e,t,r)=>{"use strict";var n=r(6953);function i(e){return Object.keys(e).sort().reduce((function(t,r){return t[r]=e[r],t}),{})}var s={_getQueries:function(e,t){var r=[];return r.push({indexName:e,params:s._getHitsSearchParams(t)}),t.getRefinedDisjunctiveFacets().forEach((function(n){r.push({indexName:e,params:s._getDisjunctiveFacetSearchParams(t,n)})})),t.getRefinedHierarchicalFacets().forEach((function(n){var i=t.getHierarchicalFacetByName(n),a=t.getHierarchicalRefinement(n),c=t._getHierarchicalFacetSeparator(i);if(a.length>0&&a[0].split(c).length>1){var o=a[0].split(c).slice(0,-1).reduce((function(e,t,r){return e.concat({attribute:i.attributes[r],value:0===r?t:[e[e.length-1].value,t].join(c)})}),[]);o.forEach((function(n,a){var c=s._getDisjunctiveFacetSearchParams(t,n.attribute,0===a);function u(e){return i.attributes.some((function(t){return t===e.split(":")[0]}))}var h=(c.facetFilters||[]).reduce((function(e,t){if(Array.isArray(t)){var r=t.filter((function(e){return!u(e)}));r.length>0&&e.push(r)}return"string"!=typeof t||u(t)||e.push(t),e}),[]),f=o[a-1];a>0?c.facetFilters=h.concat(f.attribute+":"+f.value):h.length>0?c.facetFilters=h:delete c.facetFilters,r.push({indexName:e,params:c})}))}})),r},_getHitsSearchParams:function(e){var t=e.facets.concat(e.disjunctiveFacets).concat(s._getHitsHierarchicalFacetsAttributes(e)).sort(),r=s._getFacetFilters(e),a=s._getNumericFilters(e),c=s._getTagFilters(e),o={};return t.length>0&&(o.facets=t.indexOf("*")>-1?["*"]:t),c.length>0&&(o.tagFilters=c),r.length>0&&(o.facetFilters=r),a.length>0&&(o.numericFilters=a),i(n({},e.getQueryParams(),o))},_getDisjunctiveFacetSearchParams:function(e,t,r){var a=s._getFacetFilters(e,t,r),c=s._getNumericFilters(e,t),o=s._getTagFilters(e),u={hitsPerPage:0,page:0,analytics:!1,clickAnalytics:!1};o.length>0&&(u.tagFilters=o);var h=e.getHierarchicalFacetByName(t);return u.facets=h?s._getDisjunctiveHierarchicalFacetAttribute(e,h,r):t,c.length>0&&(u.numericFilters=c),a.length>0&&(u.facetFilters=a),i(n({},e.getQueryParams(),u))},_getNumericFilters:function(e,t){if(e.numericFilters)return e.numericFilters;var r=[];return Object.keys(e.numericRefinements).forEach((function(n){var i=e.numericRefinements[n]||{};Object.keys(i).forEach((function(e){var s=i[e]||[];t!==n&&s.forEach((function(t){if(Array.isArray(t)){var i=t.map((function(t){return n+e+t}));r.push(i)}else r.push(n+e+t)}))}))})),r},_getTagFilters:function(e){return e.tagFilters?e.tagFilters:e.tagRefinements.join(",")},_getFacetFilters:function(e,t,r){var n=[],i=e.facetsRefinements||{};Object.keys(i).sort().forEach((function(e){(i[e]||[]).slice().sort().forEach((function(t){n.push(e+":"+t)}))}));var s=e.facetsExcludes||{};Object.keys(s).sort().forEach((function(e){(s[e]||[]).sort().forEach((function(t){n.push(e+":-"+t)}))}));var a=e.disjunctiveFacetsRefinements||{};Object.keys(a).sort().forEach((function(e){var r=a[e]||[];if(e!==t&&r&&0!==r.length){var i=[];r.slice().sort().forEach((function(t){i.push(e+":"+t)})),n.push(i)}}));var c=e.hierarchicalFacetsRefinements||{};return Object.keys(c).sort().forEach((function(i){var s=(c[i]||[])[0];if(void 0!==s){var a,o,u=e.getHierarchicalFacetByName(i),h=e._getHierarchicalFacetSeparator(u),f=e._getHierarchicalRootPath(u);if(t===i){if(-1===s.indexOf(h)||!f&&!0===r||f&&f.split(h).length===s.split(h).length)return;f?(o=f.split(h).length-1,s=f):(o=s.split(h).length-2,s=s.slice(0,s.lastIndexOf(h))),a=u.attributes[o]}else o=s.split(h).length-1,a=u.attributes[o];a&&n.push([a+":"+s])}})),n},_getHitsHierarchicalFacetsAttributes:function(e){return e.hierarchicalFacets.reduce((function(t,r){var n=e.getHierarchicalRefinement(r.name)[0];if(!n)return t.push(r.attributes[0]),t;var i=e._getHierarchicalFacetSeparator(r),s=n.split(i).length,a=r.attributes.slice(0,s+1);return t.concat(a)}),[])},_getDisjunctiveHierarchicalFacetAttribute:function(e,t,r){var n=e._getHierarchicalFacetSeparator(t);if(!0===r){var i=e._getHierarchicalRootPath(t),s=0;return i&&(s=i.split(n).length),[t.attributes[s]]}var a=(e.getHierarchicalRefinement(t.name)[0]||"").split(n).length-1;return t.attributes.slice(0,a+1)},getSearchForFacetQuery:function(e,t,r,a){var c=a.isDisjunctiveFacet(e)?a.clearRefinements(e):a,o={facetQuery:t,facetName:e};return"number"==typeof r&&(o.maxFacetHits=r),i(n({},s._getHitsSearchParams(c),o))}};e.exports=s},5727:e=>{"use strict";e.exports=function(e){return null!==e&&/^[a-zA-Z0-9_-]{1,64}$/.test(e)}},3464:(e,t,r)=>{"use strict";var n=r(6690),i=r(9522);e.exports=function(e){var t={};return e.forEach((function(e){e.forEach((function(e,r){t[e.objectID]?t[e.objectID]={indexSum:t[e.objectID].indexSum+r,count:t[e.objectID].count+1}:t[e.objectID]={indexSum:r,count:1}}))})),function(e,t){var r=[];return Object.keys(e).forEach((function(n){e[n].count<2&&(e[n].indexSum+=100),r.push({objectID:n,avgOfIndices:e[n].indexSum/t})})),r.sort((function(e,t){return e.avgOfIndices>t.avgOfIndices?1:-1}))}(t,e.length).reduce((function(t,r){var s=n(i(e),(function(e){return e.objectID===r.objectID}));return s?t.concat(s):t}),[])}},3015:e=>{"use strict";e.exports="3.22.4"},4306:function(e){e.exports=function(){"use strict";function e(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function r(r){for(var n=1;n=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var r=[],n=!0,i=!1,s=void 0;try{for(var a,c=e[Symbol.iterator]();!(n=(a=c.next()).done)&&(r.push(a.value),!t||r.length!==t);n=!0);}catch(e){i=!0,s=e}finally{try{n||null==c.return||c.return()}finally{if(i)throw s}}return r}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function s(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){c();var t=JSON.stringify(e);return s()[t]})).then((function(e){return Promise.all([e?e.value:t(),void 0!==e])})).then((function(e){var t=i(e,2),n=t[0],s=t[1];return Promise.all([n,s||r.miss(n)])})).then((function(e){return i(e,1)[0]}))},set:function(e,t){return Promise.resolve().then((function(){var i=s();return i[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:t},n().setItem(r,JSON.stringify(i)),t}))},delete:function(e){return Promise.resolve().then((function(){var t=s();delete t[JSON.stringify(e)],n().setItem(r,JSON.stringify(t))}))},clear:function(){return Promise.resolve().then((function(){n().removeItem(r)}))}}}function c(e){var t=s(e.caches),r=t.shift();return void 0===r?{get:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then((function(e){return Promise.all([e,r.miss(e)])})).then((function(e){return i(e,1)[0]}))},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(e,n,i).catch((function(){return c({caches:t}).get(e,n,i)}))},set:function(e,n){return r.set(e,n).catch((function(){return c({caches:t}).set(e,n)}))},delete:function(e){return r.delete(e).catch((function(){return c({caches:t}).delete(e)}))},clear:function(){return r.clear().catch((function(){return c({caches:t}).clear()}))}}}function o(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(r,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},s=JSON.stringify(r);if(s in t)return Promise.resolve(e.serializable?JSON.parse(t[s]):t[s]);var a=n(),c=i&&i.miss||function(){return Promise.resolve()};return a.then((function(e){return c(e)})).then((function(){return a}))},set:function(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function u(e){for(var t=e.length-1;t>0;t--){var r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function h(e,t){return t?(Object.keys(t).forEach((function(r){e[r]=t[r](e)})),e):e}function f(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var d={Read:1,Write:2,Any:3},p=1,g=2,v=3;function y(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;return r(r({},e),{},{status:t,lastUpdate:Date.now()})}function R(e){return"string"==typeof e?{protocol:"https",url:e,accept:d.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||d.Any}}var F="GET",b="POST";function j(e,t){return Promise.all(t.map((function(t){return e.get(t,(function(){return Promise.resolve(y(t))}))}))).then((function(e){var r=e.filter((function(e){return function(e){return e.status===p||Date.now()-e.lastUpdate>12e4}(e)})),n=e.filter((function(e){return function(e){return e.status===v&&Date.now()-e.lastUpdate<=12e4}(e)})),i=[].concat(s(r),s(n));return{getTimeout:function(e,t){return(0===n.length&&0===e?1:n.length+3+e)*t},statelessHosts:i.length>0?i.map((function(e){return R(e)})):t}}))}function P(e,t,n,i){var a=[],c=function(e,t){if(e.method!==F&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:r(r({},e.data),t.data);return JSON.stringify(n)}}(n,i),o=function(e,t){var n=r(r({},e.headers),t.headers),i={};return Object.keys(n).forEach((function(e){var t=n[e];i[e.toLowerCase()]=t})),i}(e,i),u=n.method,h=n.method!==F?{}:r(r({},n.data),i.data),f=r(r(r({"x-algolia-agent":e.userAgent.value},e.queryParameters),h),i.queryParameters),l=0,m=function t(r,s){var h=r.pop();if(void 0===h)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:O(a)};var m={data:c,headers:o,method:u,url:x(h,n.path,f),connectTimeout:s(l,e.timeouts.connect),responseTimeout:s(l,i.timeout)},d=function(e){var t={request:m,response:e,host:h,triesLeft:r.length};return a.push(t),t},p={onSuccess:function(e){return function(e){try{return JSON.parse(e.content)}catch(t){throw function(e,t){return{name:"DeserializationError",message:e,response:t}}(t.message,e)}}(e)},onRetry:function(n){var i=d(n);return n.isTimedOut&&l++,Promise.all([e.logger.info("Retryable failure",w(i)),e.hostsCache.set(h,y(h,n.isTimedOut?v:g))]).then((function(){return t(r,s)}))},onFail:function(e){throw d(e),function(e,t){var r=e.content,n=e.status,i=r;try{i=JSON.parse(r).message}catch(e){}return function(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}(i,n,t)}(e,O(a))}};return e.requester.send(m).then((function(e){return function(e,t){return function(e){var t=e.status;return e.isTimedOut||function(e){var t=e.isTimedOut,r=e.status;return!t&&!~~r}(e)||2!=~~(t/100)&&4!=~~(t/100)}(e)?t.onRetry(e):2==~~(e.status/100)?t.onSuccess(e):t.onFail(e)}(e,p)}))};return j(e.hostsCache,t).then((function(e){return m(s(e.statelessHosts).reverse(),e.getTimeout)}))}function _(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var r="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(r)&&(t.value="".concat(t.value).concat(r)),t}};return t}function x(e,t,r){var n=E(r),i="".concat(e.protocol,"://").concat(e.url,"/").concat("/"===t.charAt(0)?t.substr(1):t);return n.length&&(i+="?".concat(n)),i}function E(e){return Object.keys(e).map((function(t){return f("%s=%s",t,(r=e[t],"[object Object]"===Object.prototype.toString.call(r)||"[object Array]"===Object.prototype.toString.call(r)?JSON.stringify(e[t]):e[t]));var r})).join("&")}function O(e){return e.map((function(e){return w(e)}))}function w(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return r(r({},e),{},{request:r(r({},e.request),{},{headers:r(r({},e.request.headers),t)})})}var S=function(e){var t=e.appId,n=function(e,t,r){var n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers:function(){return e===l.WithinHeaders?n:{}},queryParameters:function(){return e===l.WithinQueryParameters?n:{}}}}(void 0!==e.authMode?e.authMode:l.WithinHeaders,t,e.apiKey),s=function(e){var t=e.hostsCache,r=e.logger,n=e.requester,s=e.requestsCache,a=e.responsesCache,c=e.timeouts,o=e.userAgent,u=e.hosts,h=e.queryParameters,f={hostsCache:t,logger:r,requester:n,requestsCache:s,responsesCache:a,timeouts:c,userAgent:o,headers:e.headers,queryParameters:h,hosts:u.map((function(e){return R(e)})),read:function(e,t){var r=m(t,f.timeouts.read),n=function(){return P(f,f.hosts.filter((function(e){return!!(e.accept&d.Read)})),e,r)};if(!0!==(void 0!==r.cacheable?r.cacheable:e.cacheable))return n();var s={request:e,mappedRequestOptions:r,transporter:{queryParameters:f.queryParameters,headers:f.headers}};return f.responsesCache.get(s,(function(){return f.requestsCache.get(s,(function(){return f.requestsCache.set(s,n()).then((function(e){return Promise.all([f.requestsCache.delete(s),e])}),(function(e){return Promise.all([f.requestsCache.delete(s),Promise.reject(e)])})).then((function(e){var t=i(e,2);return t[0],t[1]}))}))}),{miss:function(e){return f.responsesCache.set(s,e)}})},write:function(e,t){return P(f,f.hosts.filter((function(e){return!!(e.accept&d.Write)})),e,m(t,f.timeouts.write))}};return f}(r(r({hosts:[{url:"".concat(t,"-dsn.algolia.net"),accept:d.Read},{url:"".concat(t,".algolia.net"),accept:d.Write}].concat(u([{url:"".concat(t,"-1.algolianet.com")},{url:"".concat(t,"-2.algolianet.com")},{url:"".concat(t,"-3.algolianet.com")}]))},e),{},{headers:r(r(r({},n.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:r(r({},n.queryParameters()),e.queryParameters)}));return h({transporter:s,appId:t,addAlgoliaAgent:function(e,t){s.userAgent.add({segment:e,version:t})},clearCache:function(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then((function(){}))}},e.methods)},A=function(e){return function(t,r){return t.method===F?e.transporter.read(t,r):e.transporter.write(t,r)}},N=function(e){return function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return h({transporter:e.transporter,appId:e.appId,indexName:t},r.methods)}},H=function(e){return function(t,n){var i=t.map((function(e){return r(r({},e),{},{params:E(e.params||{})})}));return e.transporter.read({method:b,path:"1/indexes/*/queries",data:{requests:i},cacheable:!0},n)}},Q=function(e){return function(t,i){return Promise.all(t.map((function(t){var s=t.params,a=s.facetName,c=s.facetQuery,o=n(s,["facetName","facetQuery"]);return N(e)(t.indexName,{methods:{searchForFacetValues:I}}).searchForFacetValues(a,c,r(r({},i),o))})))}},T=function(e){return function(t,r,n){return e.transporter.read({method:b,path:f("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n)}},C=function(e){return function(t,r){return e.transporter.read({method:b,path:f("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r)}},I=function(e){return function(t,r,n){return e.transporter.read({method:b,path:f("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n)}},D=1,k=2,q=3,L=function(e){return function(t,n){var i=t.map((function(e){return r(r({},e),{},{threshold:e.threshold||0})}));return e.transporter.read({method:b,path:"1/indexes/*/recommendations",data:{requests:i},cacheable:!0},n)}};function V(e,t,n){var i,s={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:function(e){return new Promise((function(t){var r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((function(t){return r.setRequestHeader(t,e.headers[t])}));var n,i=function(e,n){return setTimeout((function(){r.abort(),t({status:0,content:n,isTimedOut:!0})}),1e3*e)},s=i(e.connectTimeout,"Connection timeout");r.onreadystatechange=function(){r.readyState>r.OPENED&&void 0===n&&(clearTimeout(s),n=i(e.responseTimeout,"Socket timeout"))},r.onerror=function(){0===r.status&&(clearTimeout(s),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=function(){clearTimeout(s),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},logger:(i=q,{debug:function(e,t){return D>=i&&console.debug(e,t),Promise.resolve()},info:function(e,t){return k>=i&&console.info(e,t),Promise.resolve()},error:function(e,t){return console.error(e,t),Promise.resolve()}}),responsesCache:o(),requestsCache:o({serializable:!1}),hostsCache:c({caches:[a({key:"".concat("4.24.0","-").concat(e)}),o()]}),userAgent:_("4.24.0").add({segment:"Browser",version:"lite"}),authMode:l.WithinQueryParameters};return S(r(r(r({},s),n),{},{methods:{search:H,searchForFacetValues:Q,multipleQueries:H,multipleSearchForFacetValues:Q,customRequest:A,initIndex:function(e){return function(t){return N(e)(t,{methods:{search:C,searchForFacetValues:I,findAnswers:T}})}},getRecommendations:L}}))}return V.version="4.24.0",V}()},3535:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>H});var n=r(758),i=r(3526),s=r(6678),a=r.n(s),c=r(4306),o=r.n(c),u=r(3733),h=r(8472),f=r(9410),l=r(5755),m=r(9014);const d=["zero","one","two","few","many","other"];function p(e){return d.filter((t=>e.includes(t)))}const g={locale:"en",pluralForms:p(["one","other"]),select:e=>1===e?"one":"other"};function v(){const{i18n:{currentLocale:e}}=(0,m.A)();return(0,n.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:p(t.resolvedOptions().pluralCategories),select:e=>t.select(e)}}(e)}catch(t){return console.error(`Failed to use Intl.PluralRules for locale "${e}".\nDocusaurus will fallback to the default (English) implementation.\nError: ${t.message}\n`),g}}),[e])}function y(){const e=v();return{selectMessage:(t,r)=>function(e,t,r){const n=e.split("|");if(1===n.length)return n[0];n.length>r.pluralForms.length&&console.error(`For locale=${r.locale}, a maximum of ${r.pluralForms.length} plural forms are expected (${r.pluralForms.join(",")}), but the message contains ${n.length}: ${e}`);const i=r.select(t),s=r.pluralForms.indexOf(i);return n[Math.min(s,n.length-1)]}(r,t,e)}}var R=r(3310),F=r(1367),b=r(4804),j=r(62),P=r(427),_=r(1135),x=r(7723),E=r(6848),O=r(9849);const w={searchQueryInput:"searchQueryInput_lA0l",searchVersionInput:"searchVersionInput_OvCL",searchResultsColumn:"searchResultsColumn_gV3A",algoliaLogo:"algoliaLogo_vaJH",algoliaLogoPathFill:"algoliaLogoPathFill_YCPb",searchResultItem:"searchResultItem_UJts",searchResultItemHeading:"searchResultItemHeading_j6GO",searchResultItemPath:"searchResultItemPath_g13c",searchResultItemSummary:"searchResultItemSummary_gqXZ",searchQueryColumn:"searchQueryColumn_wRHY",searchVersionColumn:"searchVersionColumn_XHUD",searchLogoColumn:"searchLogoColumn_WWHA",loadingSpinner:"loadingSpinner_fbio","loading-spin":"loading-spin_Fa2h",loader:"loader_Ko1P"};var S=r(6070);function A(e){let{docsSearchVersionsHelpers:t}=e;const r=Object.entries(t.allDocsData).filter((e=>{let[,t]=e;return t.versions.length>1}));return(0,S.jsx)("div",{className:(0,i.A)("col","col--3","padding-left--none",w.searchVersionColumn),children:r.map((e=>{let[n,i]=e;const s=r.length>1?`${n}: `:"";return(0,S.jsx)("select",{onChange:e=>t.setSearchVersion(n,e.target.value),defaultValue:t.searchVersions[n],className:w.searchVersionInput,children:i.versions.map(((e,t)=>(0,S.jsx)("option",{label:`${s}${e.label}`,value:e.name},t)))},n)}))})}function N(){const{i18n:{currentLocale:e}}=(0,m.A)(),{algolia:{appId:t,apiKey:r,indexName:s,contextualSearch:c}}=(0,_.c)(),d=(0,x.C)(),p=function(){const{selectMessage:e}=y();return t=>e(t,(0,P.T)({id:"theme.SearchPage.documentsFound.plurals",description:'Pluralized label for "{count} documents found". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)',message:"One document found|{count} documents found"},{count:t}))}(),g=function(){const e=(0,l.Gy)(),[t,r]=(0,n.useState)((()=>Object.entries(e).reduce(((e,t)=>{let[r,n]=t;return{...e,[r]:n.versions[0].name}}),{}))),i=Object.values(e).some((e=>e.versions.length>1));return{allDocsData:e,versioningEnabled:i,searchVersions:t,setSearchVersion:(e,t)=>r((r=>({...r,[e]:t})))}}(),[v,b]=(0,R.b)(),N={items:[],query:null,totalResults:null,totalPages:null,lastPage:null,hasMore:null,loading:null},[H,Q]=(0,n.useReducer)(((e,t)=>{switch(t.type){case"reset":return N;case"loading":return{...e,loading:!0};case"update":return v!==t.value.query?e:{...t.value,items:0===t.value.lastPage?t.value.items:e.items.concat(t.value.items)};case"advance":{const t=e.totalPages>e.lastPage+1;return{...e,lastPage:t?e.lastPage+1:e.lastPage,hasMore:t}}default:return e}}),N),T=c?["language","docusaurus_tag"]:[],C=o()(t,r),I=a()(C,s,{hitsPerPage:15,advancedSyntax:!0,disjunctiveFacets:T});I.on("result",(e=>{let{results:{query:t,hits:r,page:n,nbHits:i,nbPages:s}}=e;if(""===t||!Array.isArray(r))return void Q({type:"reset"});const a=e=>e.replace(/algolia-docsearch-suggestion--highlight/g,"search-result-match"),c=r.map((e=>{let{url:t,_highlightResult:{hierarchy:r},_snippetResult:n={}}=e;const i=Object.keys(r).map((e=>a(r[e].value)));return{title:i.pop(),url:d(t),summary:n.content?`${a(n.content.value)}...`:"",breadcrumbs:i}}));Q({type:"update",value:{items:c,query:t,totalResults:i,totalPages:s,lastPage:n,hasMore:s>n+1,loading:!1}})}));const[D,k]=(0,n.useState)(null),q=(0,n.useRef)(0),L=(0,n.useRef)(u.A.canUseIntersectionObserver&&new IntersectionObserver((e=>{const{isIntersecting:t,boundingClientRect:{y:r}}=e[0];t&&q.current>r&&Q({type:"advance"}),q.current=r}),{threshold:1})),V=()=>v?(0,P.T)({id:"theme.SearchPage.existingResultsTitle",message:'Search results for "{query}"',description:"The search page title for non-empty query"},{query:v}):(0,P.T)({id:"theme.SearchPage.emptyResultsTitle",message:"Search the documentation",description:"The search page title for empty query"}),B=(0,F._q)((function(t){void 0===t&&(t=0),c&&(I.addDisjunctiveFacetRefinement("docusaurus_tag","default"),I.addDisjunctiveFacetRefinement("language",e),Object.entries(g.searchVersions).forEach((e=>{let[t,r]=e;I.addDisjunctiveFacetRefinement("docusaurus_tag",`docs-${t}-${r}`)}))),I.setQuery(v).setPage(t).search()}));return(0,n.useEffect)((()=>{if(!D)return;const e=L.current;return e?(e.observe(D),()=>e.unobserve(D)):()=>!0}),[D]),(0,n.useEffect)((()=>{Q({type:"reset"}),v&&(Q({type:"loading"}),setTimeout((()=>{B()}),300))}),[v,g.searchVersions,B]),(0,n.useEffect)((()=>{H.lastPage&&0!==H.lastPage&&B(H.lastPage)}),[B,H.lastPage]),(0,S.jsxs)(E.A,{children:[(0,S.jsxs)(h.A,{children:[(0,S.jsx)("title",{children:(0,j.s)(V())}),(0,S.jsx)("meta",{property:"robots",content:"noindex, follow"})]}),(0,S.jsxs)("div",{className:"container margin-vert--lg",children:[(0,S.jsx)(O.A,{as:"h1",children:V()}),(0,S.jsxs)("form",{className:"row",onSubmit:e=>e.preventDefault(),children:[(0,S.jsx)("div",{className:(0,i.A)("col",w.searchQueryColumn,{"col--9":g.versioningEnabled,"col--12":!g.versioningEnabled}),children:(0,S.jsx)("input",{type:"search",name:"q",className:w.searchQueryInput,placeholder:(0,P.T)({id:"theme.SearchPage.inputPlaceholder",message:"Type your search here",description:"The placeholder for search page input"}),"aria-label":(0,P.T)({id:"theme.SearchPage.inputLabel",message:"Search",description:"The ARIA label for search page input"}),onChange:e=>b(e.target.value),value:v,autoComplete:"off",autoFocus:!0})}),c&&g.versioningEnabled&&(0,S.jsx)(A,{docsSearchVersionsHelpers:g})]}),(0,S.jsxs)("div",{className:"row",children:[(0,S.jsx)("div",{className:(0,i.A)("col","col--8",w.searchResultsColumn),children:!!H.totalResults&&p(H.totalResults)}),(0,S.jsx)("div",{className:(0,i.A)("col","col--4","text--right",w.searchLogoColumn),children:(0,S.jsx)(f.A,{to:"https://www.algolia.com/","aria-label":(0,P.T)({id:"theme.SearchPage.algoliaLabel",message:"Search by Algolia",description:"The ARIA label for Algolia mention"}),children:(0,S.jsx)("svg",{viewBox:"0 0 168 24",className:w.algoliaLogo,children:(0,S.jsxs)("g",{fill:"none",children:[(0,S.jsx)("path",{className:w.algoliaLogoPathFill,d:"M120.925 18.804c-4.386.02-4.386-3.54-4.386-4.106l-.007-13.336 2.675-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-10.846-2.18c.821 0 1.43-.047 1.855-.129v-2.719a6.334 6.334 0 0 0-1.574-.199 5.7 5.7 0 0 0-.897.069 2.699 2.699 0 0 0-.814.24c-.24.116-.439.28-.582.491-.15.212-.219.335-.219.656 0 .628.219.991.616 1.23s.938.362 1.615.362zm-.233-9.7c.883 0 1.629.109 2.231.328.602.218 1.088.525 1.444.915.363.396.609.922.76 1.483.157.56.232 1.175.232 1.85v6.874a32.5 32.5 0 0 1-1.868.314c-.834.123-1.772.185-2.813.185-.69 0-1.327-.069-1.895-.198a4.001 4.001 0 0 1-1.471-.636 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.803 0-.656.13-1.073.384-1.525a3.24 3.24 0 0 1 1.047-1.106c.445-.287.95-.492 1.532-.615a8.8 8.8 0 0 1 1.82-.185 8.404 8.404 0 0 1 1.972.24v-.438c0-.307-.035-.6-.11-.874a1.88 1.88 0 0 0-.384-.73 1.784 1.784 0 0 0-.724-.493 3.164 3.164 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.735 7.735 0 0 0-1.26.307l-.321-2.192c.335-.117.834-.233 1.478-.349a10.98 10.98 0 0 1 2.073-.178zm52.842 9.626c.822 0 1.43-.048 1.854-.13V13.7a6.347 6.347 0 0 0-1.574-.199c-.294 0-.595.021-.896.069a2.7 2.7 0 0 0-.814.24 1.46 1.46 0 0 0-.582.491c-.15.212-.218.335-.218.656 0 .628.218.991.615 1.23.404.245.938.362 1.615.362zm-.226-9.694c.883 0 1.629.108 2.231.327.602.219 1.088.526 1.444.915.355.39.609.923.759 1.483a6.8 6.8 0 0 1 .233 1.852v6.873c-.41.088-1.034.19-1.868.314-.834.123-1.772.184-2.813.184-.69 0-1.327-.068-1.895-.198a4.001 4.001 0 0 1-1.471-.635 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.804 0-.656.13-1.073.384-1.524.26-.45.608-.82 1.047-1.107.445-.286.95-.491 1.532-.614a8.803 8.803 0 0 1 2.751-.13c.329.034.671.096 1.04.185v-.437a3.3 3.3 0 0 0-.109-.875 1.873 1.873 0 0 0-.384-.731 1.784 1.784 0 0 0-.724-.492 3.165 3.165 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.75 7.75 0 0 0-1.26.307l-.321-2.193c.335-.116.834-.232 1.478-.348a11.633 11.633 0 0 1 2.073-.177zm-8.034-1.271a1.626 1.626 0 0 1-1.628-1.62c0-.895.725-1.62 1.628-1.62.904 0 1.63.725 1.63 1.62 0 .895-.733 1.62-1.63 1.62zm1.348 13.22h-2.689V7.27l2.69-.423v11.956zm-4.714 0c-4.386.02-4.386-3.54-4.386-4.107l-.008-13.336 2.676-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-8.698-5.903c0-1.156-.253-2.119-.746-2.788-.493-.677-1.183-1.01-2.067-1.01-.882 0-1.574.333-2.065 1.01-.493.676-.733 1.632-.733 2.788 0 1.168.246 1.953.74 2.63.492.683 1.183 1.018 2.066 1.018.882 0 1.574-.342 2.067-1.019.492-.683.738-1.46.738-2.63zm2.737-.007c0 .902-.13 1.584-.397 2.33a5.52 5.52 0 0 1-1.128 1.906 4.986 4.986 0 0 1-1.752 1.223c-.685.286-1.739.45-2.265.45-.528-.006-1.574-.157-2.252-.45a5.096 5.096 0 0 1-1.744-1.223c-.487-.527-.863-1.162-1.137-1.906a6.345 6.345 0 0 1-.41-2.33c0-.902.123-1.77.397-2.508a5.554 5.554 0 0 1 1.15-1.892 5.133 5.133 0 0 1 1.75-1.216c.679-.287 1.425-.423 2.232-.423.808 0 1.553.142 2.237.423a4.88 4.88 0 0 1 1.753 1.216 5.644 5.644 0 0 1 1.135 1.892c.287.738.431 1.606.431 2.508zm-20.138 0c0 1.12.246 2.363.738 2.882.493.52 1.13.78 1.91.78.424 0 .828-.062 1.204-.178.377-.116.677-.253.917-.417V9.33a10.476 10.476 0 0 0-1.766-.226c-.971-.028-1.71.37-2.23 1.004-.513.636-.773 1.75-.773 2.788zm7.438 5.274c0 1.824-.466 3.156-1.404 4.004-.936.846-2.367 1.27-4.296 1.27-.705 0-2.17-.137-3.34-.396l.431-2.118c.98.205 2.272.26 2.95.26 1.074 0 1.84-.219 2.299-.656.459-.437.684-1.086.684-1.948v-.437a8.07 8.07 0 0 1-1.047.397c-.43.13-.93.198-1.492.198-.739 0-1.41-.116-2.018-.349a4.206 4.206 0 0 1-1.567-1.025c-.431-.45-.774-1.017-1.013-1.694-.24-.677-.363-1.885-.363-2.773 0-.834.13-1.88.384-2.577.26-.696.629-1.298 1.129-1.796.493-.498 1.095-.881 1.8-1.162a6.605 6.605 0 0 1 2.428-.457c.87 0 1.67.109 2.45.24.78.129 1.444.265 1.985.415V18.17zM6.972 6.677v1.627c-.712-.446-1.52-.67-2.425-.67-.585 0-1.045.13-1.38.391a1.24 1.24 0 0 0-.502 1.03c0 .425.164.765.494 1.02.33.256.835.532 1.516.83.447.192.795.356 1.045.495.25.138.537.332.862.582.324.25.563.548.718.894.154.345.23.741.23 1.188 0 .947-.334 1.691-1.004 2.234-.67.542-1.537.814-2.601.814-1.18 0-2.16-.229-2.936-.686v-1.708c.84.628 1.814.942 2.92.942.585 0 1.048-.136 1.388-.407.34-.271.51-.646.51-1.125 0-.287-.1-.55-.302-.79-.203-.24-.42-.42-.655-.542-.234-.123-.585-.29-1.053-.503a61.27 61.27 0 0 1-.582-.271 13.67 13.67 0 0 1-.55-.287 4.275 4.275 0 0 1-.567-.351 6.92 6.92 0 0 1-.455-.4c-.18-.17-.31-.34-.39-.51-.08-.17-.155-.37-.224-.598a2.553 2.553 0 0 1-.104-.742c0-.915.333-1.638.998-2.17.664-.532 1.523-.798 2.576-.798.968 0 1.793.17 2.473.51zm7.468 5.696v-.287c-.022-.607-.187-1.088-.495-1.444-.309-.357-.75-.535-1.324-.535-.532 0-.99.194-1.373.583-.382.388-.622.949-.717 1.683h3.909zm1.005 2.792v1.404c-.596.34-1.383.51-2.362.51-1.255 0-2.255-.377-3-1.132-.744-.755-1.116-1.744-1.116-2.968 0-1.297.34-2.316 1.021-3.055.68-.74 1.548-1.11 2.6-1.11 1.033 0 1.852.323 2.458.966.606.644.91 1.572.91 2.784 0 .33-.033.676-.096 1.038h-5.314c.107.702.405 1.239.894 1.611.49.372 1.106.558 1.85.558.862 0 1.58-.202 2.155-.606zm6.605-1.77h-1.212c-.596 0-1.045.116-1.349.35-.303.234-.454.532-.454.894 0 .372.117.664.35.877.235.213.575.32 1.022.32.51 0 .912-.142 1.204-.424.293-.281.44-.651.44-1.108v-.91zm-4.068-2.554V9.325c.627-.361 1.457-.542 2.489-.542 2.116 0 3.175 1.026 3.175 3.08V17h-1.548v-.957c-.415.68-1.143 1.02-2.186 1.02-.766 0-1.38-.22-1.843-.661-.462-.442-.694-1.003-.694-1.684 0-.776.293-1.38.878-1.81.585-.431 1.404-.647 2.457-.647h1.34V11.8c0-.554-.133-.971-.399-1.253-.266-.282-.707-.423-1.324-.423a4.07 4.07 0 0 0-2.345.718zm9.333-1.93v1.42c.394-1 1.101-1.5 2.123-1.5.148 0 .313.016.494.048v1.531a1.885 1.885 0 0 0-.75-.143c-.542 0-.989.24-1.34.718-.351.479-.527 1.048-.527 1.707V17h-1.563V8.91h1.563zm5.01 4.084c.022.82.272 1.492.75 2.019.479.526 1.15.79 2.01.79.639 0 1.235-.176 1.788-.527v1.404c-.521.319-1.186.479-1.995.479-1.265 0-2.276-.4-3.031-1.197-.755-.798-1.133-1.792-1.133-2.984 0-1.16.38-2.151 1.14-2.975.761-.825 1.79-1.237 3.088-1.237.702 0 1.346.149 1.93.447v1.436a3.242 3.242 0 0 0-1.77-.495c-.84 0-1.513.266-2.019.798-.505.532-.758 1.213-.758 2.042zM40.24 5.72v4.579c.458-1 1.293-1.5 2.505-1.5.787 0 1.42.245 1.899.734.479.49.718 1.17.718 2.042V17h-1.564v-5.106c0-.553-.14-.98-.422-1.284-.282-.303-.652-.455-1.11-.455-.531 0-1.002.202-1.411.606-.41.405-.615 1.022-.615 1.851V17h-1.563V5.72h1.563zm14.966 10.02c.596 0 1.096-.253 1.5-.758.404-.506.606-1.157.606-1.955 0-.915-.202-1.62-.606-2.114-.404-.495-.92-.742-1.548-.742-.553 0-1.05.224-1.491.67-.442.447-.662 1.133-.662 2.058 0 .958.212 1.67.638 2.138.425.469.946.703 1.563.703zM53.004 5.72v4.42c.574-.894 1.388-1.341 2.44-1.341 1.022 0 1.857.383 2.506 1.149.649.766.973 1.781.973 3.047 0 1.138-.309 2.109-.925 2.912-.617.803-1.463 1.205-2.537 1.205-1.075 0-1.894-.447-2.457-1.34V17h-1.58V5.72h1.58zm9.908 11.104l-3.223-7.913h1.739l1.005 2.632 1.26 3.415c.096-.32.48-1.458 1.15-3.415l.909-2.632h1.66l-2.92 7.866c-.777 2.074-1.963 3.11-3.559 3.11a2.92 2.92 0 0 1-.734-.079v-1.34c.17.042.351.064.543.064 1.032 0 1.755-.57 2.17-1.708z"}),(0,S.jsx)("path",{fill:"#5468FF",d:"M78.988.938h16.594a2.968 2.968 0 0 1 2.966 2.966V20.5a2.967 2.967 0 0 1-2.966 2.964H78.988a2.967 2.967 0 0 1-2.966-2.964V3.897A2.961 2.961 0 0 1 78.988.938z"}),(0,S.jsx)("path",{fill:"white",d:"M89.632 5.967v-.772a.978.978 0 0 0-.978-.977h-2.28a.978.978 0 0 0-.978.977v.793c0 .088.082.15.171.13a7.127 7.127 0 0 1 1.984-.28c.65 0 1.295.088 1.917.259.082.02.164-.04.164-.13m-6.248 1.01l-.39-.389a.977.977 0 0 0-1.382 0l-.465.465a.973.973 0 0 0 0 1.38l.383.383c.062.061.15.047.205-.014.226-.307.472-.601.746-.874.281-.28.568-.526.883-.751.068-.042.075-.137.02-.2m4.16 2.453v3.341c0 .096.104.165.192.117l2.97-1.537c.068-.034.089-.117.055-.184a3.695 3.695 0 0 0-3.08-1.866c-.068 0-.136.054-.136.13m0 8.048a4.489 4.489 0 0 1-4.49-4.482 4.488 4.488 0 0 1 4.49-4.482 4.488 4.488 0 0 1 4.489 4.482 4.484 4.484 0 0 1-4.49 4.482m0-10.85a6.363 6.363 0 1 0 0 12.729 6.37 6.37 0 0 0 6.372-6.368 6.358 6.358 0 0 0-6.371-6.36"})]})})})})]}),H.items.length>0?(0,S.jsx)("main",{children:H.items.map(((e,t)=>{let{title:r,url:n,summary:s,breadcrumbs:a}=e;return(0,S.jsxs)("article",{className:w.searchResultItem,children:[(0,S.jsx)(O.A,{as:"h2",className:w.searchResultItemHeading,children:(0,S.jsx)(f.A,{to:n,dangerouslySetInnerHTML:{__html:r}})}),a.length>0&&(0,S.jsx)("nav",{"aria-label":"breadcrumbs",children:(0,S.jsx)("ul",{className:(0,i.A)("breadcrumbs",w.searchResultItemPath),children:a.map(((e,t)=>(0,S.jsx)("li",{className:"breadcrumbs__item",dangerouslySetInnerHTML:{__html:e}},t)))})}),s&&(0,S.jsx)("p",{className:w.searchResultItemSummary,dangerouslySetInnerHTML:{__html:s}})]},t)}))}):[v&&!H.loading&&(0,S.jsx)("p",{children:(0,S.jsx)(P.A,{id:"theme.SearchPage.noResultsText",description:"The paragraph for empty search result",children:"No results were found"})},"no-results"),!!H.loading&&(0,S.jsx)("div",{className:w.loadingSpinner},"spinner")],H.hasMore&&(0,S.jsx)("div",{className:w.loader,ref:k,children:(0,S.jsx)(P.A,{id:"theme.SearchPage.fetchingNewResults",description:"The paragraph for fetching new search results",children:"Fetching new results..."})})]})]})}function H(){return(0,S.jsx)(b.e3,{className:"search-page-wrapper",children:(0,S.jsx)(N,{})})}}}]); \ No newline at end of file +/*! For license information please see 1a4e3797.d7d54df8.js.LICENSE.txt */ +(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2138],{8181:e=>{function t(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function r(e){return"function"==typeof e}function n(e){return"object"==typeof e&&null!==e}function i(e){return void 0===e}e.exports=t,t.prototype._events=void 0,t.prototype._maxListeners=void 0,t.defaultMaxListeners=10,t.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},t.prototype.emit=function(e){var t,s,a,c,o,u;if(this._events||(this._events={}),"error"===e&&(!this._events.error||n(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var h=new Error('Uncaught, unspecified "error" event. ('+t+")");throw h.context=t,h}if(i(s=this._events[e]))return!1;if(r(s))switch(arguments.length){case 1:s.call(this);break;case 2:s.call(this,arguments[1]);break;case 3:s.call(this,arguments[1],arguments[2]);break;default:c=Array.prototype.slice.call(arguments,1),s.apply(this,c)}else if(n(s))for(c=Array.prototype.slice.call(arguments,1),a=(u=s.slice()).length,o=0;o0&&this._events[e].length>a&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},t.prototype.on=t.prototype.addListener,t.prototype.once=function(e,t){if(!r(t))throw TypeError("listener must be a function");var n=!1;function i(){this.removeListener(e,i),n||(n=!0,t.apply(this,arguments))}return i.listener=t,this.on(e,i),this},t.prototype.removeListener=function(e,t){var i,s,a,c;if(!r(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(a=(i=this._events[e]).length,s=-1,i===t||r(i.listener)&&i.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(n(i)){for(c=a;c-- >0;)if(i[c]===t||i[c].listener&&i[c].listener===t){s=c;break}if(s<0)return this;1===i.length?(i.length=0,delete this._events[e]):i.splice(s,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},t.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(r(n=this._events[e]))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},t.prototype.listeners=function(e){return this._events&&this._events[e]?r(this._events[e])?[this._events[e]]:this._events[e].slice():[]},t.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(r(t))return 1;if(t)return t.length}return 0},t.listenerCount=function(e,t){return e.listenerCount(t)}},6678:(e,t,r)=>{"use strict";var n=r(7728),i=r(2538),s=r(6172),a=r(4908),c=r(7298);function o(e,t,r,i){return new n(e,t,r,i)}o.version=r(3015),o.AlgoliaSearchHelper=n,o.SearchParameters=a,o.RecommendParameters=i,o.SearchResults=c,o.RecommendResults=s,e.exports=o},7085:(e,t,r)=>{"use strict";var n=r(8181);function i(e,t,r){this.main=e,this.fn=t,this.recommendFn=r,this.lastResults=null,this.lastRecommendResults=null}r(7461)(i,n),i.prototype.detach=function(){this.removeAllListeners(),this.main.detachDerivedHelper(this)},i.prototype.getModifiedState=function(e){return this.fn(e)},i.prototype.getModifiedRecommendState=function(e){return this.recommendFn(e)},e.exports=i},2538:e=>{"use strict";function t(e){e=e||{},this.params=e.params||[]}t.prototype={constructor:t,addParams:function(e){var r=this.params.slice();return r.push(e),new t({params:r})},removeParams:function(e){return new t({params:this.params.filter((function(t){return t.$$id!==e}))})},addFrequentlyBoughtTogether:function(e){return this.addParams(Object.assign({},e,{model:"bought-together"}))},addRelatedProducts:function(e){return this.addParams(Object.assign({},e,{model:"related-products"}))},addTrendingItems:function(e){return this.addParams(Object.assign({},e,{model:"trending-items"}))},addTrendingFacets:function(e){return this.addParams(Object.assign({},e,{model:"trending-facets"}))},addLookingSimilar:function(e){return this.addParams(Object.assign({},e,{model:"looking-similar"}))},_buildQueries:function(e,t){return this.params.filter((function(e){return void 0===t[e.$$id]})).map((function(t){var r=Object.assign({},t,{indexName:e,threshold:t.threshold||0});return delete r.$$id,r}))}},e.exports=t},6172:e=>{"use strict";function t(e,t){this._state=e,this._rawResults={};var r=this;e.params.forEach((function(e){var n=e.$$id;r[n]=t[n],r._rawResults[n]=t[n]}))}t.prototype={constructor:t},e.exports=t},2567:(e,t,r)=>{"use strict";var n=r(4905),i=r(5512),s=r(5188),a={addRefinement:function(e,t,r){if(a.isRefined(e,t,r))return e;var i=""+r,s=e[t]?e[t].concat(i):[i],c={};return c[t]=s,n({},c,e)},removeRefinement:function(e,t,r){if(void 0===r)return a.clearRefinement(e,(function(e,r){return t===r}));var n=""+r;return a.clearRefinement(e,(function(e,r){return t===r&&n===e}))},toggleRefinement:function(e,t,r){if(void 0===r)throw new Error("toggleRefinement should be used with a value");return a.isRefined(e,t,r)?a.removeRefinement(e,t,r):a.addRefinement(e,t,r)},clearRefinement:function(e,t,r){if(void 0===t)return i(e)?{}:e;if("string"==typeof t)return s(e,[t]);if("function"==typeof t){var n=!1,a=Object.keys(e).reduce((function(i,s){var a=e[s]||[],c=a.filter((function(e){return!t(e,s,r)}));return c.length!==a.length&&(n=!0),i[s]=c,i}),{});return n?a:e}},isRefined:function(e,t,r){var n=Boolean(e[t])&&e[t].length>0;if(void 0===r||!n)return n;var i=""+r;return-1!==e[t].indexOf(i)}};e.exports=a},4908:(e,t,r)=>{"use strict";var n=r(4905),i=r(6690),s=r(8280),a=r(6953),c=r(5512),o=r(5188),u=r(2374),h=r(5727),f=r(2567);function l(e,t){return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((function(e,r){return l(t[r],e)})):e===t}function m(e){var t=e?m._parseNumbers(e):{};void 0===t.userToken||h(t.userToken)||console.warn("[algoliasearch-helper] The `userToken` parameter is invalid. This can lead to wrong analytics.\n - Format: [a-zA-Z0-9_-]{1,64}"),this.facets=t.facets||[],this.disjunctiveFacets=t.disjunctiveFacets||[],this.hierarchicalFacets=t.hierarchicalFacets||[],this.facetsRefinements=t.facetsRefinements||{},this.facetsExcludes=t.facetsExcludes||{},this.disjunctiveFacetsRefinements=t.disjunctiveFacetsRefinements||{},this.numericRefinements=t.numericRefinements||{},this.tagRefinements=t.tagRefinements||[],this.hierarchicalFacetsRefinements=t.hierarchicalFacetsRefinements||{};var r=this;Object.keys(t).forEach((function(e){var n=-1!==m.PARAMETERS.indexOf(e),i=void 0!==t[e];!n&&i&&(r[e]=t[e])}))}m.PARAMETERS=Object.keys(new m),m._parseNumbers=function(e){if(e instanceof m)return e;var t={};if(["aroundPrecision","aroundRadius","getRankingInfo","minWordSizefor2Typos","minWordSizefor1Typo","page","maxValuesPerFacet","distinct","minimumAroundRadius","hitsPerPage","minProximity"].forEach((function(r){var n=e[r];if("string"==typeof n){var i=parseFloat(n);t[r]=isNaN(i)?n:i}})),Array.isArray(e.insideBoundingBox)&&(t.insideBoundingBox=e.insideBoundingBox.map((function(e){return Array.isArray(e)?e.map((function(e){return parseFloat(e)})):e}))),e.numericRefinements){var r={};Object.keys(e.numericRefinements).forEach((function(t){var n=e.numericRefinements[t]||{};r[t]={},Object.keys(n).forEach((function(e){var i=n[e].map((function(e){return Array.isArray(e)?e.map((function(e){return"string"==typeof e?parseFloat(e):e})):"string"==typeof e?parseFloat(e):e}));r[t][e]=i}))})),t.numericRefinements=r}return a(e,t)},m.make=function(e){var t=new m(e);return(e.hierarchicalFacets||[]).forEach((function(e){if(e.rootPath){var r=t.getHierarchicalRefinement(e.name);r.length>0&&0!==r[0].indexOf(e.rootPath)&&(t=t.clearRefinements(e.name)),0===(r=t.getHierarchicalRefinement(e.name)).length&&(t=t.toggleHierarchicalFacetRefinement(e.name,e.rootPath))}})),t},m.validate=function(e,t){var r=t||{};return e.tagFilters&&r.tagRefinements&&r.tagRefinements.length>0?new Error("[Tags] Cannot switch from the managed tag API to the advanced API. It is probably an error, if it is really what you want, you should first clear the tags with clearTags method."):e.tagRefinements.length>0&&r.tagFilters?new Error("[Tags] Cannot switch from the advanced tag API to the managed API. It is probably an error, if it is not, you should first clear the tags with clearTags method."):e.numericFilters&&r.numericRefinements&&c(r.numericRefinements)?new Error("[Numeric filters] Can't switch from the advanced to the managed API. It is probably an error, if this is really what you want, you have to first clear the numeric filters."):c(e.numericRefinements)&&r.numericFilters?new Error("[Numeric filters] Can't switch from the managed API to the advanced. It is probably an error, if this is really what you want, you have to first clear the numeric filters."):null},m.prototype={constructor:m,clearRefinements:function(e){var t={numericRefinements:this._clearNumericRefinements(e),facetsRefinements:f.clearRefinement(this.facetsRefinements,e,"conjunctiveFacet"),facetsExcludes:f.clearRefinement(this.facetsExcludes,e,"exclude"),disjunctiveFacetsRefinements:f.clearRefinement(this.disjunctiveFacetsRefinements,e,"disjunctiveFacet"),hierarchicalFacetsRefinements:f.clearRefinement(this.hierarchicalFacetsRefinements,e,"hierarchicalFacet")};return t.numericRefinements===this.numericRefinements&&t.facetsRefinements===this.facetsRefinements&&t.facetsExcludes===this.facetsExcludes&&t.disjunctiveFacetsRefinements===this.disjunctiveFacetsRefinements&&t.hierarchicalFacetsRefinements===this.hierarchicalFacetsRefinements?this:this.setQueryParameters(t)},clearTags:function(){return void 0===this.tagFilters&&0===this.tagRefinements.length?this:this.setQueryParameters({tagFilters:void 0,tagRefinements:[]})},setIndex:function(e){return e===this.index?this:this.setQueryParameters({index:e})},setQuery:function(e){return e===this.query?this:this.setQueryParameters({query:e})},setPage:function(e){return e===this.page?this:this.setQueryParameters({page:e})},setFacets:function(e){return this.setQueryParameters({facets:e})},setDisjunctiveFacets:function(e){return this.setQueryParameters({disjunctiveFacets:e})},setHitsPerPage:function(e){return this.hitsPerPage===e?this:this.setQueryParameters({hitsPerPage:e})},setTypoTolerance:function(e){return this.typoTolerance===e?this:this.setQueryParameters({typoTolerance:e})},addNumericRefinement:function(e,t,r){var n=u(r);if(this.isNumericRefined(e,t,n))return this;var i=a({},this.numericRefinements);return i[e]=a({},i[e]),i[e][t]?(i[e][t]=i[e][t].slice(),i[e][t].push(n)):i[e][t]=[n],this.setQueryParameters({numericRefinements:i})},getConjunctiveRefinements:function(e){return this.isConjunctiveFacet(e)&&this.facetsRefinements[e]||[]},getDisjunctiveRefinements:function(e){return this.isDisjunctiveFacet(e)&&this.disjunctiveFacetsRefinements[e]||[]},getHierarchicalRefinement:function(e){return this.hierarchicalFacetsRefinements[e]||[]},getExcludeRefinements:function(e){return this.isConjunctiveFacet(e)&&this.facetsExcludes[e]||[]},removeNumericRefinement:function(e,t,r){var n=r;return void 0!==n?this.isNumericRefined(e,t,n)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(r,i){return i===e&&r.op===t&&l(r.val,u(n))}))}):this:void 0!==t?this.isNumericRefined(e,t)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(r,n){return n===e&&r.op===t}))}):this:this.isNumericRefined(e)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(t,r){return r===e}))}):this},getNumericRefinements:function(e){return this.numericRefinements[e]||{}},getNumericRefinement:function(e,t){return this.numericRefinements[e]&&this.numericRefinements[e][t]},_clearNumericRefinements:function(e){if(void 0===e)return c(this.numericRefinements)?{}:this.numericRefinements;if("string"==typeof e)return o(this.numericRefinements,[e]);if("function"==typeof e){var t=!1,r=this.numericRefinements,n=Object.keys(r).reduce((function(n,i){var s=r[i],a={};return s=s||{},Object.keys(s).forEach((function(r){var n=s[r]||[],c=[];n.forEach((function(t){e({val:t,op:r},i,"numeric")||c.push(t)})),c.length!==n.length&&(t=!0),a[r]=c})),n[i]=a,n}),{});return t?n:this.numericRefinements}},addFacet:function(e){return this.isConjunctiveFacet(e)?this:this.setQueryParameters({facets:this.facets.concat([e])})},addDisjunctiveFacet:function(e){return this.isDisjunctiveFacet(e)?this:this.setQueryParameters({disjunctiveFacets:this.disjunctiveFacets.concat([e])})},addHierarchicalFacet:function(e){if(this.isHierarchicalFacet(e.name))throw new Error("Cannot declare two hierarchical facets with the same name: `"+e.name+"`");return this.setQueryParameters({hierarchicalFacets:this.hierarchicalFacets.concat([e])})},addFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsRefinements,e,t)?this:this.setQueryParameters({facetsRefinements:f.addRefinement(this.facetsRefinements,e,t)})},addExcludeRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsExcludes,e,t)?this:this.setQueryParameters({facetsExcludes:f.addRefinement(this.facetsExcludes,e,t)})},addDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return f.isRefined(this.disjunctiveFacetsRefinements,e,t)?this:this.setQueryParameters({disjunctiveFacetsRefinements:f.addRefinement(this.disjunctiveFacetsRefinements,e,t)})},addTagRefinement:function(e){if(this.isTagRefined(e))return this;var t={tagRefinements:this.tagRefinements.concat(e)};return this.setQueryParameters(t)},removeFacet:function(e){return this.isConjunctiveFacet(e)?this.clearRefinements(e).setQueryParameters({facets:this.facets.filter((function(t){return t!==e}))}):this},removeDisjunctiveFacet:function(e){return this.isDisjunctiveFacet(e)?this.clearRefinements(e).setQueryParameters({disjunctiveFacets:this.disjunctiveFacets.filter((function(t){return t!==e}))}):this},removeHierarchicalFacet:function(e){return this.isHierarchicalFacet(e)?this.clearRefinements(e).setQueryParameters({hierarchicalFacets:this.hierarchicalFacets.filter((function(t){return t.name!==e}))}):this},removeFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsRefinements,e,t)?this.setQueryParameters({facetsRefinements:f.removeRefinement(this.facetsRefinements,e,t)}):this},removeExcludeRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsExcludes,e,t)?this.setQueryParameters({facetsExcludes:f.removeRefinement(this.facetsExcludes,e,t)}):this},removeDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return f.isRefined(this.disjunctiveFacetsRefinements,e,t)?this.setQueryParameters({disjunctiveFacetsRefinements:f.removeRefinement(this.disjunctiveFacetsRefinements,e,t)}):this},removeTagRefinement:function(e){if(!this.isTagRefined(e))return this;var t={tagRefinements:this.tagRefinements.filter((function(t){return t!==e}))};return this.setQueryParameters(t)},toggleRefinement:function(e,t){return this.toggleFacetRefinement(e,t)},toggleFacetRefinement:function(e,t){if(this.isHierarchicalFacet(e))return this.toggleHierarchicalFacetRefinement(e,t);if(this.isConjunctiveFacet(e))return this.toggleConjunctiveFacetRefinement(e,t);if(this.isDisjunctiveFacet(e))return this.toggleDisjunctiveFacetRefinement(e,t);throw new Error("Cannot refine the undeclared facet "+e+"; it should be added to the helper options facets, disjunctiveFacets or hierarchicalFacets")},toggleConjunctiveFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return this.setQueryParameters({facetsRefinements:f.toggleRefinement(this.facetsRefinements,e,t)})},toggleExcludeFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return this.setQueryParameters({facetsExcludes:f.toggleRefinement(this.facetsExcludes,e,t)})},toggleDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return this.setQueryParameters({disjunctiveFacetsRefinements:f.toggleRefinement(this.disjunctiveFacetsRefinements,e,t)})},toggleHierarchicalFacetRefinement:function(e,t){if(!this.isHierarchicalFacet(e))throw new Error(e+" is not defined in the hierarchicalFacets attribute of the helper configuration");var r=this._getHierarchicalFacetSeparator(this.getHierarchicalFacetByName(e)),i={};return void 0!==this.hierarchicalFacetsRefinements[e]&&this.hierarchicalFacetsRefinements[e].length>0&&(this.hierarchicalFacetsRefinements[e][0]===t||0===this.hierarchicalFacetsRefinements[e][0].indexOf(t+r))?-1===t.indexOf(r)?i[e]=[]:i[e]=[t.slice(0,t.lastIndexOf(r))]:i[e]=[t],this.setQueryParameters({hierarchicalFacetsRefinements:n({},i,this.hierarchicalFacetsRefinements)})},addHierarchicalFacetRefinement:function(e,t){if(this.isHierarchicalFacetRefined(e))throw new Error(e+" is already refined.");if(!this.isHierarchicalFacet(e))throw new Error(e+" is not defined in the hierarchicalFacets attribute of the helper configuration.");var r={};return r[e]=[t],this.setQueryParameters({hierarchicalFacetsRefinements:n({},r,this.hierarchicalFacetsRefinements)})},removeHierarchicalFacetRefinement:function(e){if(!this.isHierarchicalFacetRefined(e))return this;var t={};return t[e]=[],this.setQueryParameters({hierarchicalFacetsRefinements:n({},t,this.hierarchicalFacetsRefinements)})},toggleTagRefinement:function(e){return this.isTagRefined(e)?this.removeTagRefinement(e):this.addTagRefinement(e)},isDisjunctiveFacet:function(e){return this.disjunctiveFacets.indexOf(e)>-1},isHierarchicalFacet:function(e){return void 0!==this.getHierarchicalFacetByName(e)},isConjunctiveFacet:function(e){return this.facets.indexOf(e)>-1},isFacetRefined:function(e,t){return!!this.isConjunctiveFacet(e)&&f.isRefined(this.facetsRefinements,e,t)},isExcludeRefined:function(e,t){return!!this.isConjunctiveFacet(e)&&f.isRefined(this.facetsExcludes,e,t)},isDisjunctiveFacetRefined:function(e,t){return!!this.isDisjunctiveFacet(e)&&f.isRefined(this.disjunctiveFacetsRefinements,e,t)},isHierarchicalFacetRefined:function(e,t){if(!this.isHierarchicalFacet(e))return!1;var r=this.getHierarchicalRefinement(e);return t?-1!==r.indexOf(t):r.length>0},isNumericRefined:function(e,t,r){if(void 0===r&&void 0===t)return Boolean(this.numericRefinements[e]);var n=this.numericRefinements[e]&&void 0!==this.numericRefinements[e][t];if(void 0===r||!n)return n;var s,a,c=u(r),o=void 0!==(s=this.numericRefinements[e][t],a=c,i(s,(function(e){return l(e,a)})));return n&&o},isTagRefined:function(e){return-1!==this.tagRefinements.indexOf(e)},getRefinedDisjunctiveFacets:function(){var e=this,t=s(Object.keys(this.numericRefinements).filter((function(t){return Object.keys(e.numericRefinements[t]).length>0})),this.disjunctiveFacets);return Object.keys(this.disjunctiveFacetsRefinements).filter((function(t){return e.disjunctiveFacetsRefinements[t].length>0})).concat(t).concat(this.getRefinedHierarchicalFacets()).sort()},getRefinedHierarchicalFacets:function(){var e=this;return s(this.hierarchicalFacets.map((function(e){return e.name})),Object.keys(this.hierarchicalFacetsRefinements).filter((function(t){return e.hierarchicalFacetsRefinements[t].length>0}))).sort()},getUnrefinedDisjunctiveFacets:function(){var e=this.getRefinedDisjunctiveFacets();return this.disjunctiveFacets.filter((function(t){return-1===e.indexOf(t)}))},managedParameters:["index","facets","disjunctiveFacets","facetsRefinements","hierarchicalFacets","facetsExcludes","disjunctiveFacetsRefinements","numericRefinements","tagRefinements","hierarchicalFacetsRefinements"],getQueryParams:function(){var e=this.managedParameters,t={},r=this;return Object.keys(this).forEach((function(n){var i=r[n];-1===e.indexOf(n)&&void 0!==i&&(t[n]=i)})),t},setQueryParameter:function(e,t){if(this[e]===t)return this;var r={};return r[e]=t,this.setQueryParameters(r)},setQueryParameters:function(e){if(!e)return this;var t=m.validate(this,e);if(t)throw t;var r=this,n=m._parseNumbers(e),i=Object.keys(this).reduce((function(e,t){return e[t]=r[t],e}),{}),s=Object.keys(n).reduce((function(e,t){var r=void 0!==e[t],i=void 0!==n[t];return r&&!i?o(e,[t]):(i&&(e[t]=n[t]),e)}),i);return new this.constructor(s)},resetPage:function(){return void 0===this.page?this:this.setPage(0)},_getHierarchicalFacetSortBy:function(e){return e.sortBy||["isRefined:desc","name:asc"]},_getHierarchicalFacetSeparator:function(e){return e.separator||" > "},_getHierarchicalRootPath:function(e){return e.rootPath||null},_getHierarchicalShowParentLevel:function(e){return"boolean"!=typeof e.showParentLevel||e.showParentLevel},getHierarchicalFacetByName:function(e){return i(this.hierarchicalFacets,(function(t){return t.name===e}))},getHierarchicalFacetBreadcrumb:function(e){if(!this.isHierarchicalFacet(e))return[];var t=this.getHierarchicalRefinement(e)[0];if(!t)return[];var r=this._getHierarchicalFacetSeparator(this.getHierarchicalFacetByName(e));return t.split(r).map((function(e){return e.trim()}))},toString:function(){return JSON.stringify(this,null,2)}},e.exports=m},3222:(e,t,r)=>{"use strict";e.exports=function(e){return function(t,r){var n=e.hierarchicalFacets[r],u=e.hierarchicalFacetsRefinements[n.name]&&e.hierarchicalFacetsRefinements[n.name][0]||"",h=e._getHierarchicalFacetSeparator(n),f=e._getHierarchicalRootPath(n),l=e._getHierarchicalShowParentLevel(n),m=s(e._getHierarchicalFacetSortBy(n)),d=t.every((function(e){return e.exhaustive})),p=function(e,t,r,n,s){return function(u,h,f){var l=u;if(f>0){var m=0;for(l=u;m{"use strict";var n=r(8112),i=r(4905),s=r(5118),a=r(6690),c=r(8060),o=r(6090),u=r(6953),h=r(9940),f=s.escapeFacetValue,l=s.unescapeFacetValue,m=r(3222);function d(e){var t={};return e.forEach((function(e,r){t[e]=r})),t}function p(e,t,r){t&&t[r]&&(e.stats=t[r])}function g(e,t,r){var s=t[0]||{};this._rawResults=t;var o=this;Object.keys(s).forEach((function(e){o[e]=s[e]}));var h=u({persistHierarchicalRootCount:!1},r);Object.keys(h).forEach((function(e){o[e]=h[e]})),this.processingTimeMS=t.reduce((function(e,t){return void 0===t.processingTimeMS?e:e+t.processingTimeMS}),0),this.disjunctiveFacets=[],this.hierarchicalFacets=e.hierarchicalFacets.map((function(){return[]})),this.facets=[];var f=e.getRefinedDisjunctiveFacets(),g=d(e.facets),v=d(e.disjunctiveFacets),y=1,R=s.facets||{};Object.keys(R).forEach((function(t){var r,n,i=R[t],u=(r=e.hierarchicalFacets,n=t,a(r,(function(e){return(e.attributes||[]).indexOf(n)>-1})));if(u){var h=u.attributes.indexOf(t),f=c(e.hierarchicalFacets,(function(e){return e.name===u.name}));o.hierarchicalFacets[f][h]={attribute:t,data:i,exhaustive:s.exhaustiveFacetsCount}}else{var l,m=-1!==e.disjunctiveFacets.indexOf(t),d=-1!==e.facets.indexOf(t);m&&(l=v[t],o.disjunctiveFacets[l]={name:t,data:i,exhaustive:s.exhaustiveFacetsCount},p(o.disjunctiveFacets[l],s.facets_stats,t)),d&&(l=g[t],o.facets[l]={name:t,data:i,exhaustive:s.exhaustiveFacetsCount},p(o.facets[l],s.facets_stats,t))}})),this.hierarchicalFacets=n(this.hierarchicalFacets),f.forEach((function(r){var n=t[y],a=n&&n.facets?n.facets:{},h=e.getHierarchicalFacetByName(r);Object.keys(a).forEach((function(t){var r,f=a[t];if(h){r=c(e.hierarchicalFacets,(function(e){return e.name===h.name}));var m=c(o.hierarchicalFacets[r],(function(e){return e.attribute===t}));if(-1===m)return;o.hierarchicalFacets[r][m].data=u({},o.hierarchicalFacets[r][m].data,f)}else{r=v[t];var d=s.facets&&s.facets[t]||{};o.disjunctiveFacets[r]={name:t,data:i({},f,d),exhaustive:n.exhaustiveFacetsCount},p(o.disjunctiveFacets[r],n.facets_stats,t),e.disjunctiveFacetsRefinements[t]&&e.disjunctiveFacetsRefinements[t].forEach((function(n){!o.disjunctiveFacets[r].data[n]&&e.disjunctiveFacetsRefinements[t].indexOf(l(n))>-1&&(o.disjunctiveFacets[r].data[n]=0)}))}})),y++})),e.getRefinedHierarchicalFacets().forEach((function(r){var n=e.getHierarchicalFacetByName(r),s=e._getHierarchicalFacetSeparator(n),a=e.getHierarchicalRefinement(r);0===a.length||a[0].split(s).length<2||t.slice(y).forEach((function(t){var r=t&&t.facets?t.facets:{};Object.keys(r).forEach((function(t){var u=r[t],h=c(e.hierarchicalFacets,(function(e){return e.name===n.name})),f=c(o.hierarchicalFacets[h],(function(e){return e.attribute===t}));if(-1!==f){var l={};if(a.length>0&&!o.persistHierarchicalRootCount){var m=a[0].split(s)[0];l[m]=o.hierarchicalFacets[h][f].data[m]}o.hierarchicalFacets[h][f].data=i(l,u,o.hierarchicalFacets[h][f].data)}})),y++}))})),Object.keys(e.facetsExcludes).forEach((function(t){var r=e.facetsExcludes[t],n=g[t];o.facets[n]={name:t,data:R[t],exhaustive:s.exhaustiveFacetsCount},r.forEach((function(e){o.facets[n]=o.facets[n]||{name:t},o.facets[n].data=o.facets[n].data||{},o.facets[n].data[e]=0}))})),this.hierarchicalFacets=this.hierarchicalFacets.map(m(e)),this.facets=n(this.facets),this.disjunctiveFacets=n(this.disjunctiveFacets),this._state=e}function v(e,t){function r(e){return e.name===t}if(e._state.isConjunctiveFacet(t)){var n=a(e.facets,r);return n?Object.keys(n.data).map((function(r){var i=f(r);return{name:r,escapedValue:i,count:n.data[r],isRefined:e._state.isFacetRefined(t,i),isExcluded:e._state.isExcludeRefined(t,r)}})):[]}if(e._state.isDisjunctiveFacet(t)){var i=a(e.disjunctiveFacets,r);return i?Object.keys(i.data).map((function(r){var n=f(r);return{name:r,escapedValue:n,count:i.data[r],isRefined:e._state.isDisjunctiveFacetRefined(t,n)}})):[]}if(e._state.isHierarchicalFacet(t)){var s=a(e.hierarchicalFacets,r);if(!s)return s;var c=e._state.getHierarchicalFacetByName(t),o=e._state._getHierarchicalFacetSeparator(c),u=l(e._state.getHierarchicalRefinement(t)[0]||"");0===u.indexOf(c.rootPath)&&(u=u.replace(c.rootPath+o,""));var h=u.split(o);return h.unshift(t),y(s,h,0),s}}function y(e,t,r){e.isRefined=e.name===(t[r]&&t[r].trim()),e.data&&e.data.forEach((function(e){y(e,t,r+1)}))}function R(e,t,r,n){if(n=n||0,Array.isArray(t))return e(t,r[n]);if(!t.data||0===t.data.length)return t;var s=t.data.map((function(t){return R(e,t,r,n+1)})),a=e(s,r[n]);return i({data:a},t)}function F(e,t){var r=a(e,(function(e){return e.name===t}));return r&&r.stats}function b(e,t,r,n,i){var s=a(i,(function(e){return e.name===r})),c=s&&s.data&&s.data[n]?s.data[n]:0,o=s&&s.exhaustive||!1;return{type:t,attributeName:r,name:n,count:c,exhaustive:o}}g.prototype.getFacetByName=function(e){function t(t){return t.name===e}return a(this.facets,t)||a(this.disjunctiveFacets,t)||a(this.hierarchicalFacets,t)},g.DEFAULT_SORT=["isRefined:desc","count:desc","name:asc"],g.prototype.getFacetValues=function(e,t){var r=v(this,e);if(r){var n,s=i({},t,{sortBy:g.DEFAULT_SORT,facetOrdering:!(t&&t.sortBy)}),a=this;if(Array.isArray(r))n=[e];else n=a._state.getHierarchicalFacetByName(r.name).attributes;return R((function(e,t){if(s.facetOrdering){var r=function(e,t){return e.renderingContent&&e.renderingContent.facetOrdering&&e.renderingContent.facetOrdering.values&&e.renderingContent.facetOrdering.values[t]}(a,t);if(r)return function(e,t){var r=[],n=[],i=t.hide||[],s=(t.order||[]).reduce((function(e,t,r){return e[t]=r,e}),{});e.forEach((function(e){var t=e.path||e.name,a=i.indexOf(t)>-1;a||void 0===s[t]?a||n.push(e):r[s[t]]=e})),r=r.filter((function(e){return e}));var a,c=t.sortRemainingBy;return"hidden"===c?r:(a="alpha"===c?[["path","name"],["asc","asc"]]:[["count"],["desc"]],r.concat(h(n,a[0],a[1])))}(e,r)}if(Array.isArray(s.sortBy)){var n=o(s.sortBy,g.DEFAULT_SORT);return h(e,n[0],n[1])}if("function"==typeof s.sortBy)return function(e,t){return t.sort(e)}(s.sortBy,e);throw new Error("options.sortBy is optional but if defined it must be either an array of string (predicates) or a sorting function")}),r,n)}},g.prototype.getFacetStats=function(e){return this._state.isConjunctiveFacet(e)?F(this.facets,e):this._state.isDisjunctiveFacet(e)?F(this.disjunctiveFacets,e):void 0},g.prototype.getRefinements=function(){var e=this._state,t=this,r=[];return Object.keys(e.facetsRefinements).forEach((function(n){e.facetsRefinements[n].forEach((function(i){r.push(b(e,"facet",n,i,t.facets))}))})),Object.keys(e.facetsExcludes).forEach((function(n){e.facetsExcludes[n].forEach((function(i){r.push(b(e,"exclude",n,i,t.facets))}))})),Object.keys(e.disjunctiveFacetsRefinements).forEach((function(n){e.disjunctiveFacetsRefinements[n].forEach((function(i){r.push(b(e,"disjunctive",n,i,t.disjunctiveFacets))}))})),Object.keys(e.hierarchicalFacetsRefinements).forEach((function(n){e.hierarchicalFacetsRefinements[n].forEach((function(i){r.push(function(e,t,r,n){var i=e.getHierarchicalFacetByName(t),s=e._getHierarchicalFacetSeparator(i),c=r.split(s),o=a(n,(function(e){return e.name===t})),u=c.reduce((function(e,t){var r=e&&a(e.data,(function(e){return e.name===t}));return void 0!==r?r:e}),o),h=u&&u.count||0,f=u&&u.exhaustive||!1,l=u&&u.path||"";return{type:"hierarchical",attributeName:t,name:l,count:h,exhaustive:f}}(e,n,i,t.hierarchicalFacets))}))})),Object.keys(e.numericRefinements).forEach((function(t){var n=e.numericRefinements[t];Object.keys(n).forEach((function(e){n[e].forEach((function(n){r.push({type:"numeric",attributeName:t,name:n,numericValue:n,operator:e})}))}))})),e.tagRefinements.forEach((function(e){r.push({type:"tag",attributeName:"_tags",name:e})})),r},e.exports=g},7728:(e,t,r)=>{"use strict";var n=r(8181),i=r(7085),s=r(5118).escapeFacetValue,a=r(7461),c=r(6953),o=r(5512),u=r(5188),h=r(2538),f=r(6172),l=r(2927),m=r(4908),d=r(7298),p=r(3464),g=r(3015);function v(e,t,r,n){"function"==typeof e.addAlgoliaAgent&&e.addAlgoliaAgent("JS Helper ("+g+")"),this.setClient(e);var i=r||{};i.index=t,this.state=m.make(i),this.recommendState=new h({params:i.recommendState}),this.lastResults=null,this.lastRecommendResults=null,this._queryId=0,this._recommendQueryId=0,this._lastQueryIdReceived=-1,this._lastRecommendQueryIdReceived=-1,this.derivedHelpers=[],this._currentNbQueries=0,this._currentNbRecommendQueries=0,this._searchResultsOptions=n,this._recommendCache={}}function y(e){if(e<0)throw new Error("Page requested below 0.");return this._change({state:this.state.setPage(e),isPageReset:!1}),this}function R(){return this.state.page}a(v,n),v.prototype.search=function(){return this._search({onlyWithDerivedHelpers:!1}),this},v.prototype.searchOnlyWithDerivedHelpers=function(){return this._search({onlyWithDerivedHelpers:!0}),this},v.prototype.recommend=function(){return this._recommend(),this},v.prototype.getQuery=function(){var e=this.state;return l._getHitsSearchParams(e)},v.prototype.searchOnce=function(e,t){var r=e?this.state.setQueryParameters(e):this.state,n=l._getQueries(r.index,r),i=this;if(this._currentNbQueries++,this.emit("searchOnce",{state:r}),!t)return this.client.search(n).then((function(e){return i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),{content:new d(r,e.results),state:r,_originalResponse:e}}),(function(e){throw i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),e}));this.client.search(n).then((function(e){i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),t(null,new d(r,e.results),r)})).catch((function(e){i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),t(e,null,r)}))},v.prototype.findAnswers=function(e){console.warn("[algoliasearch-helper] answers is no longer supported");var t=this.state,r=this.derivedHelpers[0];if(!r)return Promise.resolve([]);var n=r.getModifiedState(t),i=c({attributesForPrediction:e.attributesForPrediction,nbHits:e.nbHits},{params:u(l._getHitsSearchParams(n),["attributesToSnippet","hitsPerPage","restrictSearchableAttributes","snippetEllipsisText"])}),s="search for answers was called, but this client does not have a function client.initIndex(index).findAnswers";if("function"!=typeof this.client.initIndex)throw new Error(s);var a=this.client.initIndex(n.index);if("function"!=typeof a.findAnswers)throw new Error(s);return a.findAnswers(n.query,e.queryLanguages,i)},v.prototype.searchForFacetValues=function(e,t,r,n){var i="function"==typeof this.client.searchForFacetValues,a="function"==typeof this.client.initIndex;if(!i&&!a&&"function"!=typeof this.client.search)throw new Error("search for facet values (searchable) was called, but this client does not have a function client.searchForFacetValues or client.initIndex(index).searchForFacetValues");var c=this.state.setQueryParameters(n||{}),o=c.isDisjunctiveFacet(e),u=l.getSearchForFacetQuery(e,t,r,c);this._currentNbQueries++;var h,f=this;return i?h=this.client.searchForFacetValues([{indexName:c.index,params:u}]):a?h=this.client.initIndex(c.index).searchForFacetValues(u):(delete u.facetName,h=this.client.search([{type:"facet",facet:e,indexName:c.index,params:u}]).then((function(e){return e.results[0]}))),this.emit("searchForFacetValues",{state:c,facet:e,query:t}),h.then((function(t){return f._currentNbQueries--,0===f._currentNbQueries&&f.emit("searchQueueEmpty"),(t=Array.isArray(t)?t[0]:t).facetHits.forEach((function(t){t.escapedValue=s(t.value),t.isRefined=o?c.isDisjunctiveFacetRefined(e,t.escapedValue):c.isFacetRefined(e,t.escapedValue)})),t}),(function(e){throw f._currentNbQueries--,0===f._currentNbQueries&&f.emit("searchQueueEmpty"),e}))},v.prototype.setQuery=function(e){return this._change({state:this.state.resetPage().setQuery(e),isPageReset:!0}),this},v.prototype.clearRefinements=function(e){return this._change({state:this.state.resetPage().clearRefinements(e),isPageReset:!0}),this},v.prototype.clearTags=function(){return this._change({state:this.state.resetPage().clearTags(),isPageReset:!0}),this},v.prototype.addDisjunctiveFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addDisjunctiveFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.addDisjunctiveRefine=function(){return this.addDisjunctiveFacetRefinement.apply(this,arguments)},v.prototype.addHierarchicalFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addHierarchicalFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.addNumericRefinement=function(e,t,r){return this._change({state:this.state.resetPage().addNumericRefinement(e,t,r),isPageReset:!0}),this},v.prototype.addFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.addRefine=function(){return this.addFacetRefinement.apply(this,arguments)},v.prototype.addFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().addExcludeRefinement(e,t),isPageReset:!0}),this},v.prototype.addExclude=function(){return this.addFacetExclusion.apply(this,arguments)},v.prototype.addTag=function(e){return this._change({state:this.state.resetPage().addTagRefinement(e),isPageReset:!0}),this},v.prototype.addFrequentlyBoughtTogether=function(e){return this._recommendChange({state:this.recommendState.addFrequentlyBoughtTogether(e)}),this},v.prototype.addRelatedProducts=function(e){return this._recommendChange({state:this.recommendState.addRelatedProducts(e)}),this},v.prototype.addTrendingItems=function(e){return this._recommendChange({state:this.recommendState.addTrendingItems(e)}),this},v.prototype.addTrendingFacets=function(e){return this._recommendChange({state:this.recommendState.addTrendingFacets(e)}),this},v.prototype.addLookingSimilar=function(e){return this._recommendChange({state:this.recommendState.addLookingSimilar(e)}),this},v.prototype.removeNumericRefinement=function(e,t,r){return this._change({state:this.state.resetPage().removeNumericRefinement(e,t,r),isPageReset:!0}),this},v.prototype.removeDisjunctiveFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().removeDisjunctiveFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.removeDisjunctiveRefine=function(){return this.removeDisjunctiveFacetRefinement.apply(this,arguments)},v.prototype.removeHierarchicalFacetRefinement=function(e){return this._change({state:this.state.resetPage().removeHierarchicalFacetRefinement(e),isPageReset:!0}),this},v.prototype.removeFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().removeFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.removeRefine=function(){return this.removeFacetRefinement.apply(this,arguments)},v.prototype.removeFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().removeExcludeRefinement(e,t),isPageReset:!0}),this},v.prototype.removeExclude=function(){return this.removeFacetExclusion.apply(this,arguments)},v.prototype.removeTag=function(e){return this._change({state:this.state.resetPage().removeTagRefinement(e),isPageReset:!0}),this},v.prototype.removeFrequentlyBoughtTogether=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeRelatedProducts=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeTrendingItems=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeTrendingFacets=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.removeLookingSimilar=function(e){return this._recommendChange({state:this.recommendState.removeParams(e)}),this},v.prototype.toggleFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().toggleExcludeFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.toggleExclude=function(){return this.toggleFacetExclusion.apply(this,arguments)},v.prototype.toggleRefinement=function(e,t){return this.toggleFacetRefinement(e,t)},v.prototype.toggleFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().toggleFacetRefinement(e,t),isPageReset:!0}),this},v.prototype.toggleRefine=function(){return this.toggleFacetRefinement.apply(this,arguments)},v.prototype.toggleTag=function(e){return this._change({state:this.state.resetPage().toggleTagRefinement(e),isPageReset:!0}),this},v.prototype.nextPage=function(){var e=this.state.page||0;return this.setPage(e+1)},v.prototype.previousPage=function(){var e=this.state.page||0;return this.setPage(e-1)},v.prototype.setCurrentPage=y,v.prototype.setPage=y,v.prototype.setIndex=function(e){return this._change({state:this.state.resetPage().setIndex(e),isPageReset:!0}),this},v.prototype.setQueryParameter=function(e,t){return this._change({state:this.state.resetPage().setQueryParameter(e,t),isPageReset:!0}),this},v.prototype.setState=function(e){return this._change({state:m.make(e),isPageReset:!1}),this},v.prototype.overrideStateWithoutTriggeringChangeEvent=function(e){return this.state=new m(e),this},v.prototype.hasRefinements=function(e){return!!o(this.state.getNumericRefinements(e))||(this.state.isConjunctiveFacet(e)?this.state.isFacetRefined(e):this.state.isDisjunctiveFacet(e)?this.state.isDisjunctiveFacetRefined(e):!!this.state.isHierarchicalFacet(e)&&this.state.isHierarchicalFacetRefined(e))},v.prototype.isExcluded=function(e,t){return this.state.isExcludeRefined(e,t)},v.prototype.isDisjunctiveRefined=function(e,t){return this.state.isDisjunctiveFacetRefined(e,t)},v.prototype.hasTag=function(e){return this.state.isTagRefined(e)},v.prototype.isTagRefined=function(){return this.hasTagRefinements.apply(this,arguments)},v.prototype.getIndex=function(){return this.state.index},v.prototype.getCurrentPage=R,v.prototype.getPage=R,v.prototype.getTags=function(){return this.state.tagRefinements},v.prototype.getRefinements=function(e){var t=[];if(this.state.isConjunctiveFacet(e))this.state.getConjunctiveRefinements(e).forEach((function(e){t.push({value:e,type:"conjunctive"})})),this.state.getExcludeRefinements(e).forEach((function(e){t.push({value:e,type:"exclude"})}));else if(this.state.isDisjunctiveFacet(e)){this.state.getDisjunctiveRefinements(e).forEach((function(e){t.push({value:e,type:"disjunctive"})}))}var r=this.state.getNumericRefinements(e);return Object.keys(r).forEach((function(e){var n=r[e];t.push({value:n,operator:e,type:"numeric"})})),t},v.prototype.getNumericRefinement=function(e,t){return this.state.getNumericRefinement(e,t)},v.prototype.getHierarchicalFacetBreadcrumb=function(e){return this.state.getHierarchicalFacetBreadcrumb(e)},v.prototype._search=function(e){var t=this.state,r=[],n=[];e.onlyWithDerivedHelpers||(n=l._getQueries(t.index,t),r.push({state:t,queriesCount:n.length,helper:this}),this.emit("search",{state:t,results:this.lastResults}));var i=this.derivedHelpers.map((function(e){var n=e.getModifiedState(t),i=n.index?l._getQueries(n.index,n):[];return r.push({state:n,queriesCount:i.length,helper:e}),e.emit("search",{state:n,results:e.lastResults}),i})),s=Array.prototype.concat.apply(n,i),a=this._queryId++;if(this._currentNbQueries++,!s.length)return Promise.resolve({results:[]}).then(this._dispatchAlgoliaResponse.bind(this,r,a));try{this.client.search(s).then(this._dispatchAlgoliaResponse.bind(this,r,a)).catch(this._dispatchAlgoliaError.bind(this,a))}catch(c){this.emit("error",{error:c})}},v.prototype._recommend=function(){var e=this.state,t=this.recommendState,r=this.getIndex(),n=[{state:t,index:r,helper:this}],i=t.params.map((function(e){return e.$$id}));this.emit("fetch",{recommend:{state:t,results:this.lastRecommendResults}});var s=this._recommendCache,a=this.derivedHelpers.map((function(t){var r=t.getModifiedState(e).index;if(!r)return[];var a=t.getModifiedRecommendState(new h);return n.push({state:a,index:r,helper:t}),i=Array.prototype.concat.apply(i,a.params.map((function(e){return e.$$id}))),t.emit("fetch",{recommend:{state:a,results:t.lastRecommendResults}}),a._buildQueries(r,s)})),c=Array.prototype.concat.apply(this.recommendState._buildQueries(r,s),a);if(0!==c.length)if(c.length>0&&void 0===this.client.getRecommendations)console.warn("Please update algoliasearch/lite to the latest version in order to use recommend widgets.");else{var o=this._recommendQueryId++;this._currentNbRecommendQueries++;try{this.client.getRecommendations(c).then(this._dispatchRecommendResponse.bind(this,o,n,i)).catch(this._dispatchRecommendError.bind(this,o))}catch(u){this.emit("error",{error:u})}}},v.prototype._dispatchAlgoliaResponse=function(e,t,r){var n=this;if(!(t0},v.prototype._change=function(e){var t=e.state,r=e.isPageReset;t!==this.state&&(this.state=t,this.emit("change",{state:this.state,results:this.lastResults,isPageReset:r}))},v.prototype._recommendChange=function(e){var t=e.state;t!==this.recommendState&&(this.recommendState=t,this.emit("recommend:change",{search:{results:this.lastResults,state:this.state},recommend:{results:this.lastRecommendResults,state:this.recommendState}}))},v.prototype.clearCache=function(){return this.client.clearCache&&this.client.clearCache(),this},v.prototype.setClient=function(e){return this.client===e||("function"==typeof e.addAlgoliaAgent&&e.addAlgoliaAgent("JS Helper ("+g+")"),this.client=e),this},v.prototype.getClient=function(){return this.client},v.prototype.derive=function(e,t){var r=new i(this,e,t);return this.derivedHelpers.push(r),r},v.prototype.detachDerivedHelper=function(e){var t=this.derivedHelpers.indexOf(e);if(-1===t)throw new Error("Derived helper already detached");this.derivedHelpers.splice(t,1)},v.prototype.hasPendingRequests=function(){return this._currentNbQueries>0},e.exports=v},8112:e=>{"use strict";e.exports=function(e){return Array.isArray(e)?e.filter(Boolean):[]}},4905:e=>{"use strict";e.exports=function(){return Array.prototype.slice.call(arguments).reduceRight((function(e,t){return Object.keys(Object(t)).forEach((function(r){void 0!==t[r]&&(void 0!==e[r]&&delete e[r],e[r]=t[r])})),e}),{})}},5118:e=>{"use strict";e.exports={escapeFacetValue:function(e){return"string"!=typeof e?e:String(e).replace(/^-/,"\\-")},unescapeFacetValue:function(e){return"string"!=typeof e?e:e.replace(/^\\-/,"-")}}},6690:e=>{"use strict";e.exports=function(e,t){if(Array.isArray(e))for(var r=0;r{"use strict";e.exports=function(e,t){if(!Array.isArray(e))return-1;for(var r=0;r{e.exports=function(e){return e.reduce((function(e,t){return e.concat(t)}),[])}},6090:(e,t,r)=>{"use strict";var n=r(6690);e.exports=function(e,t){var r=(t||[]).map((function(e){return e.split(":")}));return e.reduce((function(e,t){var i=t.split(":"),s=n(r,(function(e){return e[0]===i[0]}));return i.length>1||!s?(e[0].push(i[0]),e[1].push(i[1]),e):(e[0].push(s[0]),e[1].push(s[1]),e)}),[[],[]])}},7461:e=>{"use strict";e.exports=function(e,t){e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}},8280:e=>{"use strict";e.exports=function(e,t){return e.filter((function(r,n){return t.indexOf(r)>-1&&e.indexOf(r)===n}))}},6953:e=>{"use strict";function t(e){return"function"==typeof e||Array.isArray(e)||"[object Object]"===Object.prototype.toString.call(e)}function r(e,n){if(e===n)return e;for(var i in n)if(Object.prototype.hasOwnProperty.call(n,i)&&"__proto__"!==i&&"constructor"!==i){var s=n[i],a=e[i];void 0!==a&&void 0===s||(t(a)&&t(s)?e[i]=r(a,s):e[i]="object"==typeof(c=s)&&null!==c?r(Array.isArray(c)?[]:{},c):c)}var c;return e}e.exports=function(e){t(e)||(e={});for(var n=1,i=arguments.length;n{"use strict";e.exports=function(e){return e&&Object.keys(e).length>0}},5188:e=>{"use strict";e.exports=function(e,t){if(null===e)return{};var r,n,i={},s=Object.keys(e);for(n=0;n=0||(i[r]=e[r]);return i}},9940:e=>{"use strict";function t(e,t){if(e!==t){var r=void 0!==e,n=null===e,i=void 0!==t,s=null===t;if(!s&&e>t||n&&i||!r)return 1;if(!n&&e=n.length?s:"desc"===n[i]?-s:s}return e.index-r.index})),i.map((function(e){return e.value}))}},2374:e=>{"use strict";e.exports=function e(t){if("number"==typeof t)return t;if("string"==typeof t)return parseFloat(t);if(Array.isArray(t))return t.map(e);throw new Error("The value should be a number, a parsable string or an array of those.")}},2927:(e,t,r)=>{"use strict";var n=r(6953);function i(e){return Object.keys(e).sort().reduce((function(t,r){return t[r]=e[r],t}),{})}var s={_getQueries:function(e,t){var r=[];return r.push({indexName:e,params:s._getHitsSearchParams(t)}),t.getRefinedDisjunctiveFacets().forEach((function(n){r.push({indexName:e,params:s._getDisjunctiveFacetSearchParams(t,n)})})),t.getRefinedHierarchicalFacets().forEach((function(n){var i=t.getHierarchicalFacetByName(n),a=t.getHierarchicalRefinement(n),c=t._getHierarchicalFacetSeparator(i);if(a.length>0&&a[0].split(c).length>1){var o=a[0].split(c).slice(0,-1).reduce((function(e,t,r){return e.concat({attribute:i.attributes[r],value:0===r?t:[e[e.length-1].value,t].join(c)})}),[]);o.forEach((function(n,a){var c=s._getDisjunctiveFacetSearchParams(t,n.attribute,0===a);function u(e){return i.attributes.some((function(t){return t===e.split(":")[0]}))}var h=(c.facetFilters||[]).reduce((function(e,t){if(Array.isArray(t)){var r=t.filter((function(e){return!u(e)}));r.length>0&&e.push(r)}return"string"!=typeof t||u(t)||e.push(t),e}),[]),f=o[a-1];a>0?c.facetFilters=h.concat(f.attribute+":"+f.value):h.length>0?c.facetFilters=h:delete c.facetFilters,r.push({indexName:e,params:c})}))}})),r},_getHitsSearchParams:function(e){var t=e.facets.concat(e.disjunctiveFacets).concat(s._getHitsHierarchicalFacetsAttributes(e)).sort(),r=s._getFacetFilters(e),a=s._getNumericFilters(e),c=s._getTagFilters(e),o={};return t.length>0&&(o.facets=t.indexOf("*")>-1?["*"]:t),c.length>0&&(o.tagFilters=c),r.length>0&&(o.facetFilters=r),a.length>0&&(o.numericFilters=a),i(n({},e.getQueryParams(),o))},_getDisjunctiveFacetSearchParams:function(e,t,r){var a=s._getFacetFilters(e,t,r),c=s._getNumericFilters(e,t),o=s._getTagFilters(e),u={hitsPerPage:0,page:0,analytics:!1,clickAnalytics:!1};o.length>0&&(u.tagFilters=o);var h=e.getHierarchicalFacetByName(t);return u.facets=h?s._getDisjunctiveHierarchicalFacetAttribute(e,h,r):t,c.length>0&&(u.numericFilters=c),a.length>0&&(u.facetFilters=a),i(n({},e.getQueryParams(),u))},_getNumericFilters:function(e,t){if(e.numericFilters)return e.numericFilters;var r=[];return Object.keys(e.numericRefinements).forEach((function(n){var i=e.numericRefinements[n]||{};Object.keys(i).forEach((function(e){var s=i[e]||[];t!==n&&s.forEach((function(t){if(Array.isArray(t)){var i=t.map((function(t){return n+e+t}));r.push(i)}else r.push(n+e+t)}))}))})),r},_getTagFilters:function(e){return e.tagFilters?e.tagFilters:e.tagRefinements.join(",")},_getFacetFilters:function(e,t,r){var n=[],i=e.facetsRefinements||{};Object.keys(i).sort().forEach((function(e){(i[e]||[]).slice().sort().forEach((function(t){n.push(e+":"+t)}))}));var s=e.facetsExcludes||{};Object.keys(s).sort().forEach((function(e){(s[e]||[]).sort().forEach((function(t){n.push(e+":-"+t)}))}));var a=e.disjunctiveFacetsRefinements||{};Object.keys(a).sort().forEach((function(e){var r=a[e]||[];if(e!==t&&r&&0!==r.length){var i=[];r.slice().sort().forEach((function(t){i.push(e+":"+t)})),n.push(i)}}));var c=e.hierarchicalFacetsRefinements||{};return Object.keys(c).sort().forEach((function(i){var s=(c[i]||[])[0];if(void 0!==s){var a,o,u=e.getHierarchicalFacetByName(i),h=e._getHierarchicalFacetSeparator(u),f=e._getHierarchicalRootPath(u);if(t===i){if(-1===s.indexOf(h)||!f&&!0===r||f&&f.split(h).length===s.split(h).length)return;f?(o=f.split(h).length-1,s=f):(o=s.split(h).length-2,s=s.slice(0,s.lastIndexOf(h))),a=u.attributes[o]}else o=s.split(h).length-1,a=u.attributes[o];a&&n.push([a+":"+s])}})),n},_getHitsHierarchicalFacetsAttributes:function(e){return e.hierarchicalFacets.reduce((function(t,r){var n=e.getHierarchicalRefinement(r.name)[0];if(!n)return t.push(r.attributes[0]),t;var i=e._getHierarchicalFacetSeparator(r),s=n.split(i).length,a=r.attributes.slice(0,s+1);return t.concat(a)}),[])},_getDisjunctiveHierarchicalFacetAttribute:function(e,t,r){var n=e._getHierarchicalFacetSeparator(t);if(!0===r){var i=e._getHierarchicalRootPath(t),s=0;return i&&(s=i.split(n).length),[t.attributes[s]]}var a=(e.getHierarchicalRefinement(t.name)[0]||"").split(n).length-1;return t.attributes.slice(0,a+1)},getSearchForFacetQuery:function(e,t,r,a){var c=a.isDisjunctiveFacet(e)?a.clearRefinements(e):a,o={facetQuery:t,facetName:e};return"number"==typeof r&&(o.maxFacetHits=r),i(n({},s._getHitsSearchParams(c),o))}};e.exports=s},5727:e=>{"use strict";e.exports=function(e){return null!==e&&/^[a-zA-Z0-9_-]{1,64}$/.test(e)}},3464:(e,t,r)=>{"use strict";var n=r(6690),i=r(9522);e.exports=function(e){var t={};return e.forEach((function(e){e.forEach((function(e,r){t[e.objectID]?t[e.objectID]={indexSum:t[e.objectID].indexSum+r,count:t[e.objectID].count+1}:t[e.objectID]={indexSum:r,count:1}}))})),function(e,t){var r=[];return Object.keys(e).forEach((function(n){e[n].count<2&&(e[n].indexSum+=100),r.push({objectID:n,avgOfIndices:e[n].indexSum/t})})),r.sort((function(e,t){return e.avgOfIndices>t.avgOfIndices?1:-1}))}(t,e.length).reduce((function(t,r){var s=n(i(e),(function(e){return e.objectID===r.objectID}));return s?t.concat(s):t}),[])}},3015:e=>{"use strict";e.exports="3.22.4"},4306:function(e){e.exports=function(){"use strict";function e(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function r(r){for(var n=1;n=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var r=[],n=!0,i=!1,s=void 0;try{for(var a,c=e[Symbol.iterator]();!(n=(a=c.next()).done)&&(r.push(a.value),!t||r.length!==t);n=!0);}catch(e){i=!0,s=e}finally{try{n||null==c.return||c.return()}finally{if(i)throw s}}return r}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function s(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){c();var t=JSON.stringify(e);return s()[t]})).then((function(e){return Promise.all([e?e.value:t(),void 0!==e])})).then((function(e){var t=i(e,2),n=t[0],s=t[1];return Promise.all([n,s||r.miss(n)])})).then((function(e){return i(e,1)[0]}))},set:function(e,t){return Promise.resolve().then((function(){var i=s();return i[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:t},n().setItem(r,JSON.stringify(i)),t}))},delete:function(e){return Promise.resolve().then((function(){var t=s();delete t[JSON.stringify(e)],n().setItem(r,JSON.stringify(t))}))},clear:function(){return Promise.resolve().then((function(){n().removeItem(r)}))}}}function c(e){var t=s(e.caches),r=t.shift();return void 0===r?{get:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then((function(e){return Promise.all([e,r.miss(e)])})).then((function(e){return i(e,1)[0]}))},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(e,n,i).catch((function(){return c({caches:t}).get(e,n,i)}))},set:function(e,n){return r.set(e,n).catch((function(){return c({caches:t}).set(e,n)}))},delete:function(e){return r.delete(e).catch((function(){return c({caches:t}).delete(e)}))},clear:function(){return r.clear().catch((function(){return c({caches:t}).clear()}))}}}function o(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(r,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},s=JSON.stringify(r);if(s in t)return Promise.resolve(e.serializable?JSON.parse(t[s]):t[s]);var a=n(),c=i&&i.miss||function(){return Promise.resolve()};return a.then((function(e){return c(e)})).then((function(){return a}))},set:function(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function u(e){for(var t=e.length-1;t>0;t--){var r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function h(e,t){return t?(Object.keys(t).forEach((function(r){e[r]=t[r](e)})),e):e}function f(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var d={Read:1,Write:2,Any:3},p=1,g=2,v=3;function y(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;return r(r({},e),{},{status:t,lastUpdate:Date.now()})}function R(e){return"string"==typeof e?{protocol:"https",url:e,accept:d.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||d.Any}}var F="GET",b="POST";function j(e,t){return Promise.all(t.map((function(t){return e.get(t,(function(){return Promise.resolve(y(t))}))}))).then((function(e){var r=e.filter((function(e){return function(e){return e.status===p||Date.now()-e.lastUpdate>12e4}(e)})),n=e.filter((function(e){return function(e){return e.status===v&&Date.now()-e.lastUpdate<=12e4}(e)})),i=[].concat(s(r),s(n));return{getTimeout:function(e,t){return(0===n.length&&0===e?1:n.length+3+e)*t},statelessHosts:i.length>0?i.map((function(e){return R(e)})):t}}))}function _(e,t,n,i){var a=[],c=function(e,t){if(e.method!==F&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:r(r({},e.data),t.data);return JSON.stringify(n)}}(n,i),o=function(e,t){var n=r(r({},e.headers),t.headers),i={};return Object.keys(n).forEach((function(e){var t=n[e];i[e.toLowerCase()]=t})),i}(e,i),u=n.method,h=n.method!==F?{}:r(r({},n.data),i.data),f=r(r(r({"x-algolia-agent":e.userAgent.value},e.queryParameters),h),i.queryParameters),l=0,m=function t(r,s){var h=r.pop();if(void 0===h)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:O(a)};var m={data:c,headers:o,method:u,url:x(h,n.path,f),connectTimeout:s(l,e.timeouts.connect),responseTimeout:s(l,i.timeout)},d=function(e){var t={request:m,response:e,host:h,triesLeft:r.length};return a.push(t),t},p={onSuccess:function(e){return function(e){try{return JSON.parse(e.content)}catch(t){throw function(e,t){return{name:"DeserializationError",message:e,response:t}}(t.message,e)}}(e)},onRetry:function(n){var i=d(n);return n.isTimedOut&&l++,Promise.all([e.logger.info("Retryable failure",w(i)),e.hostsCache.set(h,y(h,n.isTimedOut?v:g))]).then((function(){return t(r,s)}))},onFail:function(e){throw d(e),function(e,t){var r=e.content,n=e.status,i=r;try{i=JSON.parse(r).message}catch(e){}return function(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}(i,n,t)}(e,O(a))}};return e.requester.send(m).then((function(e){return function(e,t){return function(e){var t=e.status;return e.isTimedOut||function(e){var t=e.isTimedOut,r=e.status;return!t&&!~~r}(e)||2!=~~(t/100)&&4!=~~(t/100)}(e)?t.onRetry(e):2==~~(e.status/100)?t.onSuccess(e):t.onFail(e)}(e,p)}))};return j(e.hostsCache,t).then((function(e){return m(s(e.statelessHosts).reverse(),e.getTimeout)}))}function P(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var r="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(r)&&(t.value="".concat(t.value).concat(r)),t}};return t}function x(e,t,r){var n=E(r),i="".concat(e.protocol,"://").concat(e.url,"/").concat("/"===t.charAt(0)?t.substr(1):t);return n.length&&(i+="?".concat(n)),i}function E(e){return Object.keys(e).map((function(t){return f("%s=%s",t,(r=e[t],"[object Object]"===Object.prototype.toString.call(r)||"[object Array]"===Object.prototype.toString.call(r)?JSON.stringify(e[t]):e[t]));var r})).join("&")}function O(e){return e.map((function(e){return w(e)}))}function w(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return r(r({},e),{},{request:r(r({},e.request),{},{headers:r(r({},e.request.headers),t)})})}var S=function(e){var t=e.appId,n=function(e,t,r){var n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers:function(){return e===l.WithinHeaders?n:{}},queryParameters:function(){return e===l.WithinQueryParameters?n:{}}}}(void 0!==e.authMode?e.authMode:l.WithinHeaders,t,e.apiKey),s=function(e){var t=e.hostsCache,r=e.logger,n=e.requester,s=e.requestsCache,a=e.responsesCache,c=e.timeouts,o=e.userAgent,u=e.hosts,h=e.queryParameters,f={hostsCache:t,logger:r,requester:n,requestsCache:s,responsesCache:a,timeouts:c,userAgent:o,headers:e.headers,queryParameters:h,hosts:u.map((function(e){return R(e)})),read:function(e,t){var r=m(t,f.timeouts.read),n=function(){return _(f,f.hosts.filter((function(e){return!!(e.accept&d.Read)})),e,r)};if(!0!==(void 0!==r.cacheable?r.cacheable:e.cacheable))return n();var s={request:e,mappedRequestOptions:r,transporter:{queryParameters:f.queryParameters,headers:f.headers}};return f.responsesCache.get(s,(function(){return f.requestsCache.get(s,(function(){return f.requestsCache.set(s,n()).then((function(e){return Promise.all([f.requestsCache.delete(s),e])}),(function(e){return Promise.all([f.requestsCache.delete(s),Promise.reject(e)])})).then((function(e){var t=i(e,2);return t[0],t[1]}))}))}),{miss:function(e){return f.responsesCache.set(s,e)}})},write:function(e,t){return _(f,f.hosts.filter((function(e){return!!(e.accept&d.Write)})),e,m(t,f.timeouts.write))}};return f}(r(r({hosts:[{url:"".concat(t,"-dsn.algolia.net"),accept:d.Read},{url:"".concat(t,".algolia.net"),accept:d.Write}].concat(u([{url:"".concat(t,"-1.algolianet.com")},{url:"".concat(t,"-2.algolianet.com")},{url:"".concat(t,"-3.algolianet.com")}]))},e),{},{headers:r(r(r({},n.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:r(r({},n.queryParameters()),e.queryParameters)}));return h({transporter:s,appId:t,addAlgoliaAgent:function(e,t){s.userAgent.add({segment:e,version:t})},clearCache:function(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then((function(){}))}},e.methods)},A=function(e){return function(t,r){return t.method===F?e.transporter.read(t,r):e.transporter.write(t,r)}},N=function(e){return function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return h({transporter:e.transporter,appId:e.appId,indexName:t},r.methods)}},H=function(e){return function(t,n){var i=t.map((function(e){return r(r({},e),{},{params:E(e.params||{})})}));return e.transporter.read({method:b,path:"1/indexes/*/queries",data:{requests:i},cacheable:!0},n)}},Q=function(e){return function(t,i){return Promise.all(t.map((function(t){var s=t.params,a=s.facetName,c=s.facetQuery,o=n(s,["facetName","facetQuery"]);return N(e)(t.indexName,{methods:{searchForFacetValues:I}}).searchForFacetValues(a,c,r(r({},i),o))})))}},T=function(e){return function(t,r,n){return e.transporter.read({method:b,path:f("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n)}},C=function(e){return function(t,r){return e.transporter.read({method:b,path:f("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r)}},I=function(e){return function(t,r,n){return e.transporter.read({method:b,path:f("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n)}},D=1,k=2,q=3,L=function(e){return function(t,n){var i=t.map((function(e){return r(r({},e),{},{threshold:e.threshold||0})}));return e.transporter.read({method:b,path:"1/indexes/*/recommendations",data:{requests:i},cacheable:!0},n)}};function V(e,t,n){var i,s={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:function(e){return new Promise((function(t){var r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((function(t){return r.setRequestHeader(t,e.headers[t])}));var n,i=function(e,n){return setTimeout((function(){r.abort(),t({status:0,content:n,isTimedOut:!0})}),1e3*e)},s=i(e.connectTimeout,"Connection timeout");r.onreadystatechange=function(){r.readyState>r.OPENED&&void 0===n&&(clearTimeout(s),n=i(e.responseTimeout,"Socket timeout"))},r.onerror=function(){0===r.status&&(clearTimeout(s),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=function(){clearTimeout(s),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},logger:(i=q,{debug:function(e,t){return D>=i&&console.debug(e,t),Promise.resolve()},info:function(e,t){return k>=i&&console.info(e,t),Promise.resolve()},error:function(e,t){return console.error(e,t),Promise.resolve()}}),responsesCache:o(),requestsCache:o({serializable:!1}),hostsCache:c({caches:[a({key:"".concat("4.24.0","-").concat(e)}),o()]}),userAgent:P("4.24.0").add({segment:"Browser",version:"lite"}),authMode:l.WithinQueryParameters};return S(r(r(r({},s),n),{},{methods:{search:H,searchForFacetValues:Q,multipleQueries:H,multipleSearchForFacetValues:Q,customRequest:A,initIndex:function(e){return function(t){return N(e)(t,{methods:{search:C,searchForFacetValues:I,findAnswers:T}})}},getRecommendations:L}}))}return V.version="4.24.0",V}()},5716:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>H});var n=r(758),i=r(3526),s=r(6678),a=r.n(s),c=r(4306),o=r.n(c),u=r(7028),h=r(6705),f=r(4475),l=r(3841),m=r(1299);const d=["zero","one","two","few","many","other"];function p(e){return d.filter((t=>e.includes(t)))}const g={locale:"en",pluralForms:p(["one","other"]),select:e=>1===e?"one":"other"};function v(){const{i18n:{currentLocale:e}}=(0,m.A)();return(0,n.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:p(t.resolvedOptions().pluralCategories),select:e=>t.select(e)}}(e)}catch(t){return console.error(`Failed to use Intl.PluralRules for locale "${e}".\nDocusaurus will fallback to the default (English) implementation.\nError: ${t.message}\n`),g}}),[e])}function y(){const e=v();return{selectMessage:(t,r)=>function(e,t,r){const n=e.split("|");if(1===n.length)return n[0];n.length>r.pluralForms.length&&console.error(`For locale=${r.locale}, a maximum of ${r.pluralForms.length} plural forms are expected (${r.pluralForms.join(",")}), but the message contains ${n.length}: ${e}`);const i=r.select(t),s=r.pluralForms.indexOf(i);return n[Math.min(s,n.length-1)]}(r,t,e)}}var R=r(9513),F=r(6889),b=r(5212),j=r(9631),_=r(2641),P=r(3612),x=r(7732),E=r(4622),O=r(48);const w={searchQueryInput:"searchQueryInput_Vtre",searchVersionInput:"searchVersionInput_pp72",searchResultsColumn:"searchResultsColumn_nXW0",algoliaLogo:"algoliaLogo_talY",algoliaLogoPathFill:"algoliaLogoPathFill_XktH",searchResultItem:"searchResultItem_dbGA",searchResultItemHeading:"searchResultItemHeading_E8lx",searchResultItemPath:"searchResultItemPath_IklF",searchResultItemSummary:"searchResultItemSummary_HO8W",searchQueryColumn:"searchQueryColumn_zOaR",searchVersionColumn:"searchVersionColumn_YFuH",searchLogoColumn:"searchLogoColumn_c6ut",loadingSpinner:"loadingSpinner_vJGe","loading-spin":"loading-spin_LX8L",loader:"loader_jW2z"};var S=r(6070);function A(e){let{docsSearchVersionsHelpers:t}=e;const r=Object.entries(t.allDocsData).filter((e=>{let[,t]=e;return t.versions.length>1}));return(0,S.jsx)("div",{className:(0,i.A)("col","col--3","padding-left--none",w.searchVersionColumn),children:r.map((e=>{let[n,i]=e;const s=r.length>1?`${n}: `:"";return(0,S.jsx)("select",{onChange:e=>t.setSearchVersion(n,e.target.value),defaultValue:t.searchVersions[n],className:w.searchVersionInput,children:i.versions.map(((e,t)=>(0,S.jsx)("option",{label:`${s}${e.label}`,value:e.name},t)))},n)}))})}function N(){const{i18n:{currentLocale:e}}=(0,m.A)(),{algolia:{appId:t,apiKey:r,indexName:s,contextualSearch:c}}=(0,P.c)(),d=(0,x.C)(),p=function(){const{selectMessage:e}=y();return t=>e(t,(0,_.T)({id:"theme.SearchPage.documentsFound.plurals",description:'Pluralized label for "{count} documents found". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)',message:"One document found|{count} documents found"},{count:t}))}(),g=function(){const e=(0,l.Gy)(),[t,r]=(0,n.useState)((()=>Object.entries(e).reduce(((e,t)=>{let[r,n]=t;return{...e,[r]:n.versions[0].name}}),{}))),i=Object.values(e).some((e=>e.versions.length>1));return{allDocsData:e,versioningEnabled:i,searchVersions:t,setSearchVersion:(e,t)=>r((r=>({...r,[e]:t})))}}(),[v,b]=(0,R.b)(),N={items:[],query:null,totalResults:null,totalPages:null,lastPage:null,hasMore:null,loading:null},[H,Q]=(0,n.useReducer)(((e,t)=>{switch(t.type){case"reset":return N;case"loading":return{...e,loading:!0};case"update":return v!==t.value.query?e:{...t.value,items:0===t.value.lastPage?t.value.items:e.items.concat(t.value.items)};case"advance":{const t=e.totalPages>e.lastPage+1;return{...e,lastPage:t?e.lastPage+1:e.lastPage,hasMore:t}}default:return e}}),N),T=c?["language","docusaurus_tag"]:[],C=o()(t,r),I=a()(C,s,{hitsPerPage:15,advancedSyntax:!0,disjunctiveFacets:T});I.on("result",(e=>{let{results:{query:t,hits:r,page:n,nbHits:i,nbPages:s}}=e;if(""===t||!Array.isArray(r))return void Q({type:"reset"});const a=e=>e.replace(/algolia-docsearch-suggestion--highlight/g,"search-result-match"),c=r.map((e=>{let{url:t,_highlightResult:{hierarchy:r},_snippetResult:n={}}=e;const i=Object.keys(r).map((e=>a(r[e].value)));return{title:i.pop(),url:d(t),summary:n.content?`${a(n.content.value)}...`:"",breadcrumbs:i}}));Q({type:"update",value:{items:c,query:t,totalResults:i,totalPages:s,lastPage:n,hasMore:s>n+1,loading:!1}})}));const[D,k]=(0,n.useState)(null),q=(0,n.useRef)(0),L=(0,n.useRef)(u.A.canUseIntersectionObserver&&new IntersectionObserver((e=>{const{isIntersecting:t,boundingClientRect:{y:r}}=e[0];t&&q.current>r&&Q({type:"advance"}),q.current=r}),{threshold:1})),V=()=>v?(0,_.T)({id:"theme.SearchPage.existingResultsTitle",message:'Search results for "{query}"',description:"The search page title for non-empty query"},{query:v}):(0,_.T)({id:"theme.SearchPage.emptyResultsTitle",message:"Search the documentation",description:"The search page title for empty query"}),B=(0,F._q)((function(t){void 0===t&&(t=0),c&&(I.addDisjunctiveFacetRefinement("docusaurus_tag","default"),I.addDisjunctiveFacetRefinement("language",e),Object.entries(g.searchVersions).forEach((e=>{let[t,r]=e;I.addDisjunctiveFacetRefinement("docusaurus_tag",`docs-${t}-${r}`)}))),I.setQuery(v).setPage(t).search()}));return(0,n.useEffect)((()=>{if(!D)return;const e=L.current;return e?(e.observe(D),()=>e.unobserve(D)):()=>!0}),[D]),(0,n.useEffect)((()=>{Q({type:"reset"}),v&&(Q({type:"loading"}),setTimeout((()=>{B()}),300))}),[v,g.searchVersions,B]),(0,n.useEffect)((()=>{H.lastPage&&0!==H.lastPage&&B(H.lastPage)}),[B,H.lastPage]),(0,S.jsxs)(E.A,{children:[(0,S.jsxs)(h.A,{children:[(0,S.jsx)("title",{children:(0,j.s)(V())}),(0,S.jsx)("meta",{property:"robots",content:"noindex, follow"})]}),(0,S.jsxs)("div",{className:"container margin-vert--lg",children:[(0,S.jsx)(O.A,{as:"h1",children:V()}),(0,S.jsxs)("form",{className:"row",onSubmit:e=>e.preventDefault(),children:[(0,S.jsx)("div",{className:(0,i.A)("col",w.searchQueryColumn,{"col--9":g.versioningEnabled,"col--12":!g.versioningEnabled}),children:(0,S.jsx)("input",{type:"search",name:"q",className:w.searchQueryInput,placeholder:(0,_.T)({id:"theme.SearchPage.inputPlaceholder",message:"Type your search here",description:"The placeholder for search page input"}),"aria-label":(0,_.T)({id:"theme.SearchPage.inputLabel",message:"Search",description:"The ARIA label for search page input"}),onChange:e=>b(e.target.value),value:v,autoComplete:"off",autoFocus:!0})}),c&&g.versioningEnabled&&(0,S.jsx)(A,{docsSearchVersionsHelpers:g})]}),(0,S.jsxs)("div",{className:"row",children:[(0,S.jsx)("div",{className:(0,i.A)("col","col--8",w.searchResultsColumn),children:!!H.totalResults&&p(H.totalResults)}),(0,S.jsx)("div",{className:(0,i.A)("col","col--4","text--right",w.searchLogoColumn),children:(0,S.jsx)(f.A,{to:"https://www.algolia.com/","aria-label":(0,_.T)({id:"theme.SearchPage.algoliaLabel",message:"Search by Algolia",description:"The ARIA label for Algolia mention"}),children:(0,S.jsx)("svg",{viewBox:"0 0 168 24",className:w.algoliaLogo,children:(0,S.jsxs)("g",{fill:"none",children:[(0,S.jsx)("path",{className:w.algoliaLogoPathFill,d:"M120.925 18.804c-4.386.02-4.386-3.54-4.386-4.106l-.007-13.336 2.675-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-10.846-2.18c.821 0 1.43-.047 1.855-.129v-2.719a6.334 6.334 0 0 0-1.574-.199 5.7 5.7 0 0 0-.897.069 2.699 2.699 0 0 0-.814.24c-.24.116-.439.28-.582.491-.15.212-.219.335-.219.656 0 .628.219.991.616 1.23s.938.362 1.615.362zm-.233-9.7c.883 0 1.629.109 2.231.328.602.218 1.088.525 1.444.915.363.396.609.922.76 1.483.157.56.232 1.175.232 1.85v6.874a32.5 32.5 0 0 1-1.868.314c-.834.123-1.772.185-2.813.185-.69 0-1.327-.069-1.895-.198a4.001 4.001 0 0 1-1.471-.636 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.803 0-.656.13-1.073.384-1.525a3.24 3.24 0 0 1 1.047-1.106c.445-.287.95-.492 1.532-.615a8.8 8.8 0 0 1 1.82-.185 8.404 8.404 0 0 1 1.972.24v-.438c0-.307-.035-.6-.11-.874a1.88 1.88 0 0 0-.384-.73 1.784 1.784 0 0 0-.724-.493 3.164 3.164 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.735 7.735 0 0 0-1.26.307l-.321-2.192c.335-.117.834-.233 1.478-.349a10.98 10.98 0 0 1 2.073-.178zm52.842 9.626c.822 0 1.43-.048 1.854-.13V13.7a6.347 6.347 0 0 0-1.574-.199c-.294 0-.595.021-.896.069a2.7 2.7 0 0 0-.814.24 1.46 1.46 0 0 0-.582.491c-.15.212-.218.335-.218.656 0 .628.218.991.615 1.23.404.245.938.362 1.615.362zm-.226-9.694c.883 0 1.629.108 2.231.327.602.219 1.088.526 1.444.915.355.39.609.923.759 1.483a6.8 6.8 0 0 1 .233 1.852v6.873c-.41.088-1.034.19-1.868.314-.834.123-1.772.184-2.813.184-.69 0-1.327-.068-1.895-.198a4.001 4.001 0 0 1-1.471-.635 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.804 0-.656.13-1.073.384-1.524.26-.45.608-.82 1.047-1.107.445-.286.95-.491 1.532-.614a8.803 8.803 0 0 1 2.751-.13c.329.034.671.096 1.04.185v-.437a3.3 3.3 0 0 0-.109-.875 1.873 1.873 0 0 0-.384-.731 1.784 1.784 0 0 0-.724-.492 3.165 3.165 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.75 7.75 0 0 0-1.26.307l-.321-2.193c.335-.116.834-.232 1.478-.348a11.633 11.633 0 0 1 2.073-.177zm-8.034-1.271a1.626 1.626 0 0 1-1.628-1.62c0-.895.725-1.62 1.628-1.62.904 0 1.63.725 1.63 1.62 0 .895-.733 1.62-1.63 1.62zm1.348 13.22h-2.689V7.27l2.69-.423v11.956zm-4.714 0c-4.386.02-4.386-3.54-4.386-4.107l-.008-13.336 2.676-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-8.698-5.903c0-1.156-.253-2.119-.746-2.788-.493-.677-1.183-1.01-2.067-1.01-.882 0-1.574.333-2.065 1.01-.493.676-.733 1.632-.733 2.788 0 1.168.246 1.953.74 2.63.492.683 1.183 1.018 2.066 1.018.882 0 1.574-.342 2.067-1.019.492-.683.738-1.46.738-2.63zm2.737-.007c0 .902-.13 1.584-.397 2.33a5.52 5.52 0 0 1-1.128 1.906 4.986 4.986 0 0 1-1.752 1.223c-.685.286-1.739.45-2.265.45-.528-.006-1.574-.157-2.252-.45a5.096 5.096 0 0 1-1.744-1.223c-.487-.527-.863-1.162-1.137-1.906a6.345 6.345 0 0 1-.41-2.33c0-.902.123-1.77.397-2.508a5.554 5.554 0 0 1 1.15-1.892 5.133 5.133 0 0 1 1.75-1.216c.679-.287 1.425-.423 2.232-.423.808 0 1.553.142 2.237.423a4.88 4.88 0 0 1 1.753 1.216 5.644 5.644 0 0 1 1.135 1.892c.287.738.431 1.606.431 2.508zm-20.138 0c0 1.12.246 2.363.738 2.882.493.52 1.13.78 1.91.78.424 0 .828-.062 1.204-.178.377-.116.677-.253.917-.417V9.33a10.476 10.476 0 0 0-1.766-.226c-.971-.028-1.71.37-2.23 1.004-.513.636-.773 1.75-.773 2.788zm7.438 5.274c0 1.824-.466 3.156-1.404 4.004-.936.846-2.367 1.27-4.296 1.27-.705 0-2.17-.137-3.34-.396l.431-2.118c.98.205 2.272.26 2.95.26 1.074 0 1.84-.219 2.299-.656.459-.437.684-1.086.684-1.948v-.437a8.07 8.07 0 0 1-1.047.397c-.43.13-.93.198-1.492.198-.739 0-1.41-.116-2.018-.349a4.206 4.206 0 0 1-1.567-1.025c-.431-.45-.774-1.017-1.013-1.694-.24-.677-.363-1.885-.363-2.773 0-.834.13-1.88.384-2.577.26-.696.629-1.298 1.129-1.796.493-.498 1.095-.881 1.8-1.162a6.605 6.605 0 0 1 2.428-.457c.87 0 1.67.109 2.45.24.78.129 1.444.265 1.985.415V18.17zM6.972 6.677v1.627c-.712-.446-1.52-.67-2.425-.67-.585 0-1.045.13-1.38.391a1.24 1.24 0 0 0-.502 1.03c0 .425.164.765.494 1.02.33.256.835.532 1.516.83.447.192.795.356 1.045.495.25.138.537.332.862.582.324.25.563.548.718.894.154.345.23.741.23 1.188 0 .947-.334 1.691-1.004 2.234-.67.542-1.537.814-2.601.814-1.18 0-2.16-.229-2.936-.686v-1.708c.84.628 1.814.942 2.92.942.585 0 1.048-.136 1.388-.407.34-.271.51-.646.51-1.125 0-.287-.1-.55-.302-.79-.203-.24-.42-.42-.655-.542-.234-.123-.585-.29-1.053-.503a61.27 61.27 0 0 1-.582-.271 13.67 13.67 0 0 1-.55-.287 4.275 4.275 0 0 1-.567-.351 6.92 6.92 0 0 1-.455-.4c-.18-.17-.31-.34-.39-.51-.08-.17-.155-.37-.224-.598a2.553 2.553 0 0 1-.104-.742c0-.915.333-1.638.998-2.17.664-.532 1.523-.798 2.576-.798.968 0 1.793.17 2.473.51zm7.468 5.696v-.287c-.022-.607-.187-1.088-.495-1.444-.309-.357-.75-.535-1.324-.535-.532 0-.99.194-1.373.583-.382.388-.622.949-.717 1.683h3.909zm1.005 2.792v1.404c-.596.34-1.383.51-2.362.51-1.255 0-2.255-.377-3-1.132-.744-.755-1.116-1.744-1.116-2.968 0-1.297.34-2.316 1.021-3.055.68-.74 1.548-1.11 2.6-1.11 1.033 0 1.852.323 2.458.966.606.644.91 1.572.91 2.784 0 .33-.033.676-.096 1.038h-5.314c.107.702.405 1.239.894 1.611.49.372 1.106.558 1.85.558.862 0 1.58-.202 2.155-.606zm6.605-1.77h-1.212c-.596 0-1.045.116-1.349.35-.303.234-.454.532-.454.894 0 .372.117.664.35.877.235.213.575.32 1.022.32.51 0 .912-.142 1.204-.424.293-.281.44-.651.44-1.108v-.91zm-4.068-2.554V9.325c.627-.361 1.457-.542 2.489-.542 2.116 0 3.175 1.026 3.175 3.08V17h-1.548v-.957c-.415.68-1.143 1.02-2.186 1.02-.766 0-1.38-.22-1.843-.661-.462-.442-.694-1.003-.694-1.684 0-.776.293-1.38.878-1.81.585-.431 1.404-.647 2.457-.647h1.34V11.8c0-.554-.133-.971-.399-1.253-.266-.282-.707-.423-1.324-.423a4.07 4.07 0 0 0-2.345.718zm9.333-1.93v1.42c.394-1 1.101-1.5 2.123-1.5.148 0 .313.016.494.048v1.531a1.885 1.885 0 0 0-.75-.143c-.542 0-.989.24-1.34.718-.351.479-.527 1.048-.527 1.707V17h-1.563V8.91h1.563zm5.01 4.084c.022.82.272 1.492.75 2.019.479.526 1.15.79 2.01.79.639 0 1.235-.176 1.788-.527v1.404c-.521.319-1.186.479-1.995.479-1.265 0-2.276-.4-3.031-1.197-.755-.798-1.133-1.792-1.133-2.984 0-1.16.38-2.151 1.14-2.975.761-.825 1.79-1.237 3.088-1.237.702 0 1.346.149 1.93.447v1.436a3.242 3.242 0 0 0-1.77-.495c-.84 0-1.513.266-2.019.798-.505.532-.758 1.213-.758 2.042zM40.24 5.72v4.579c.458-1 1.293-1.5 2.505-1.5.787 0 1.42.245 1.899.734.479.49.718 1.17.718 2.042V17h-1.564v-5.106c0-.553-.14-.98-.422-1.284-.282-.303-.652-.455-1.11-.455-.531 0-1.002.202-1.411.606-.41.405-.615 1.022-.615 1.851V17h-1.563V5.72h1.563zm14.966 10.02c.596 0 1.096-.253 1.5-.758.404-.506.606-1.157.606-1.955 0-.915-.202-1.62-.606-2.114-.404-.495-.92-.742-1.548-.742-.553 0-1.05.224-1.491.67-.442.447-.662 1.133-.662 2.058 0 .958.212 1.67.638 2.138.425.469.946.703 1.563.703zM53.004 5.72v4.42c.574-.894 1.388-1.341 2.44-1.341 1.022 0 1.857.383 2.506 1.149.649.766.973 1.781.973 3.047 0 1.138-.309 2.109-.925 2.912-.617.803-1.463 1.205-2.537 1.205-1.075 0-1.894-.447-2.457-1.34V17h-1.58V5.72h1.58zm9.908 11.104l-3.223-7.913h1.739l1.005 2.632 1.26 3.415c.096-.32.48-1.458 1.15-3.415l.909-2.632h1.66l-2.92 7.866c-.777 2.074-1.963 3.11-3.559 3.11a2.92 2.92 0 0 1-.734-.079v-1.34c.17.042.351.064.543.064 1.032 0 1.755-.57 2.17-1.708z"}),(0,S.jsx)("path",{fill:"#5468FF",d:"M78.988.938h16.594a2.968 2.968 0 0 1 2.966 2.966V20.5a2.967 2.967 0 0 1-2.966 2.964H78.988a2.967 2.967 0 0 1-2.966-2.964V3.897A2.961 2.961 0 0 1 78.988.938z"}),(0,S.jsx)("path",{fill:"white",d:"M89.632 5.967v-.772a.978.978 0 0 0-.978-.977h-2.28a.978.978 0 0 0-.978.977v.793c0 .088.082.15.171.13a7.127 7.127 0 0 1 1.984-.28c.65 0 1.295.088 1.917.259.082.02.164-.04.164-.13m-6.248 1.01l-.39-.389a.977.977 0 0 0-1.382 0l-.465.465a.973.973 0 0 0 0 1.38l.383.383c.062.061.15.047.205-.014.226-.307.472-.601.746-.874.281-.28.568-.526.883-.751.068-.042.075-.137.02-.2m4.16 2.453v3.341c0 .096.104.165.192.117l2.97-1.537c.068-.034.089-.117.055-.184a3.695 3.695 0 0 0-3.08-1.866c-.068 0-.136.054-.136.13m0 8.048a4.489 4.489 0 0 1-4.49-4.482 4.488 4.488 0 0 1 4.49-4.482 4.488 4.488 0 0 1 4.489 4.482 4.484 4.484 0 0 1-4.49 4.482m0-10.85a6.363 6.363 0 1 0 0 12.729 6.37 6.37 0 0 0 6.372-6.368 6.358 6.358 0 0 0-6.371-6.36"})]})})})})]}),H.items.length>0?(0,S.jsx)("main",{children:H.items.map(((e,t)=>{let{title:r,url:n,summary:s,breadcrumbs:a}=e;return(0,S.jsxs)("article",{className:w.searchResultItem,children:[(0,S.jsx)(O.A,{as:"h2",className:w.searchResultItemHeading,children:(0,S.jsx)(f.A,{to:n,dangerouslySetInnerHTML:{__html:r}})}),a.length>0&&(0,S.jsx)("nav",{"aria-label":"breadcrumbs",children:(0,S.jsx)("ul",{className:(0,i.A)("breadcrumbs",w.searchResultItemPath),children:a.map(((e,t)=>(0,S.jsx)("li",{className:"breadcrumbs__item",dangerouslySetInnerHTML:{__html:e}},t)))})}),s&&(0,S.jsx)("p",{className:w.searchResultItemSummary,dangerouslySetInnerHTML:{__html:s}})]},t)}))}):[v&&!H.loading&&(0,S.jsx)("p",{children:(0,S.jsx)(_.A,{id:"theme.SearchPage.noResultsText",description:"The paragraph for empty search result",children:"No results were found"})},"no-results"),!!H.loading&&(0,S.jsx)("div",{className:w.loadingSpinner},"spinner")],H.hasMore&&(0,S.jsx)("div",{className:w.loader,ref:k,children:(0,S.jsx)(_.A,{id:"theme.SearchPage.fetchingNewResults",description:"The paragraph for fetching new search results",children:"Fetching new results..."})})]})]})}function H(){return(0,S.jsx)(b.e3,{className:"search-page-wrapper",children:(0,S.jsx)(N,{})})}}}]); \ No newline at end of file diff --git a/assets/js/1a4e3797.da39caec.js.LICENSE.txt b/assets/js/1a4e3797.d7d54df8.js.LICENSE.txt similarity index 100% rename from assets/js/1a4e3797.da39caec.js.LICENSE.txt rename to assets/js/1a4e3797.d7d54df8.js.LICENSE.txt diff --git a/assets/js/1db5d8e2.98b620e0.js b/assets/js/1db5d8e2.dd23f976.js similarity index 59% rename from assets/js/1db5d8e2.98b620e0.js rename to assets/js/1db5d8e2.dd23f976.js index e91394ca..b0d0efae 100644 --- a/assets/js/1db5d8e2.98b620e0.js +++ b/assets/js/1db5d8e2.dd23f976.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9650],{8136:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>r,contentTitle:()=>d,default:()=>h,frontMatter:()=>s,metadata:()=>o,toc:()=>c});var i=n(6070),a=n(5710);const s={id:"admin-dashboard",title:"Admin Dashboard"},d=void 0,o={id:"getting-started/admin-dashboard",title:"Admin Dashboard",description:"Node is gated with authentication. In order to interact with the node from any",source:"@site/docs/03-getting-started/02-admin-dashboard.mdx",sourceDirName:"03-getting-started",slug:"/getting-started/admin-dashboard",permalink:"/getting-started/admin-dashboard",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"admin-dashboard",title:"Admin Dashboard"},sidebar:"tutorialSidebar",previous:{title:"Setup",permalink:"/getting-started/setup"},next:{title:"Example Application",permalink:"/getting-started/example-app"}},r={},c=[{value:"Access Admin Dashboard",id:"access-admin-dashboard",level:3},{value:"Admin Dashboard functionalities:",id:"admin-dashboard-functionalities",level:3},{value:"Identity",id:"identity",level:4},{value:"Contexts",id:"contexts",level:4},{value:"Applications",id:"applications",level:4},{value:"Export",id:"export",level:4}];function l(e){const t={a:"a",blockquote:"blockquote",code:"code",em:"em",h3:"h3",h4:"h4",img:"img",p:"p",strong:"strong",...(0,a.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.p,{children:"Node is gated with authentication. In order to interact with the node from any\napp, you need to register a decentralized identity. We have build an Admin\nDashboard which is a web application designed to streamline the management of\nnode states within your system. Seamlessly connected with the API provided by\nthe Admin Client API, this user interface offers a user-friendly platform for\noverseeing and controlling various aspects of your node infrastructure."}),"\n",(0,i.jsx)(t.h3,{id:"access-admin-dashboard",children:"Access Admin Dashboard"}),"\n",(0,i.jsx)(t.p,{children:"Admin Dashboard is published to GitHub pages so you can access it directly from\nthe browser."}),"\n",(0,i.jsxs)(t.p,{children:["Admin dashboard is available at\n",(0,i.jsx)(t.a,{href:"https://calimero-network.github.io/admin-dashboard/",children:"https://calimero-network.github.io/admin-dashboard/"}),"."]}),"\n",(0,i.jsxs)(t.blockquote,{children:["\n",(0,i.jsxs)(t.p,{children:[(0,i.jsx)(t.strong,{children:(0,i.jsx)(t.em,{children:"NOTE:"})})," Update ",(0,i.jsx)(t.code,{children:"NODE_PORT"})," in the placeholder ",(0,i.jsx)(t.code,{children:"http://localhost:NODE_PORT"}),"\nwith the ",(0,i.jsx)(t.code,{children:"--server-port"})," value defined during node setup in\n",(0,i.jsx)(t.a,{href:"/getting-started/setup",children:"Getting-started"})]}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"After the initial setup yourou will see login page. On the first login, your\nselected wallet will be used as a root key to use further functionalities."}),"\n",(0,i.jsx)(t.h3,{id:"admin-dashboard-functionalities",children:"Admin Dashboard functionalities:"}),"\n",(0,i.jsx)(t.h4,{id:"identity",children:"Identity"}),"\n",(0,i.jsx)(t.p,{children:"Preview added root keys or add new root key."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Identity",src:n(6424).A+"",width:"3014",height:"1554"})}),"\n",(0,i.jsx)(t.h4,{id:"contexts",children:"Contexts"}),"\n",(0,i.jsx)(t.p,{children:"Preview context which you have already joined or invited. You can also create a\nnew context."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Contexts",src:n(8942).A+"",width:"3010",height:"1558"})}),"\n",(0,i.jsx)(t.h4,{id:"applications",children:"Applications"}),"\n",(0,i.jsx)(t.p,{children:"Preview available applications from other developers or applications you\npublished. You can also publish new application"}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Applications",src:n(4751).A+"",width:"3016",height:"1558"})}),"\n",(0,i.jsx)(t.h4,{id:"export",children:"Export"}),"\n",(0,i.jsx)(t.p,{children:"Allows you to export you identity on current device and import it on new device\nso you have seamless experience while onboarding to another device."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Export",src:n(2573).A+"",width:"3018",height:"1560"})})]})}function h(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(l,{...e})}):l(e)}},4751:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/applications-65c777f084225d92fc42a490b4a1b3e1.png"},8942:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/contexts-6319c93e803b1ca884e210104b4e654c.png"},2573:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/export-identity-4108c244241ad8b32d09d98e3ec3bd29.png"},6424:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/identity-4bfbe6d0828c9b408f0c8a6506a92327.png"},5710:(e,t,n)=>{n.d(t,{R:()=>d,x:()=>o});var i=n(758);const a={},s=i.createContext(a);function d(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:d(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9650],{8136:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>r,contentTitle:()=>d,default:()=>h,frontMatter:()=>s,metadata:()=>o,toc:()=>c});var i=n(6070),a=n(8355);const s={id:"admin-dashboard",title:"Admin Dashboard"},d=void 0,o={id:"getting-started/admin-dashboard",title:"Admin Dashboard",description:"Node is gated with authentication. In order to interact with the node from any",source:"@site/docs/03-getting-started/02-admin-dashboard.mdx",sourceDirName:"03-getting-started",slug:"/getting-started/admin-dashboard",permalink:"/getting-started/admin-dashboard",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"admin-dashboard",title:"Admin Dashboard"},sidebar:"tutorialSidebar",previous:{title:"Setup",permalink:"/getting-started/setup"},next:{title:"Example Application",permalink:"/getting-started/example-app"}},r={},c=[{value:"Access Admin Dashboard",id:"access-admin-dashboard",level:3},{value:"Admin Dashboard functionalities:",id:"admin-dashboard-functionalities",level:3},{value:"Identity",id:"identity",level:4},{value:"Contexts",id:"contexts",level:4},{value:"Applications",id:"applications",level:4},{value:"Export",id:"export",level:4}];function l(e){const t={a:"a",blockquote:"blockquote",code:"code",em:"em",h3:"h3",h4:"h4",img:"img",p:"p",strong:"strong",...(0,a.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.p,{children:"Node is gated with authentication. In order to interact with the node from any\napp, you need to register a decentralized identity. We have build an Admin\nDashboard which is a web application designed to streamline the management of\nnode states within your system. Seamlessly connected with the API provided by\nthe Admin Client API, this user interface offers a user-friendly platform for\noverseeing and controlling various aspects of your node infrastructure."}),"\n",(0,i.jsx)(t.h3,{id:"access-admin-dashboard",children:"Access Admin Dashboard"}),"\n",(0,i.jsx)(t.p,{children:"Admin Dashboard is published to GitHub pages so you can access it directly from\nthe browser."}),"\n",(0,i.jsxs)(t.p,{children:["Admin dashboard is available at\n",(0,i.jsx)(t.a,{href:"https://calimero-network.github.io/admin-dashboard/",children:"https://calimero-network.github.io/admin-dashboard/"}),"."]}),"\n",(0,i.jsxs)(t.blockquote,{children:["\n",(0,i.jsxs)(t.p,{children:[(0,i.jsx)(t.strong,{children:(0,i.jsx)(t.em,{children:"NOTE:"})})," Update ",(0,i.jsx)(t.code,{children:"NODE_PORT"})," in the placeholder ",(0,i.jsx)(t.code,{children:"http://localhost:NODE_PORT"}),"\nwith the ",(0,i.jsx)(t.code,{children:"--server-port"})," value defined during node setup in\n",(0,i.jsx)(t.a,{href:"/getting-started/setup",children:"Getting-started"})]}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"After the initial setup yourou will see login page. On the first login, your\nselected wallet will be used as a root key to use further functionalities."}),"\n",(0,i.jsx)(t.h3,{id:"admin-dashboard-functionalities",children:"Admin Dashboard functionalities:"}),"\n",(0,i.jsx)(t.h4,{id:"identity",children:"Identity"}),"\n",(0,i.jsx)(t.p,{children:"Preview added root keys or add new root key."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Identity",src:n(818).A+"",width:"3014",height:"1554"})}),"\n",(0,i.jsx)(t.h4,{id:"contexts",children:"Contexts"}),"\n",(0,i.jsx)(t.p,{children:"Preview context which you have already joined or invited. You can also create a\nnew context."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Contexts",src:n(3148).A+"",width:"3010",height:"1558"})}),"\n",(0,i.jsx)(t.h4,{id:"applications",children:"Applications"}),"\n",(0,i.jsx)(t.p,{children:"Preview available applications from other developers or applications you\npublished. You can also publish new application"}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Applications",src:n(7829).A+"",width:"3016",height:"1558"})}),"\n",(0,i.jsx)(t.h4,{id:"export",children:"Export"}),"\n",(0,i.jsx)(t.p,{children:"Allows you to export you identity on current device and import it on new device\nso you have seamless experience while onboarding to another device."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Export",src:n(8331).A+"",width:"3018",height:"1560"})})]})}function h(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(l,{...e})}):l(e)}},7829:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/applications-65c777f084225d92fc42a490b4a1b3e1.png"},3148:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/contexts-6319c93e803b1ca884e210104b4e654c.png"},8331:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/export-identity-4108c244241ad8b32d09d98e3ec3bd29.png"},818:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/identity-4bfbe6d0828c9b408f0c8a6506a92327.png"},8355:(e,t,n)=>{n.d(t,{R:()=>d,x:()=>o});var i=n(758);const a={},s=i.createContext(a);function d(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:d(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1df93b7f.e226d8e9.js b/assets/js/1df93b7f.ce3154cc.js similarity index 98% rename from assets/js/1df93b7f.e226d8e9.js rename to assets/js/1df93b7f.ce3154cc.js index ef2f572e..4f33d765 100644 --- a/assets/js/1df93b7f.e226d8e9.js +++ b/assets/js/1df93b7f.ce3154cc.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[4583],{3982:(l,t,e)=>{e.d(t,{A:()=>r});var a,q,m=e(758);function h(){return h=Object.assign?Object.assign.bind():function(l){for(var t=1;t{let{title:t,titleId:e,...r}=l;return m.createElement("svg",h({xmlns:"http://www.w3.org/2000/svg",width:539,height:434,fill:"none",viewBox:"0 0 539 434","aria-labelledby":e},r),t?m.createElement("title",{id:e},t):null,a||(a=m.createElement("g",{clipPath:"url(#a)"},m.createElement("path",{stroke:"#10B981",strokeMiterlimit:10,strokeWidth:5,d:"M43 366.116a166 166 0 0 1 59.412-2.058c46.77 7.058 63.747 31.295 79.278 23.156 24.011-12.593-9.858-73.997 23.178-119.274 24.227-33.213 72.569-41.446 83.762-43.347 43.649-7.437 65.48 8.9 85.47-8.644 14.63-12.818 9.241-27.081 27.484-52.129 12.696-17.441 28.079-28.089 39.24-34.427"}),m.createElement("path",{stroke:"#10B981",strokeMiterlimit:10,strokeWidth:5,d:"M291.97 295.045c9.186-11.332 21.43-22.11 36.141-31.814 34.967-22.91 63.935-25.894 67.676-36.081 5.775-15.75-61.816-13.006-74.859-41.553-9.571-20.936 14.912-48.435 20.585-54.802 22.104-24.83 48.219-32.315 47.726-47.165-.345-10.863-14.473-11.531-21.71-27.306-5.042-10.98-3.28-21.706-.959-29.146"}),m.createElement("rect",{width:336.682,height:223.194,x:102.535,y:95.946,fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,rx:6.62}),m.createElement("rect",{width:306.419,height:198.605,x:117.666,y:111.078,fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,rx:6.62}),m.createElement("rect",{width:306.419,height:198.605,x:117.666,y:111.078,fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,rx:6.62}),m.createElement("path",{fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,d:"M77.946 319.139h383.969v2.837a6.62 6.62 0 0 1-6.62 6.62H84.565a6.62 6.62 0 0 1-6.62-6.62zM81.729 328.597h376.403v2.837a6.62 6.62 0 0 1-6.62 6.62H88.349a6.62 6.62 0 0 1-6.62-6.62z"}),m.createElement("path",{fill:"#6CECAC",fillOpacity:.25,d:"M121.566 124.145q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-296.236 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-298.079 18V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m-298.037 8.371V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V178h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V178h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.792 0V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178H316.3v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V178h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm-300.688 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-295.967 18V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V214h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm-300.688 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V232h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V232h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.792 0V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m-293.626 19.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V250h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.792 0V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-293.896 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V268h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.521 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062L168 260.446v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.638-1.997.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m-293.357 8.371V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286H316.3v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.792 0V286h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.791 0V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.322.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V286h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm-300.688 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zM384.333 304v-.934l3.507-3.839q.618-.675 1.017-1.173a4.3 4.3 0 0 0 .591-.944q.198-.446.198-.934 0-.56-.27-.97a1.76 1.76 0 0 0-.727-.633 2.35 2.35 0 0 0-1.037-.223q-.613 0-1.069.254a1.75 1.75 0 0 0-.7.701q-.244.45-.244 1.058h-1.225q0-.934.431-1.64.43-.705 1.173-1.099a3.5 3.5 0 0 1 1.675-.395q.935 0 1.655.395.721.394 1.131 1.063.41.67.41 1.489 0 .586-.212 1.147-.208.555-.727 1.24a22 22 0 0 1-1.427 1.66l-2.386 2.553v.083h4.939V304zm12.581-10.625V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.646 10.77q-1.026 0-1.831-.353a3.14 3.14 0 0 1-1.271-.98 2.64 2.64 0 0 1-.509-1.468h1.308q.041.513.353.887.311.368.814.571.504.202 1.116.202.684 0 1.214-.239.528-.238.83-.664.3-.426.301-.986 0-.586-.291-1.032-.29-.451-.851-.706t-1.369-.254h-.851v-1.141h.851q.633 0 1.11-.229.483-.228.752-.643a1.7 1.7 0 0 0 .275-.975q0-.54-.238-.939a1.64 1.64 0 0 0-.675-.623q-.43-.223-1.017-.223-.55 0-1.037.202a1.94 1.94 0 0 0-.789.576q-.306.374-.332.903h-1.245q.03-.836.503-1.463a3.17 3.17 0 0 1 1.235-.986 4 4 0 0 1 1.686-.353q.986 0 1.691.4.706.394 1.085 1.043.378.648.378 1.4 0 .898-.472 1.531a2.4 2.4 0 0 1-1.271.877v.083q1.006.166 1.572.856.566.684.566 1.696 0 .867-.472 1.557a3.2 3.2 0 0 1-1.277 1.079q-.809.394-1.842.394m5.713-.145v-.934l3.507-3.839q.616-.675 1.017-1.173.399-.503.591-.944.197-.446.197-.934 0-.56-.269-.97a1.76 1.76 0 0 0-.727-.633 2.35 2.35 0 0 0-1.037-.223q-.613 0-1.069.254-.452.25-.701.701-.243.45-.243 1.058h-1.225q0-.934.431-1.64.43-.705 1.172-1.099a3.53 3.53 0 0 1 1.676-.395q.934 0 1.655.395.721.394 1.131 1.063.41.67.41 1.489 0 .586-.213 1.147-.207.555-.726 1.24a22 22 0 0 1-1.427 1.66l-2.386 2.553v.083h4.939V304z"}),m.createElement("g",{clipPath:"url(#b)"},m.createElement("path",{fill:"#fff",d:"M278.205 187.321a4.12 4.12 0 0 1 2.484 1.951 4.12 4.12 0 0 1 .376 3.136l-12.186 43.414a4.123 4.123 0 0 1-5.086 2.859 4.123 4.123 0 0 1-2.858-5.086l12.185-43.42a4.132 4.132 0 0 1 3.482-2.982 4.1 4.1 0 0 1 1.605.125zm-19.415 11.096a4.126 4.126 0 0 1 0 5.83L250.045 213l8.75 8.751a4.123 4.123 0 0 1-.001 5.834 4.126 4.126 0 0 1-5.834-.002l-11.669-11.668a4.126 4.126 0 0 1 0-5.83l11.666-11.668a4.13 4.13 0 0 1 4.497-.895c.5.207.953.512 1.336.895m24.42 5.83a4.11 4.11 0 0 1-1.313-2.945 4.13 4.13 0 0 1 2.58-3.898 4.13 4.13 0 0 1 4.563 1.013l11.668 11.665a4.13 4.13 0 0 1 0 5.833l-11.666 11.668a4.13 4.13 0 0 1-2.916 1.209 4.13 4.13 0 0 1-2.918-1.207 4.124 4.124 0 0 1-.001-5.834l8.75-8.751z"})),m.createElement("path",{fill:"#fff",d:"M458.5 334.563a17.063 17.063 0 1 1 .001-34.126 17.063 17.063 0 0 1-.001 34.126m36.221-12.334c.195-1.56.341-3.12.341-4.729s-.146-3.217-.341-4.875l10.286-7.946c.927-.731 1.17-2.048.585-3.12l-9.75-16.868c-.585-1.072-1.901-1.511-2.973-1.072l-12.139 4.875c-2.535-1.901-5.168-3.559-8.239-4.778l-1.804-12.918a2.466 2.466 0 0 0-2.437-2.048h-19.5a2.465 2.465 0 0 0-2.438 2.048l-1.803 12.918c-3.072 1.219-5.704 2.877-8.239 4.778l-12.139-4.875c-1.072-.439-2.389 0-2.974 1.072l-9.75 16.868a2.405 2.405 0 0 0 .585 3.12l10.287 7.946c-.195 1.658-.342 3.266-.342 4.875s.147 3.169.342 4.729l-10.287 8.092a2.405 2.405 0 0 0-.585 3.12l9.75 16.868c.585 1.072 1.902 1.462 2.974 1.072l12.139-4.923c2.535 1.95 5.167 3.607 8.239 4.826l1.803 12.919a2.464 2.464 0 0 0 2.438 2.047h19.5a2.46 2.46 0 0 0 2.437-2.047l1.804-12.919c3.071-1.268 5.704-2.876 8.239-4.826l12.139 4.923c1.072.39 2.388 0 2.973-1.072l9.75-16.868c.585-1.072.342-2.388-.585-3.12z"}),m.createElement("path",{fill:"#000",d:"M117 97.792a10.793 10.793 0 1 1 0-21.585 10.793 10.793 0 0 1 0 21.585m22.909-7.8c.123-.988.216-1.974.216-2.992 0-1.017-.093-2.035-.216-3.083l6.506-5.026c.586-.462.74-1.295.37-1.973l-6.167-10.669a1.516 1.516 0 0 0-1.881-.678l-7.677 3.084c-1.604-1.203-3.269-2.251-5.211-3.022l-1.141-8.171a1.56 1.56 0 0 0-1.542-1.295h-12.333a1.56 1.56 0 0 0-1.542 1.295l-1.14 8.17c-1.943.772-3.608 1.82-5.211 3.022l-7.678-3.083c-.678-.277-1.51 0-1.88.678l-6.167 10.669a1.52 1.52 0 0 0 .37 1.973l6.506 5.026c-.124 1.048-.216 2.066-.216 3.083s.092 2.004.216 2.991l-6.506 5.118a1.52 1.52 0 0 0-.37 1.974l6.166 10.668c.37.678 1.203.925 1.881.678l7.678-3.114c1.603 1.234 3.268 2.282 5.211 3.053l1.14 8.171a1.56 1.56 0 0 0 1.542 1.295h12.333c.771 0 1.419-.555 1.542-1.295l1.141-8.171c1.942-.802 3.607-1.819 5.211-3.053l7.677 3.114c.679.247 1.511 0 1.881-.678l6.167-10.668c.37-.678.216-1.511-.37-1.974z"}),m.createElement("path",{fill:"#fff",d:"M117 97.792a10.793 10.793 0 1 1 0-21.585 10.793 10.793 0 0 1 0 21.585m22.909-7.8c.123-.988.216-1.974.216-2.992 0-1.017-.093-2.035-.216-3.083l6.506-5.026c.586-.462.74-1.295.37-1.973l-6.167-10.669a1.516 1.516 0 0 0-1.881-.678l-7.677 3.084c-1.604-1.203-3.269-2.251-5.211-3.022l-1.141-8.171a1.56 1.56 0 0 0-1.542-1.295h-12.333a1.56 1.56 0 0 0-1.542 1.295l-1.14 8.17c-1.943.772-3.608 1.82-5.211 3.022l-7.678-3.083c-.678-.277-1.51 0-1.88.678l-6.167 10.669a1.52 1.52 0 0 0 .37 1.973l6.506 5.026c-.124 1.048-.216 2.066-.216 3.083s.092 2.004.216 2.991l-6.506 5.118a1.52 1.52 0 0 0-.37 1.974l6.166 10.668c.37.678 1.203.925 1.881.678l7.678-3.114c1.603 1.234 3.268 2.282 5.211 3.053l1.14 8.171a1.56 1.56 0 0 0 1.542 1.295h12.333c.771 0 1.419-.555 1.542-1.295l1.141-8.171c1.942-.802 3.607-1.819 5.211-3.053l7.677 3.114c.679.247 1.511 0 1.881-.678l6.167-10.668c.37-.678.216-1.511-.37-1.974zM147 283.583a7.583 7.583 0 1 1 0-15.167 7.583 7.583 0 0 1 0 15.167m16.098-5.482c.087-.693.152-1.386.152-2.101s-.065-1.43-.152-2.167l4.572-3.532c.412-.325.52-.91.26-1.386l-4.333-7.497c-.26-.477-.845-.672-1.322-.477l-5.395 2.167c-1.127-.845-2.297-1.582-3.662-2.123l-.801-5.742a1.096 1.096 0 0 0-1.084-.91h-8.666c-.542 0-.997.39-1.084.91l-.801 5.742c-1.365.541-2.535 1.278-3.662 2.123l-5.395-2.167a1.065 1.065 0 0 0-1.322.477l-4.333 7.497a1.07 1.07 0 0 0 .26 1.386l4.572 3.532a19 19 0 0 0-.152 2.167c0 .715.065 1.408.152 2.101l-4.572 3.597c-.412.325-.542.91-.26 1.387l4.333 7.496c.26.477.845.65 1.322.477l5.395-2.188c1.127.866 2.297 1.603 3.662 2.145l.801 5.741c.087.52.542.91 1.084.91h8.666c.542 0 .997-.39 1.084-.91l.801-5.741c1.365-.564 2.535-1.279 3.662-2.145l5.395 2.188c.477.173 1.062 0 1.322-.477l4.333-7.496c.26-.477.152-1.062-.26-1.387z"}),m.createElement("path",{fill:"#fff",d:"M147 283.583a7.583 7.583 0 1 1 0-15.167 7.583 7.583 0 0 1 0 15.167m16.098-5.482c.087-.693.152-1.386.152-2.101s-.065-1.43-.152-2.167l4.572-3.532c.412-.325.52-.91.26-1.386l-4.333-7.497c-.26-.477-.845-.672-1.322-.477l-5.395 2.167c-1.127-.845-2.297-1.582-3.662-2.123l-.801-5.742a1.096 1.096 0 0 0-1.084-.91h-8.666c-.542 0-.997.39-1.084.91l-.801 5.742c-1.365.541-2.535 1.278-3.662 2.123l-5.395-2.167a1.065 1.065 0 0 0-1.322.477l-4.333 7.497a1.07 1.07 0 0 0 .26 1.386l4.572 3.532a19 19 0 0 0-.152 2.167c0 .715.065 1.408.152 2.101l-4.572 3.597c-.412.325-.542.91-.26 1.387l4.333 7.496c.26.477.845.65 1.322.477l5.395-2.188c1.127.866 2.297 1.603 3.662 2.145l.801 5.741c.087.52.542.91 1.084.91h8.666c.542 0 .997-.39 1.084-.91l.801-5.741c1.365-.564 2.535-1.279 3.662-2.145l5.395 2.188c.477.173 1.062 0 1.322-.477l4.333-7.496c.26-.477.152-1.062-.26-1.387z"}),m.createElement("g",{filter:"url(#c)"},m.createElement("path",{fill:"url(#d)",d:"M66.384 231.214c-.243-57.499 46.401-106.882 103.688-101.925 37.256 3.224 77.588 5.817 110.928 5.817s73.672-2.593 110.928-5.817c57.287-4.957 103.931 44.426 103.688 101.925l-.003 1.286c0 57.229-47.663 105.863-104.542 99.541-36.994-4.112-76.95-7.404-110.071-7.404s-73.077 3.292-110.071 7.404C114.05 338.363 66.387 289.729 66.387 232.5z"})))),q||(q=m.createElement("defs",null,m.createElement("clipPath",{id:"a"},m.createElement("path",{fill:"#fff",d:"M0 0h539v434H0z"})),m.createElement("clipPath",{id:"b"},m.createElement("path",{fill:"#fff",d:"M238 180h66v66h-66z"})),m.createElement("radialGradient",{id:"d",cx:0,cy:0,r:1,gradientTransform:"matrix(205.915 0 0 507.377 281 232.5)",gradientUnits:"userSpaceOnUse"},m.createElement("stop",{offset:.484,stopColor:"#4959EC",stopOpacity:0}),m.createElement("stop",{offset:.865,stopColor:"#4959EC",stopOpacity:.05}),m.createElement("stop",{offset:1,stopColor:"#4959EC",stopOpacity:.1})),m.createElement("filter",{id:"c",width:471.108,height:245.523,x:45.446,y:108.008,colorInterpolationFilters:"sRGB",filterUnits:"userSpaceOnUse"},m.createElement("feFlood",{floodOpacity:0,result:"BackgroundImageFix"}),m.createElement("feBlend",{in:"SourceGraphic",in2:"BackgroundImageFix",result:"shape"}),m.createElement("feGaussianBlur",{result:"effect1_foregroundBlur_1664_4279",stdDeviation:10.469})))))}},1724:(l,t,e)=>{e.d(t,{A:()=>f});var a,q,m,h,r,c,v,n,i,o,s,d=e(758);function z(){return z=Object.assign?Object.assign.bind():function(l){for(var t=1;t{let{title:t,titleId:e,...f}=l;return d.createElement("svg",z({xmlns:"http://www.w3.org/2000/svg",width:539,height:434,fill:"none",viewBox:"0 0 539 434","aria-labelledby":e},f),t?d.createElement("title",{id:e},t):null,a||(a=d.createElement("path",{stroke:"#6CECAC",strokeMiterlimit:10,strokeOpacity:.25,strokeWidth:1.397,d:"m50.606 221.071 3.641-.332a384.5 384.5 0 0 1 139.295 12.973M52.725 204.769h3.642c47.055-.086 93.713 8.461 137.581 25.202M56.299 188.72l3.642.318c46.865 4.063 92.549 16.686 134.708 37.22M61.344 173.055l3.588.636c46.328 8.173 90.699 24.772 130.837 48.945M67.777 157.894l3.52.941c45.373 12.234 88.028 32.679 125.78 60.286M75.576 143.356l3.426 1.327c44.074 16.181 84.693 40.301 119.777 71.123M84.664 129.574l3.291 1.592c42.425 20.001 80.685 47.607 112.817 81.403M94.983 116.643l3.13 1.83c40.428 23.663 76.016 54.53 104.939 91.019M106.423 104.638l2.954 2.095c38.111 27.132 70.744 61.013 96.226 99.907M118.912 93.76l2.698 2.362c35.486 30.373 64.899 66.99 86.73 107.971M132.361 83.999l2.496 2.587c32.57 33.383 58.525 72.446 76.533 115.186M146.632 75.456l2.279 2.799c29.396 36.123 51.686 77.318 65.729 121.474M161.629 68.201l2.01 2.998c25.985 38.568 44.428 81.563 54.385 126.78M177.223 62.298l1.726 3.157c22.367 40.702 36.817 85.15 42.61 131.064M193.287 57.802l1.443 3.303c18.562 42.51 28.904 88.05 30.498 134.287M209.702 54.738l1.133 3.476a366.3 366.3 0 0 1 18.129 136.436M226.334 53.133l.809 3.488a366 366 0 0 1 5.625 137.498M243.045 53l.486 3.555a366.2 366.2 0 0 1-6.933 137.431M259.69 54.34l.175 3.581a366.5 366.5 0 0 1-19.436 136.264M276.159 57.139l-.162 3.581c-2.028 46.211-12.805 91.645-31.778 133.969M292.305 61.384l-.486 3.555c-6.24 45.856-21.115 90.168-43.864 130.666M307.991 67.033l-.809 3.489c-10.388 45.125-29.244 87.949-55.599 126.275M323.099 74.038l-1.119 3.409c-14.464 44.023-37.143 85.011-66.876 120.864M337.519 82.354l-1.43 3.289c-18.41 42.58-44.735 81.41-77.625 114.497M351.115 91.892l-1.727 3.17c-22.219 40.777-51.975 77.123-87.742 107.175M363.781 102.607l-1.997 2.998c-25.84 38.645-58.774 72.219-97.116 99.005M375.435 114.387l-2.28 2.812c-29.266 36.222-65.147 66.757-105.802 90.037M385.956 127.188l-2.523 2.652c-32.451 33.498-70.971 60.75-113.585 80.355M395.274 140.783l-2.793 2.321c-35.375 30.498-76.223 54.24-120.451 70.009M403.276 155.188l-2.954 2.123c-38.014 27.255-80.861 47.304-126.345 59.119M410.019 170.257l-3.13 1.844c-40.345 23.796-84.848 39.99-131.228 47.751M415.292 185.828l-3.278 1.565c-42.353 20.148-88.156 32.352-135.059 35.986M419.15 201.825l-3.412 1.327c-44.022 16.327-90.752 24.446-137.798 23.942M421.524 218.087l-3.507.955a384.6 384.6 0 0 1-139.429 11.699M422.413 234.495l-3.588.65a384.9 384.9 0 0 1-139.929-.65M421.793 250.916l-3.628.331a384.8 384.8 0 0 1-139.295-12.985M419.69 267.218h-3.642c-47.055.086-93.714-8.461-137.581-25.202M416.101 283.268l-3.628-.318c-46.842-4.083-92.501-16.709-134.641-37.233M411.069 298.933l-3.588-.637c-46.331-8.171-90.703-24.775-130.837-48.958M404.624 314.093l-3.521-.955c-45.371-12.229-88.026-32.669-125.779-60.273M396.84 328.632l-3.426-1.326c-44.07-16.187-84.689-40.306-119.776-71.123M387.749 342.413l-3.291-1.552c-42.424-20.001-80.684-47.608-112.816-81.403M377.431 355.332l-3.129-1.844c-40.428-23.657-76.016-54.52-104.94-91.006M365.979 367.27l-2.954-2.109c-38.106-27.128-70.734-61.004-96.213-99.893M353.491 378.226l-2.698-2.361c-35.482-30.379-64.891-67-86.717-107.984M340.053 387.989l-2.522-2.653c-32.574-33.386-58.529-72.454-76.533-115.2M325.782 396.531l-2.28-2.733c-29.395-36.123-51.686-77.318-65.729-121.474M310.784 403.774l-2.01-2.985c-25.988-38.566-44.432-81.561-54.385-126.779M295.192 409.716l-1.727-3.157c-22.374-40.714-36.825-85.176-42.61-131.104M279.182 414.186l-1.444-3.303c-18.561-42.51-28.904-88.05-30.497-134.287M262.713 417.249l-1.133-3.409a366.1 366.1 0 0 1-18.129-136.449M246.082 418.855l-.823-3.502a365.9 365.9 0 0 1-5.611-137.484M229.369 418.999l-.499-3.554a366.1 366.1 0 0 1 6.946-137.431M212.722 417.674l-.175-3.581a366.4 366.4 0 0 1 19.423-136.29M196.254 414.848l.162-3.581c2.028-46.211 12.805-91.645 31.778-133.969M180.11 410.604l.486-3.555c6.233-45.858 21.109-90.171 43.864-130.666M164.422 404.954l.809-3.502c10.389-45.121 29.244-87.941 55.599-126.263M149.315 397.951l1.12-3.423c14.455-44.022 37.135-85.007 66.875-120.85M134.855 389.634l1.43-3.303c18.416-42.57 44.741-81.39 77.626-114.471M121.366 380.083l1.727-3.157c22.223-40.775 51.978-77.12 87.742-107.175M108.622 369.379l1.956-2.998c25.833-38.651 58.768-72.226 97.116-99.004M96.98 357.599l2.266-2.812c29.253-36.217 65.115-66.756 105.748-90.051M86.459 344.827l2.509-2.653c32.45-33.499 70.971-60.75 113.585-80.355M77.138 331.192l2.697-2.361c35.377-30.499 76.225-54.246 120.452-70.022M69.1 316.785l2.954-2.109c38.01-27.26 80.858-47.309 126.345-59.118M62.407 301.731l3.13-1.844c40.342-23.805 84.846-39.999 131.228-47.751M57.121 286.146l3.278-1.565c42.356-20.139 88.157-32.338 135.059-35.973M53.265 270.162l3.412-1.326c44.024-16.312 90.755-24.409 137.797-23.876M50.89 253.9l3.507-.968a384.9 384.9 0 0 1 139.415-11.673M50 237.492l3.588-.65a384.6 384.6 0 0 1 139.915.65"})),q||(q=d.createElement("g",{filter:"url(#a)"},d.createElement("path",{fill:"url(#b)",d:"M65.325 220.5c0-52.11 42.146-96.863 94.065-92.404 33.174 2.85 68.97 5.129 98.61 5.129s65.436-2.279 98.61-5.129c51.919-4.459 94.065 40.294 94.065 92.404 0 51.285-42.696 94.881-93.667 89.22-33.265-3.695-69.217-6.656-99.008-6.656s-65.743 2.961-99.008 6.656c-50.972 5.661-93.667-37.935-93.667-89.22"}))),m||(m=d.createElement("path",{fill:"#6CECAC",d:"M316.5 120.625c19.228 0 34.875 15.647 34.875 34.875v34.875h-23.25V155.5c0-6.405-5.22-11.625-11.625-11.625h-23.25c-6.405 0-11.625 5.22-11.625 11.625v34.875h2.906c4.79 0 8.719 3.929 8.719 8.719v87.187c0 4.79-3.929 8.719-8.719 8.719h-98.812a8.753 8.753 0 0 1-8.719-8.719v-87.187c0-4.79 3.929-8.719 8.719-8.719h72.656V155.5c0-19.228 15.647-34.875 34.875-34.875z"})),h||(h=d.createElement("path",{fill:"#111",d:"M243.185 218.57a4.14 4.14 0 0 1 2.491 1.974 4.2 4.2 0 0 1 .377 3.173l-12.219 43.923a4.17 4.17 0 0 1-1.956 2.511 4.1 4.1 0 0 1-3.144.381 4.14 4.14 0 0 1-2.489-1.974 4.2 4.2 0 0 1-.377-3.172l12.218-43.928a4.2 4.2 0 0 1 .731-1.452 4.2 4.2 0 0 1 1.226-1.059 4.1 4.1 0 0 1 3.145-.379zm-19.468 11.227a4.2 4.2 0 0 1 1.209 2.949 4.2 4.2 0 0 1-1.209 2.949l-8.769 8.855 8.774 8.853a4.2 4.2 0 0 1 1.211 2.952 4.2 4.2 0 0 1-1.212 2.951 4.114 4.114 0 0 1-5.85-.002l-11.7-11.805a4.2 4.2 0 0 1-1.21-2.949c0-1.106.435-2.166 1.21-2.949l11.697-11.804a4.103 4.103 0 0 1 5.849 0m24.487 5.898a4.2 4.2 0 0 1-.959-1.355 4.2 4.2 0 0 1-.057-3.261 4.17 4.17 0 0 1 2.286-2.307 4.1 4.1 0 0 1 3.233.058 4.1 4.1 0 0 1 1.343.967l11.7 11.801a4.2 4.2 0 0 1 1.211 2.951 4.2 4.2 0 0 1-1.211 2.95l-11.698 11.805a4.102 4.102 0 0 1-4.507.906 4.16 4.16 0 0 1-2.24-2.258 4.21 4.21 0 0 1 .896-4.549l8.774-8.853z"})),r||(r=d.createElement("g",{clipPath:"url(#c)"},d.createElement("path",{fill:"#fff",d:"m85.46 323.403 46.383 13.887-3.968 13.252c-1.871 6.249-2.805 9.37-5.328 10.73s-5.644.425-11.892-1.445l-19.878-5.952c-6.248-1.871-9.37-2.806-10.73-5.328s-.425-5.644 1.446-11.892zm-4.079-12.72 5.072 9.407 17.22-9.284-6.393-7.719a3.454 3.454 0 0 0-3.86-1.037l-10.19 3.747a3.45 3.45 0 0 0-2.04 2.021 3.46 3.46 0 0 0 .191 2.865m60.86 18.223-9.406 5.071-9.284-17.22 9.582-2.935a3.46 3.46 0 0 1 3.794 1.255l6.455 8.73a3.47 3.47 0 0 1-.025 4.143c-.299.395-.68.721-1.116.956"}),d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m129.521 332.985-.991 3.313-39.757-11.903.992-3.313 12.915-6.964 19.878 5.952z"}))),c||(c=d.createElement("g",{clipPath:"url(#d)"},d.createElement("path",{fill:"#fff",d:"m84.46 134.403 46.383 13.887-3.968 13.252c-1.871 6.249-2.805 9.37-5.328 10.73s-5.644.425-11.892-1.445l-19.878-5.952c-6.248-1.871-9.37-2.806-10.73-5.328s-.425-5.644 1.446-11.892zm-4.079-12.72 5.072 9.407 17.22-9.284-6.393-7.719a3.454 3.454 0 0 0-3.86-1.037l-10.19 3.747a3.45 3.45 0 0 0-2.04 2.021 3.46 3.46 0 0 0 .191 2.865m60.86 18.223-9.406 5.071-9.284-17.22 9.582-2.935a3.46 3.46 0 0 1 3.794 1.255l6.455 8.73a3.47 3.47 0 0 1-.025 4.143c-.299.395-.68.721-1.116.956"}),d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m128.521 143.985-.991 3.313-39.757-11.903.992-3.313 12.915-6.964 19.878 5.952z"}))),v||(v=d.createElement("g",{clipPath:"url(#e)"},d.createElement("path",{fill:"#fff",d:"m371.591 83.165 21.313-16.52 4.72 6.09c2.225 2.871 3.337 4.306 3.136 5.89s-1.635 2.694-4.506 4.92l-9.134 7.079c-2.871 2.225-4.305 3.337-5.889 3.136-1.583-.2-2.695-1.635-4.92-4.506zm-7.084-2.27 5.904.747 1.37-10.809-5.568.397a1.93 1.93 0 0 0-1.719 1.413l-1.603 5.83a1.927 1.927 0 0 0 1.616 2.42m27.965-21.676-.748 5.905-10.809-1.37 1.773-5.293a1.93 1.93 0 0 1 1.798-1.313l6.045-.097a1.93 1.93 0 0 1 1.87 1.353c.082.263.106.541.071.815"}),d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m390.202 66.304 1.18 1.522-18.269 14.159-1.18-1.522 1.028-8.107 9.134-7.08z"}))),n||(n=d.createElement("path",{fill:"#fff",d:"m376.272 330.574 71.265-8.33 2.38 20.362c1.122 9.6 1.683 14.395-.952 17.727-2.634 3.331-7.429 3.892-17.03 5.014l-30.542 3.57c-9.6 1.122-14.395 1.682-17.727-.952-3.331-2.634-3.892-7.43-5.014-17.03zm-13.017-14.913 12.422 9.822 17.982-22.741-13.23-6.751a5.13 5.13 0 0 0-5.859.855l-11.667 11.08a5.133 5.133 0 0 0-1.03 6.052 5.1 5.1 0 0 0 1.382 1.683m93.51-10.929-9.823 12.422-22.741-17.982 11.316-9.619a5.12 5.12 0 0 1 5.899-.519l13.907 8.09a5.125 5.125 0 0 1 1.442 7.608"})),i||(i=d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m441.851 317.749.595 5.09-61.084 7.14-.595-5.091 13.486-17.056 30.543-3.569z"})),o||(o=d.createElement("path",{fill:"#fff",d:"M411.05 246.21a5.407 5.407 0 0 1 6.473 4.052l1.211 5.263-3.508.807-1.211-5.263a1.8 1.8 0 0 0-2.158-1.35l-3.508.807a1.803 1.803 0 0 0-1.351 2.158l1.211 5.262.438-.101a1.356 1.356 0 0 1 1.619 1.013l3.026 13.157a1.355 1.355 0 0 1-1.013 1.618l-14.91 3.43a1.36 1.36 0 0 1-1.619-1.013l-3.026-13.157a1.355 1.355 0 0 1 1.013-1.618l10.963-2.522-1.21-5.262a5.407 5.407 0 0 1 4.052-6.474zM366.502 38.513a5.407 5.407 0 0 1 5.889 4.863l.512 5.375-3.583.342-.513-5.376a1.803 1.803 0 0 0-1.963-1.62l-3.584.341a1.8 1.8 0 0 0-1.62 1.963l.512 5.376.448-.043a1.355 1.355 0 0 1 1.472 1.216l1.282 13.439a1.356 1.356 0 0 1-1.216 1.472l-15.231 1.452a1.354 1.354 0 0 1-1.472-1.215l-1.281-13.44a1.354 1.354 0 0 1 1.215-1.471l11.199-1.069-.512-5.375a5.406 5.406 0 0 1 4.863-5.889zM131.964 271.975a5.407 5.407 0 0 1 5.889 4.863l.512 5.375-3.583.342-.513-5.376a1.804 1.804 0 0 0-1.963-1.621l-3.584.342a1.804 1.804 0 0 0-1.621 1.963l.513 5.376.448-.043a1.354 1.354 0 0 1 1.472 1.216l1.282 13.439a1.356 1.356 0 0 1-1.216 1.472l-15.231 1.452a1.356 1.356 0 0 1-1.472-1.215l-1.282-13.439a1.357 1.357 0 0 1 1.216-1.473l11.199-1.068-.512-5.375a5.407 5.407 0 0 1 4.863-5.889zM124.6 83c2.977 0 5.4 2.423 5.4 5.4v5.4h-3.6v-5.4c0-.992-.808-1.8-1.8-1.8H121c-.992 0-1.8.808-1.8 1.8v5.4h.45c.742 0 1.35.608 1.35 1.35v13.5c0 .742-.608 1.35-1.35 1.35h-15.3a1.353 1.353 0 0 1-1.35-1.35v-13.5c0-.742.608-1.35 1.35-1.35h11.25v-5.4c0-2.977 2.423-5.4 5.4-5.4z"})),s||(s=d.createElement("defs",null,d.createElement("clipPath",{id:"c"},d.createElement("path",{fill:"#fff",d:"m79.808 282 79.512 23.807-23.807 79.513L56 361.512z"})),d.createElement("clipPath",{id:"d"},d.createElement("path",{fill:"#fff",d:"m78.808 93 79.512 23.807-23.807 79.513L55 172.512z"})),d.createElement("clipPath",{id:"e"},d.createElement("path",{fill:"#fff",d:"M351 72.318 387.537 44l28.318 36.537-36.537 28.318z"})),d.createElement("radialGradient",{id:"b",cx:0,cy:0,r:1,gradientTransform:"matrix(184.866 0 0 454.662 258 220.5)",gradientUnits:"userSpaceOnUse"},d.createElement("stop",{offset:.484,stopColor:"#4959EC",stopOpacity:0}),d.createElement("stop",{offset:.865,stopColor:"#4959EC",stopOpacity:.05}),d.createElement("stop",{offset:1,stopColor:"#4959EC",stopOpacity:.1})),d.createElement("filter",{id:"a",width:427.223,height:224.301,x:44.388,y:106.852,colorInterpolationFilters:"sRGB",filterUnits:"userSpaceOnUse"},d.createElement("feFlood",{floodOpacity:0,result:"BackgroundImageFix"}),d.createElement("feBlend",{in:"SourceGraphic",in2:"BackgroundImageFix",result:"shape"}),d.createElement("feGaussianBlur",{result:"effect1_foregroundBlur_1664_4134",stdDeviation:10.469})))))}},602:(l,t,e)=>{e.d(t,{A:()=>g});var a,q,m,h,r,c,v,n,i,o,s,d,z,f,p,V,u,M,E=e(758);function k(){return k=Object.assign?Object.assign.bind():function(l){for(var t=1;t{let{title:t,titleId:e,...g}=l;return E.createElement("svg",k({xmlns:"http://www.w3.org/2000/svg",width:539,height:434,fill:"none",viewBox:"0 0 539 434","aria-labelledby":e},g),t?E.createElement("title",{id:e},t):null,a||(a=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.5 429C367.233 429 457 339.233 457 228.5S367.233 28 256.5 28 56 117.767 56 228.5 145.767 429 256.5 429"})),q||(q=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 413.043c101.921 0 184.544-82.623 184.544-184.544 0-101.92-82.623-184.543-184.544-184.543-101.92 0-184.543 82.623-184.543 184.543 0 101.921 82.623 184.544 184.543 184.544"})),m||(m=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 397.082c93.104 0 168.581-75.477 168.581-168.581 0-93.105-75.477-168.581-168.581-168.581-93.105 0-168.581 75.476-168.581 168.581S163.396 397.082 256.5 397.082"})),h||(h=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.5 381.125c84.292 0 152.625-68.333 152.625-152.625S340.792 75.876 256.5 75.876 103.876 144.208 103.876 228.5 172.208 381.125 256.5 381.125"})),r||(r=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 365.162c75.476 0 136.661-61.185 136.661-136.661 0-75.477-61.185-136.662-136.661-136.662-75.477 0-136.662 61.185-136.662 136.662 0 75.476 61.185 136.661 136.662 136.661"})),c||(c=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 349.203c66.664 0 120.705-54.041 120.705-120.705 0-66.663-54.041-120.705-120.705-120.705s-120.705 54.042-120.705 120.705c0 66.664 54.041 120.705 120.705 120.705"})),v||(v=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.5 333.243c57.848 0 104.743-46.895 104.743-104.743S314.348 123.758 256.5 123.758 151.758 170.653 151.758 228.5 198.653 333.243 256.5 333.243"})),n||(n=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 317.285c49.035 0 88.786-39.751 88.786-88.786s-39.751-88.786-88.786-88.786-88.786 39.751-88.786 88.786 39.751 88.786 88.786 88.786"})),i||(i=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 301.323c40.22 0 72.824-32.604 72.824-72.824s-32.604-72.823-72.824-72.823-72.823 32.604-72.823 72.823c0 40.22 32.604 72.824 72.823 72.824"})),o||(o=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 285.366c31.406 0 56.867-25.461 56.867-56.867 0-31.407-25.461-56.867-56.867-56.867-31.407 0-56.867 25.46-56.867 56.867s25.46 56.867 56.867 56.867"})),s||(s=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 269.403c22.591 0 40.904-18.313 40.904-40.904s-18.313-40.904-40.904-40.904-40.904 18.313-40.904 40.904 18.313 40.904 40.904 40.904"})),d||(d=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 253.448c13.778 0 24.947-11.169 24.947-24.947 0-13.779-11.169-24.948-24.947-24.948-13.779 0-24.948 11.169-24.948 24.948s11.169 24.947 24.948 24.947"})),z||(z=E.createElement("path",{fill:"#fff",d:"M358 384v-65.022L367.839 307h57.322L435 318.978V384zm10.267-64.167h56.466l-3.636-4.277h-49.194zm41.922 32.084-8.983 8.983 6.202 6.203 15.186-15.186-15.186-15.186-6.202 6.202zm-27.164 0 8.983-8.984-6.202-6.202-15.187 15.186 15.187 15.186 6.202-6.203zM76.474 112.783l15.802-47.289 10.066-6.32 41.689 13.93 4.244 11.102-15.801 47.289zm23.06-44.172 41.067 13.723-1.605-3.995-35.778-11.955zm22.692 33.521-8.716 4.35 3.004 6.019 14.734-7.354-7.353-14.735-6.019 3.004zm-19.755-6.6 8.716-4.351-3.003-6.019-14.735 7.354 7.354 14.735 6.018-3.004zM132.873 359.49l-7.485-22.477 2.022-5.273 19.814-6.599 4.78 3.008 7.486 22.476zm-3.838-23.363 19.519-6.5-1.749-1.061-17.005 5.664zm18.185 6.264-2.071 4.14 2.858 1.43 3.501-6.998-6.998-3.501-1.43 2.858zm-9.39 3.127 2.071-4.139-2.858-1.43-3.501 6.998 6.998 3.501 1.43-2.859zM342.576 115.529l2.006-23.604 3.941-4.045 20.81 1.767 3.202 4.652-2.005 23.605zm5.706-22.977 20.5 1.741-1.189-1.665-17.859-1.517zm14.23 12.94-3.538 2.984 2.06 2.443 5.982-5.045-5.045-5.981-2.443 2.06zm-9.861-.838 3.538-2.984-2.06-2.443-5.982 5.044 5.045 5.982 2.443-2.061z"})),f||(f=E.createElement("g",{filter:"url(#a)"},E.createElement("path",{fill:"url(#b)",d:"M65.325 220.5c0-52.11 42.146-96.863 94.065-92.404 33.174 2.85 68.97 5.129 98.61 5.129s65.436-2.279 98.61-5.129c51.919-4.459 94.065 40.294 94.065 92.404 0 51.285-42.696 94.881-93.667 89.22-33.265-3.695-69.217-6.656-99.008-6.656s-65.743 2.961-99.008 6.656c-50.972 5.661-93.667-37.935-93.667-89.22"}))),p||(p=E.createElement("rect",{width:132,height:132,x:193.5,y:162.5,fill:"#2D2D38",rx:15.5})),V||(V=E.createElement("rect",{width:132,height:132,x:193.5,y:162.5,stroke:"#6CECAC",rx:15.5})),u||(u=E.createElement("path",{fill:"#6CECAC",d:"M301 208h-6.15l-11.421 19.329V208h-5.858v41h5.858v-12.593l2.635-4.393L294.85 249H301l-11.421-22.257zm-41 41h-11.714v-41H260a11.743 11.743 0 0 1 11.714 11.714v17.572A11.74 11.74 0 0 1 260 249m-5.857-5.857H260a5.876 5.876 0 0 0 5.857-5.857v-17.572a5.87 5.87 0 0 0-5.857-5.857h-5.857zM236.571 249H219v-5.857h17.571v-11.714h-11.714a5.876 5.876 0 0 1-5.857-5.858v-11.714a5.87 5.87 0 0 1 5.857-5.857h17.572v5.857h-17.572v11.714h11.714a5.88 5.88 0 0 1 5.858 5.858v11.714a5.876 5.876 0 0 1-5.858 5.857"})),M||(M=E.createElement("defs",null,E.createElement("radialGradient",{id:"b",cx:0,cy:0,r:1,gradientTransform:"matrix(184.866 0 0 454.662 258 220.5)",gradientUnits:"userSpaceOnUse"},E.createElement("stop",{offset:.484,stopColor:"#4959EC",stopOpacity:0}),E.createElement("stop",{offset:.865,stopColor:"#4959EC",stopOpacity:.05}),E.createElement("stop",{offset:1,stopColor:"#4959EC",stopOpacity:.1})),E.createElement("filter",{id:"a",width:427.223,height:224.301,x:44.388,y:106.852,colorInterpolationFilters:"sRGB",filterUnits:"userSpaceOnUse"},E.createElement("feFlood",{floodOpacity:0,result:"BackgroundImageFix"}),E.createElement("feBlend",{in:"SourceGraphic",in2:"BackgroundImageFix",result:"shape"}),E.createElement("feGaussianBlur",{result:"effect1_foregroundBlur_1664_4209",stdDeviation:10.469})))))}},1621:(l,t,e)=>{e.r(t),e.d(t,{default:()=>f});var a=e(3526),q=e(9410),m=e(9014),h=e(6848),r=e(9849);const c={features:"features_t9lD",featureSvg:"featureSvg_GfXr"};var v=e(6070);const n=[{title:"Robust framework",Svg:e(3982).A,description:(0,v.jsx)(v.Fragment,{children:"Quickly launch and configure nodes in our peer-to-peer network with user-friendly tools that minimize the complexity and technical challenges."})},{title:"Comprehensive SDKs",Svg:e(602).A,description:(0,v.jsxs)(v.Fragment,{children:[" ","Jumpstart your decentralized apps with our SDKs, designed for easy integration into our robust peer-to-peer network."]})},{title:"Open Source project",Svg:e(1724).A,description:(0,v.jsx)(v.Fragment,{children:"Contribute your code to help forge a platform that leads the way in innovation in the decentralized space"})}];function i(l){let{title:t,Svg:e,description:q}=l;return(0,v.jsxs)("div",{className:(0,a.A)("col col--4"),children:[(0,v.jsx)("div",{className:"text--center",children:(0,v.jsx)(e,{className:c.featureSvg,role:"img"})}),(0,v.jsxs)("div",{className:"text--center padding-horiz--md",children:[(0,v.jsx)(r.A,{as:"h3",children:t}),(0,v.jsx)("p",{children:q})]})]})}function o(){return(0,v.jsx)("section",{className:c.features,children:(0,v.jsx)("div",{className:"container",children:(0,v.jsx)("div",{className:"row",children:n.map(((l,t)=>(0,v.jsx)(i,{...l},t)))})})})}const s={heroBanner:"heroBanner_qdFl",headerContainer:"headerContainer_Dcc3",buttons:"buttons_AeoN",heroSubtitle:"heroSubtitle_jFu1",textPadding:"textPadding_Bwvp",bodyContainer:"bodyContainer_uay2"};function d(){const{siteConfig:l}=(0,m.A)();return(0,v.jsx)("header",{className:(0,a.A)("",s.heroBanner),children:(0,v.jsx)("div",{className:"container",children:(0,v.jsx)(r.A,{as:"h1",className:"hero__title",children:l.title})})})}function z(){return(0,v.jsxs)("header",{className:s.features,children:[(0,v.jsx)("div",{className:s.bodyContainer,children:(0,v.jsx)("div",{className:s.textPadding,children:"You're about to dive into the Calimero Network, a place designed to shake up the digital world by prioritizing what matters most: privacy, data control, and freedom in your creations. Calimero offers a foundation for those committed to building the new digital landscape where privacy and user autonomy are non-negotiable. It's a shift towards an ecosystem where applications are built on principles of decentralization, ensuring users retain control over their digital footprint."})}),(0,v.jsx)("div",{className:s.buttons,children:(0,v.jsx)(q.A,{className:"button button--secondary button--lg",to:"/explore/intro",children:"Dive into privacy preserving technology"})})]})}function f(){const{siteConfig:l}=(0,m.A)();return(0,v.jsxs)(h.A,{title:`Hello from ${l.title}`,description:"Description will go into a meta tag in ",children:[(0,v.jsx)(d,{}),(0,v.jsxs)("main",{children:[(0,v.jsx)(z,{}),(0,v.jsx)(o,{})]})]})}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[4583],{3982:(l,t,e)=>{e.d(t,{A:()=>r});var a,q,m=e(758);function h(){return h=Object.assign?Object.assign.bind():function(l){for(var t=1;t{let{title:t,titleId:e,...r}=l;return m.createElement("svg",h({xmlns:"http://www.w3.org/2000/svg",width:539,height:434,fill:"none",viewBox:"0 0 539 434","aria-labelledby":e},r),t?m.createElement("title",{id:e},t):null,a||(a=m.createElement("g",{clipPath:"url(#a)"},m.createElement("path",{stroke:"#10B981",strokeMiterlimit:10,strokeWidth:5,d:"M43 366.116a166 166 0 0 1 59.412-2.058c46.77 7.058 63.747 31.295 79.278 23.156 24.011-12.593-9.858-73.997 23.178-119.274 24.227-33.213 72.569-41.446 83.762-43.347 43.649-7.437 65.48 8.9 85.47-8.644 14.63-12.818 9.241-27.081 27.484-52.129 12.696-17.441 28.079-28.089 39.24-34.427"}),m.createElement("path",{stroke:"#10B981",strokeMiterlimit:10,strokeWidth:5,d:"M291.97 295.045c9.186-11.332 21.43-22.11 36.141-31.814 34.967-22.91 63.935-25.894 67.676-36.081 5.775-15.75-61.816-13.006-74.859-41.553-9.571-20.936 14.912-48.435 20.585-54.802 22.104-24.83 48.219-32.315 47.726-47.165-.345-10.863-14.473-11.531-21.71-27.306-5.042-10.98-3.28-21.706-.959-29.146"}),m.createElement("rect",{width:336.682,height:223.194,x:102.535,y:95.946,fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,rx:6.62}),m.createElement("rect",{width:306.419,height:198.605,x:117.666,y:111.078,fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,rx:6.62}),m.createElement("rect",{width:306.419,height:198.605,x:117.666,y:111.078,fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,rx:6.62}),m.createElement("path",{fill:"#2D2D38",stroke:"#393939",strokeWidth:1.891,d:"M77.946 319.139h383.969v2.837a6.62 6.62 0 0 1-6.62 6.62H84.565a6.62 6.62 0 0 1-6.62-6.62zM81.729 328.597h376.403v2.837a6.62 6.62 0 0 1-6.62 6.62H88.349a6.62 6.62 0 0 1-6.62-6.62z"}),m.createElement("path",{fill:"#6CECAC",fillOpacity:.25,d:"M121.566 124.145q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V124h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V124h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-296.236 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V142h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V142h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-298.079 18V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.965.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.965.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V160h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V160h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.965.835 1.469.55.503 1.323.503m-298.037 8.371V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V178h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V178h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.792 0V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178H316.3v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V178h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V178h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm-300.688 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V196h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V196h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-295.967 18V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V214h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V214h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V214h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm-300.688 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V232h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V232h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.792 0V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V232h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m-293.626 19.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V250h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.792 0V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.722.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.639-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.163 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.639-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.722.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.639-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V250h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm-293.896 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V268h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.521 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062L168 260.446v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.638-1.997.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V268h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m-293.357 8.371V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.824.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.44-1.225 1.265-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286H316.3v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V286h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.792 0V286h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.791 0V286h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.322.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.402-9.629V286h-1.287v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm-300.688 28.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.15 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.265-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.988.649.83.643 1.265 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.295-2.35-.29-.97-.841-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.062l-2.595 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.642-1.12.643-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.644-3.196q0-1.38-.296-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345.291.966.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.521 10.77q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.649 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.522 10.77q-1.173 0-1.998-.638-.824-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.163 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.792 0V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.522 10.77q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.131 1.141q-1.173 0-1.998-.638-.825-.644-1.26-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.261 1.862-.824.638-1.997.638m0-1.141q1.162 0 1.805-1.121.644-1.12.644-3.196 0-1.38-.296-2.35-.291-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.173 0-1.997-.638-.826-.644-1.261-1.862-.436-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.83-.65 1.992-.649 1.162 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.435 1.218-1.26 1.862-.825.638-1.998.638m0-1.141q1.163 0 1.806-1.121t.643-3.196q0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.152 0-1.8 1.136-.65 1.131-.649 3.201 0 1.38.291 2.345.29.966.835 1.469.55.503 1.323.503m9.131 1.141q-1.172 0-1.997-.638-.825-.644-1.261-1.862-.435-1.225-.436-2.958 0-1.723.436-2.941.441-1.225 1.266-1.868.831-.65 1.992-.649 1.163 0 1.987.649.831.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.435 2.958-.436 1.218-1.261 1.862-.825.638-1.998.638m0-1.141q1.162 0 1.806-1.121.643-1.12.643-3.196 0-1.38-.296-2.35-.29-.97-.84-1.479a1.86 1.86 0 0 0-1.313-.508q-1.151 0-1.8 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.835 1.469q.55.503 1.323.503m9.132 1.141q-1.173 0-1.998-.638-.825-.644-1.261-1.862-.435-1.225-.435-2.958 0-1.723.435-2.941.441-1.225 1.266-1.868.83-.65 1.993-.649 1.161 0 1.987.649.83.643 1.266 1.868.441 1.219.441 2.941 0 1.733-.436 2.958-.436 1.218-1.261 1.862-.825.638-1.997.638m0-1.141q1.161 0 1.805-1.121t.643-3.196q0-1.38-.295-2.35-.29-.97-.841-1.479a1.85 1.85 0 0 0-1.312-.508q-1.152 0-1.801 1.136-.648 1.131-.648 3.201 0 1.38.29 2.345t.836 1.469a1.9 1.9 0 0 0 1.323.503m9.401-9.629V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zm6.791 0V304h-1.287v-9.277h-.062l-2.594 1.723v-1.307l2.656-1.764zM384.333 304v-.934l3.507-3.839q.618-.675 1.017-1.173a4.3 4.3 0 0 0 .591-.944q.198-.446.198-.934 0-.56-.27-.97a1.76 1.76 0 0 0-.727-.633 2.35 2.35 0 0 0-1.037-.223q-.613 0-1.069.254a1.75 1.75 0 0 0-.7.701q-.244.45-.244 1.058h-1.225q0-.934.431-1.64.43-.705 1.173-1.099a3.5 3.5 0 0 1 1.675-.395q.935 0 1.655.395.721.394 1.131 1.063.41.67.41 1.489 0 .586-.212 1.147-.208.555-.727 1.24a22 22 0 0 1-1.427 1.66l-2.386 2.553v.083h4.939V304zm12.581-10.625V304h-1.286v-9.277h-.063l-2.594 1.723v-1.307l2.657-1.764zm6.646 10.77q-1.026 0-1.831-.353a3.14 3.14 0 0 1-1.271-.98 2.64 2.64 0 0 1-.509-1.468h1.308q.041.513.353.887.311.368.814.571.504.202 1.116.202.684 0 1.214-.239.528-.238.83-.664.3-.426.301-.986 0-.586-.291-1.032-.29-.451-.851-.706t-1.369-.254h-.851v-1.141h.851q.633 0 1.11-.229.483-.228.752-.643a1.7 1.7 0 0 0 .275-.975q0-.54-.238-.939a1.64 1.64 0 0 0-.675-.623q-.43-.223-1.017-.223-.55 0-1.037.202a1.94 1.94 0 0 0-.789.576q-.306.374-.332.903h-1.245q.03-.836.503-1.463a3.17 3.17 0 0 1 1.235-.986 4 4 0 0 1 1.686-.353q.986 0 1.691.4.706.394 1.085 1.043.378.648.378 1.4 0 .898-.472 1.531a2.4 2.4 0 0 1-1.271.877v.083q1.006.166 1.572.856.566.684.566 1.696 0 .867-.472 1.557a3.2 3.2 0 0 1-1.277 1.079q-.809.394-1.842.394m5.713-.145v-.934l3.507-3.839q.616-.675 1.017-1.173.399-.503.591-.944.197-.446.197-.934 0-.56-.269-.97a1.76 1.76 0 0 0-.727-.633 2.35 2.35 0 0 0-1.037-.223q-.613 0-1.069.254-.452.25-.701.701-.243.45-.243 1.058h-1.225q0-.934.431-1.64.43-.705 1.172-1.099a3.53 3.53 0 0 1 1.676-.395q.934 0 1.655.395.721.394 1.131 1.063.41.67.41 1.489 0 .586-.213 1.147-.207.555-.726 1.24a22 22 0 0 1-1.427 1.66l-2.386 2.553v.083h4.939V304z"}),m.createElement("g",{clipPath:"url(#b)"},m.createElement("path",{fill:"#fff",d:"M278.205 187.321a4.12 4.12 0 0 1 2.484 1.951 4.12 4.12 0 0 1 .376 3.136l-12.186 43.414a4.123 4.123 0 0 1-5.086 2.859 4.123 4.123 0 0 1-2.858-5.086l12.185-43.42a4.132 4.132 0 0 1 3.482-2.982 4.1 4.1 0 0 1 1.605.125zm-19.415 11.096a4.126 4.126 0 0 1 0 5.83L250.045 213l8.75 8.751a4.123 4.123 0 0 1-.001 5.834 4.126 4.126 0 0 1-5.834-.002l-11.669-11.668a4.126 4.126 0 0 1 0-5.83l11.666-11.668a4.13 4.13 0 0 1 4.497-.895c.5.207.953.512 1.336.895m24.42 5.83a4.11 4.11 0 0 1-1.313-2.945 4.13 4.13 0 0 1 2.58-3.898 4.13 4.13 0 0 1 4.563 1.013l11.668 11.665a4.13 4.13 0 0 1 0 5.833l-11.666 11.668a4.13 4.13 0 0 1-2.916 1.209 4.13 4.13 0 0 1-2.918-1.207 4.124 4.124 0 0 1-.001-5.834l8.75-8.751z"})),m.createElement("path",{fill:"#fff",d:"M458.5 334.563a17.063 17.063 0 1 1 .001-34.126 17.063 17.063 0 0 1-.001 34.126m36.221-12.334c.195-1.56.341-3.12.341-4.729s-.146-3.217-.341-4.875l10.286-7.946c.927-.731 1.17-2.048.585-3.12l-9.75-16.868c-.585-1.072-1.901-1.511-2.973-1.072l-12.139 4.875c-2.535-1.901-5.168-3.559-8.239-4.778l-1.804-12.918a2.466 2.466 0 0 0-2.437-2.048h-19.5a2.465 2.465 0 0 0-2.438 2.048l-1.803 12.918c-3.072 1.219-5.704 2.877-8.239 4.778l-12.139-4.875c-1.072-.439-2.389 0-2.974 1.072l-9.75 16.868a2.405 2.405 0 0 0 .585 3.12l10.287 7.946c-.195 1.658-.342 3.266-.342 4.875s.147 3.169.342 4.729l-10.287 8.092a2.405 2.405 0 0 0-.585 3.12l9.75 16.868c.585 1.072 1.902 1.462 2.974 1.072l12.139-4.923c2.535 1.95 5.167 3.607 8.239 4.826l1.803 12.919a2.464 2.464 0 0 0 2.438 2.047h19.5a2.46 2.46 0 0 0 2.437-2.047l1.804-12.919c3.071-1.268 5.704-2.876 8.239-4.826l12.139 4.923c1.072.39 2.388 0 2.973-1.072l9.75-16.868c.585-1.072.342-2.388-.585-3.12z"}),m.createElement("path",{fill:"#000",d:"M117 97.792a10.793 10.793 0 1 1 0-21.585 10.793 10.793 0 0 1 0 21.585m22.909-7.8c.123-.988.216-1.974.216-2.992 0-1.017-.093-2.035-.216-3.083l6.506-5.026c.586-.462.74-1.295.37-1.973l-6.167-10.669a1.516 1.516 0 0 0-1.881-.678l-7.677 3.084c-1.604-1.203-3.269-2.251-5.211-3.022l-1.141-8.171a1.56 1.56 0 0 0-1.542-1.295h-12.333a1.56 1.56 0 0 0-1.542 1.295l-1.14 8.17c-1.943.772-3.608 1.82-5.211 3.022l-7.678-3.083c-.678-.277-1.51 0-1.88.678l-6.167 10.669a1.52 1.52 0 0 0 .37 1.973l6.506 5.026c-.124 1.048-.216 2.066-.216 3.083s.092 2.004.216 2.991l-6.506 5.118a1.52 1.52 0 0 0-.37 1.974l6.166 10.668c.37.678 1.203.925 1.881.678l7.678-3.114c1.603 1.234 3.268 2.282 5.211 3.053l1.14 8.171a1.56 1.56 0 0 0 1.542 1.295h12.333c.771 0 1.419-.555 1.542-1.295l1.141-8.171c1.942-.802 3.607-1.819 5.211-3.053l7.677 3.114c.679.247 1.511 0 1.881-.678l6.167-10.668c.37-.678.216-1.511-.37-1.974z"}),m.createElement("path",{fill:"#fff",d:"M117 97.792a10.793 10.793 0 1 1 0-21.585 10.793 10.793 0 0 1 0 21.585m22.909-7.8c.123-.988.216-1.974.216-2.992 0-1.017-.093-2.035-.216-3.083l6.506-5.026c.586-.462.74-1.295.37-1.973l-6.167-10.669a1.516 1.516 0 0 0-1.881-.678l-7.677 3.084c-1.604-1.203-3.269-2.251-5.211-3.022l-1.141-8.171a1.56 1.56 0 0 0-1.542-1.295h-12.333a1.56 1.56 0 0 0-1.542 1.295l-1.14 8.17c-1.943.772-3.608 1.82-5.211 3.022l-7.678-3.083c-.678-.277-1.51 0-1.88.678l-6.167 10.669a1.52 1.52 0 0 0 .37 1.973l6.506 5.026c-.124 1.048-.216 2.066-.216 3.083s.092 2.004.216 2.991l-6.506 5.118a1.52 1.52 0 0 0-.37 1.974l6.166 10.668c.37.678 1.203.925 1.881.678l7.678-3.114c1.603 1.234 3.268 2.282 5.211 3.053l1.14 8.171a1.56 1.56 0 0 0 1.542 1.295h12.333c.771 0 1.419-.555 1.542-1.295l1.141-8.171c1.942-.802 3.607-1.819 5.211-3.053l7.677 3.114c.679.247 1.511 0 1.881-.678l6.167-10.668c.37-.678.216-1.511-.37-1.974zM147 283.583a7.583 7.583 0 1 1 0-15.167 7.583 7.583 0 0 1 0 15.167m16.098-5.482c.087-.693.152-1.386.152-2.101s-.065-1.43-.152-2.167l4.572-3.532c.412-.325.52-.91.26-1.386l-4.333-7.497c-.26-.477-.845-.672-1.322-.477l-5.395 2.167c-1.127-.845-2.297-1.582-3.662-2.123l-.801-5.742a1.096 1.096 0 0 0-1.084-.91h-8.666c-.542 0-.997.39-1.084.91l-.801 5.742c-1.365.541-2.535 1.278-3.662 2.123l-5.395-2.167a1.065 1.065 0 0 0-1.322.477l-4.333 7.497a1.07 1.07 0 0 0 .26 1.386l4.572 3.532a19 19 0 0 0-.152 2.167c0 .715.065 1.408.152 2.101l-4.572 3.597c-.412.325-.542.91-.26 1.387l4.333 7.496c.26.477.845.65 1.322.477l5.395-2.188c1.127.866 2.297 1.603 3.662 2.145l.801 5.741c.087.52.542.91 1.084.91h8.666c.542 0 .997-.39 1.084-.91l.801-5.741c1.365-.564 2.535-1.279 3.662-2.145l5.395 2.188c.477.173 1.062 0 1.322-.477l4.333-7.496c.26-.477.152-1.062-.26-1.387z"}),m.createElement("path",{fill:"#fff",d:"M147 283.583a7.583 7.583 0 1 1 0-15.167 7.583 7.583 0 0 1 0 15.167m16.098-5.482c.087-.693.152-1.386.152-2.101s-.065-1.43-.152-2.167l4.572-3.532c.412-.325.52-.91.26-1.386l-4.333-7.497c-.26-.477-.845-.672-1.322-.477l-5.395 2.167c-1.127-.845-2.297-1.582-3.662-2.123l-.801-5.742a1.096 1.096 0 0 0-1.084-.91h-8.666c-.542 0-.997.39-1.084.91l-.801 5.742c-1.365.541-2.535 1.278-3.662 2.123l-5.395-2.167a1.065 1.065 0 0 0-1.322.477l-4.333 7.497a1.07 1.07 0 0 0 .26 1.386l4.572 3.532a19 19 0 0 0-.152 2.167c0 .715.065 1.408.152 2.101l-4.572 3.597c-.412.325-.542.91-.26 1.387l4.333 7.496c.26.477.845.65 1.322.477l5.395-2.188c1.127.866 2.297 1.603 3.662 2.145l.801 5.741c.087.52.542.91 1.084.91h8.666c.542 0 .997-.39 1.084-.91l.801-5.741c1.365-.564 2.535-1.279 3.662-2.145l5.395 2.188c.477.173 1.062 0 1.322-.477l4.333-7.496c.26-.477.152-1.062-.26-1.387z"}),m.createElement("g",{filter:"url(#c)"},m.createElement("path",{fill:"url(#d)",d:"M66.384 231.214c-.243-57.499 46.401-106.882 103.688-101.925 37.256 3.224 77.588 5.817 110.928 5.817s73.672-2.593 110.928-5.817c57.287-4.957 103.931 44.426 103.688 101.925l-.003 1.286c0 57.229-47.663 105.863-104.542 99.541-36.994-4.112-76.95-7.404-110.071-7.404s-73.077 3.292-110.071 7.404C114.05 338.363 66.387 289.729 66.387 232.5z"})))),q||(q=m.createElement("defs",null,m.createElement("clipPath",{id:"a"},m.createElement("path",{fill:"#fff",d:"M0 0h539v434H0z"})),m.createElement("clipPath",{id:"b"},m.createElement("path",{fill:"#fff",d:"M238 180h66v66h-66z"})),m.createElement("radialGradient",{id:"d",cx:0,cy:0,r:1,gradientTransform:"matrix(205.915 0 0 507.377 281 232.5)",gradientUnits:"userSpaceOnUse"},m.createElement("stop",{offset:.484,stopColor:"#4959EC",stopOpacity:0}),m.createElement("stop",{offset:.865,stopColor:"#4959EC",stopOpacity:.05}),m.createElement("stop",{offset:1,stopColor:"#4959EC",stopOpacity:.1})),m.createElement("filter",{id:"c",width:471.108,height:245.523,x:45.446,y:108.008,colorInterpolationFilters:"sRGB",filterUnits:"userSpaceOnUse"},m.createElement("feFlood",{floodOpacity:0,result:"BackgroundImageFix"}),m.createElement("feBlend",{in:"SourceGraphic",in2:"BackgroundImageFix",result:"shape"}),m.createElement("feGaussianBlur",{result:"effect1_foregroundBlur_1664_4279",stdDeviation:10.469})))))}},1724:(l,t,e)=>{e.d(t,{A:()=>f});var a,q,m,h,r,c,v,n,i,o,s,d=e(758);function z(){return z=Object.assign?Object.assign.bind():function(l){for(var t=1;t{let{title:t,titleId:e,...f}=l;return d.createElement("svg",z({xmlns:"http://www.w3.org/2000/svg",width:539,height:434,fill:"none",viewBox:"0 0 539 434","aria-labelledby":e},f),t?d.createElement("title",{id:e},t):null,a||(a=d.createElement("path",{stroke:"#6CECAC",strokeMiterlimit:10,strokeOpacity:.25,strokeWidth:1.397,d:"m50.606 221.071 3.641-.332a384.5 384.5 0 0 1 139.295 12.973M52.725 204.769h3.642c47.055-.086 93.713 8.461 137.581 25.202M56.299 188.72l3.642.318c46.865 4.063 92.549 16.686 134.708 37.22M61.344 173.055l3.588.636c46.328 8.173 90.699 24.772 130.837 48.945M67.777 157.894l3.52.941c45.373 12.234 88.028 32.679 125.78 60.286M75.576 143.356l3.426 1.327c44.074 16.181 84.693 40.301 119.777 71.123M84.664 129.574l3.291 1.592c42.425 20.001 80.685 47.607 112.817 81.403M94.983 116.643l3.13 1.83c40.428 23.663 76.016 54.53 104.939 91.019M106.423 104.638l2.954 2.095c38.111 27.132 70.744 61.013 96.226 99.907M118.912 93.76l2.698 2.362c35.486 30.373 64.899 66.99 86.73 107.971M132.361 83.999l2.496 2.587c32.57 33.383 58.525 72.446 76.533 115.186M146.632 75.456l2.279 2.799c29.396 36.123 51.686 77.318 65.729 121.474M161.629 68.201l2.01 2.998c25.985 38.568 44.428 81.563 54.385 126.78M177.223 62.298l1.726 3.157c22.367 40.702 36.817 85.15 42.61 131.064M193.287 57.802l1.443 3.303c18.562 42.51 28.904 88.05 30.498 134.287M209.702 54.738l1.133 3.476a366.3 366.3 0 0 1 18.129 136.436M226.334 53.133l.809 3.488a366 366 0 0 1 5.625 137.498M243.045 53l.486 3.555a366.2 366.2 0 0 1-6.933 137.431M259.69 54.34l.175 3.581a366.5 366.5 0 0 1-19.436 136.264M276.159 57.139l-.162 3.581c-2.028 46.211-12.805 91.645-31.778 133.969M292.305 61.384l-.486 3.555c-6.24 45.856-21.115 90.168-43.864 130.666M307.991 67.033l-.809 3.489c-10.388 45.125-29.244 87.949-55.599 126.275M323.099 74.038l-1.119 3.409c-14.464 44.023-37.143 85.011-66.876 120.864M337.519 82.354l-1.43 3.289c-18.41 42.58-44.735 81.41-77.625 114.497M351.115 91.892l-1.727 3.17c-22.219 40.777-51.975 77.123-87.742 107.175M363.781 102.607l-1.997 2.998c-25.84 38.645-58.774 72.219-97.116 99.005M375.435 114.387l-2.28 2.812c-29.266 36.222-65.147 66.757-105.802 90.037M385.956 127.188l-2.523 2.652c-32.451 33.498-70.971 60.75-113.585 80.355M395.274 140.783l-2.793 2.321c-35.375 30.498-76.223 54.24-120.451 70.009M403.276 155.188l-2.954 2.123c-38.014 27.255-80.861 47.304-126.345 59.119M410.019 170.257l-3.13 1.844c-40.345 23.796-84.848 39.99-131.228 47.751M415.292 185.828l-3.278 1.565c-42.353 20.148-88.156 32.352-135.059 35.986M419.15 201.825l-3.412 1.327c-44.022 16.327-90.752 24.446-137.798 23.942M421.524 218.087l-3.507.955a384.6 384.6 0 0 1-139.429 11.699M422.413 234.495l-3.588.65a384.9 384.9 0 0 1-139.929-.65M421.793 250.916l-3.628.331a384.8 384.8 0 0 1-139.295-12.985M419.69 267.218h-3.642c-47.055.086-93.714-8.461-137.581-25.202M416.101 283.268l-3.628-.318c-46.842-4.083-92.501-16.709-134.641-37.233M411.069 298.933l-3.588-.637c-46.331-8.171-90.703-24.775-130.837-48.958M404.624 314.093l-3.521-.955c-45.371-12.229-88.026-32.669-125.779-60.273M396.84 328.632l-3.426-1.326c-44.07-16.187-84.689-40.306-119.776-71.123M387.749 342.413l-3.291-1.552c-42.424-20.001-80.684-47.608-112.816-81.403M377.431 355.332l-3.129-1.844c-40.428-23.657-76.016-54.52-104.94-91.006M365.979 367.27l-2.954-2.109c-38.106-27.128-70.734-61.004-96.213-99.893M353.491 378.226l-2.698-2.361c-35.482-30.379-64.891-67-86.717-107.984M340.053 387.989l-2.522-2.653c-32.574-33.386-58.529-72.454-76.533-115.2M325.782 396.531l-2.28-2.733c-29.395-36.123-51.686-77.318-65.729-121.474M310.784 403.774l-2.01-2.985c-25.988-38.566-44.432-81.561-54.385-126.779M295.192 409.716l-1.727-3.157c-22.374-40.714-36.825-85.176-42.61-131.104M279.182 414.186l-1.444-3.303c-18.561-42.51-28.904-88.05-30.497-134.287M262.713 417.249l-1.133-3.409a366.1 366.1 0 0 1-18.129-136.449M246.082 418.855l-.823-3.502a365.9 365.9 0 0 1-5.611-137.484M229.369 418.999l-.499-3.554a366.1 366.1 0 0 1 6.946-137.431M212.722 417.674l-.175-3.581a366.4 366.4 0 0 1 19.423-136.29M196.254 414.848l.162-3.581c2.028-46.211 12.805-91.645 31.778-133.969M180.11 410.604l.486-3.555c6.233-45.858 21.109-90.171 43.864-130.666M164.422 404.954l.809-3.502c10.389-45.121 29.244-87.941 55.599-126.263M149.315 397.951l1.12-3.423c14.455-44.022 37.135-85.007 66.875-120.85M134.855 389.634l1.43-3.303c18.416-42.57 44.741-81.39 77.626-114.471M121.366 380.083l1.727-3.157c22.223-40.775 51.978-77.12 87.742-107.175M108.622 369.379l1.956-2.998c25.833-38.651 58.768-72.226 97.116-99.004M96.98 357.599l2.266-2.812c29.253-36.217 65.115-66.756 105.748-90.051M86.459 344.827l2.509-2.653c32.45-33.499 70.971-60.75 113.585-80.355M77.138 331.192l2.697-2.361c35.377-30.499 76.225-54.246 120.452-70.022M69.1 316.785l2.954-2.109c38.01-27.26 80.858-47.309 126.345-59.118M62.407 301.731l3.13-1.844c40.342-23.805 84.846-39.999 131.228-47.751M57.121 286.146l3.278-1.565c42.356-20.139 88.157-32.338 135.059-35.973M53.265 270.162l3.412-1.326c44.024-16.312 90.755-24.409 137.797-23.876M50.89 253.9l3.507-.968a384.9 384.9 0 0 1 139.415-11.673M50 237.492l3.588-.65a384.6 384.6 0 0 1 139.915.65"})),q||(q=d.createElement("g",{filter:"url(#a)"},d.createElement("path",{fill:"url(#b)",d:"M65.325 220.5c0-52.11 42.146-96.863 94.065-92.404 33.174 2.85 68.97 5.129 98.61 5.129s65.436-2.279 98.61-5.129c51.919-4.459 94.065 40.294 94.065 92.404 0 51.285-42.696 94.881-93.667 89.22-33.265-3.695-69.217-6.656-99.008-6.656s-65.743 2.961-99.008 6.656c-50.972 5.661-93.667-37.935-93.667-89.22"}))),m||(m=d.createElement("path",{fill:"#6CECAC",d:"M316.5 120.625c19.228 0 34.875 15.647 34.875 34.875v34.875h-23.25V155.5c0-6.405-5.22-11.625-11.625-11.625h-23.25c-6.405 0-11.625 5.22-11.625 11.625v34.875h2.906c4.79 0 8.719 3.929 8.719 8.719v87.187c0 4.79-3.929 8.719-8.719 8.719h-98.812a8.753 8.753 0 0 1-8.719-8.719v-87.187c0-4.79 3.929-8.719 8.719-8.719h72.656V155.5c0-19.228 15.647-34.875 34.875-34.875z"})),h||(h=d.createElement("path",{fill:"#111",d:"M243.185 218.57a4.14 4.14 0 0 1 2.491 1.974 4.2 4.2 0 0 1 .377 3.173l-12.219 43.923a4.17 4.17 0 0 1-1.956 2.511 4.1 4.1 0 0 1-3.144.381 4.14 4.14 0 0 1-2.489-1.974 4.2 4.2 0 0 1-.377-3.172l12.218-43.928a4.2 4.2 0 0 1 .731-1.452 4.2 4.2 0 0 1 1.226-1.059 4.1 4.1 0 0 1 3.145-.379zm-19.468 11.227a4.2 4.2 0 0 1 1.209 2.949 4.2 4.2 0 0 1-1.209 2.949l-8.769 8.855 8.774 8.853a4.2 4.2 0 0 1 1.211 2.952 4.2 4.2 0 0 1-1.212 2.951 4.114 4.114 0 0 1-5.85-.002l-11.7-11.805a4.2 4.2 0 0 1-1.21-2.949c0-1.106.435-2.166 1.21-2.949l11.697-11.804a4.103 4.103 0 0 1 5.849 0m24.487 5.898a4.2 4.2 0 0 1-.959-1.355 4.2 4.2 0 0 1-.057-3.261 4.17 4.17 0 0 1 2.286-2.307 4.1 4.1 0 0 1 3.233.058 4.1 4.1 0 0 1 1.343.967l11.7 11.801a4.2 4.2 0 0 1 1.211 2.951 4.2 4.2 0 0 1-1.211 2.95l-11.698 11.805a4.102 4.102 0 0 1-4.507.906 4.16 4.16 0 0 1-2.24-2.258 4.21 4.21 0 0 1 .896-4.549l8.774-8.853z"})),r||(r=d.createElement("g",{clipPath:"url(#c)"},d.createElement("path",{fill:"#fff",d:"m85.46 323.403 46.383 13.887-3.968 13.252c-1.871 6.249-2.805 9.37-5.328 10.73s-5.644.425-11.892-1.445l-19.878-5.952c-6.248-1.871-9.37-2.806-10.73-5.328s-.425-5.644 1.446-11.892zm-4.079-12.72 5.072 9.407 17.22-9.284-6.393-7.719a3.454 3.454 0 0 0-3.86-1.037l-10.19 3.747a3.45 3.45 0 0 0-2.04 2.021 3.46 3.46 0 0 0 .191 2.865m60.86 18.223-9.406 5.071-9.284-17.22 9.582-2.935a3.46 3.46 0 0 1 3.794 1.255l6.455 8.73a3.47 3.47 0 0 1-.025 4.143c-.299.395-.68.721-1.116.956"}),d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m129.521 332.985-.991 3.313-39.757-11.903.992-3.313 12.915-6.964 19.878 5.952z"}))),c||(c=d.createElement("g",{clipPath:"url(#d)"},d.createElement("path",{fill:"#fff",d:"m84.46 134.403 46.383 13.887-3.968 13.252c-1.871 6.249-2.805 9.37-5.328 10.73s-5.644.425-11.892-1.445l-19.878-5.952c-6.248-1.871-9.37-2.806-10.73-5.328s-.425-5.644 1.446-11.892zm-4.079-12.72 5.072 9.407 17.22-9.284-6.393-7.719a3.454 3.454 0 0 0-3.86-1.037l-10.19 3.747a3.45 3.45 0 0 0-2.04 2.021 3.46 3.46 0 0 0 .191 2.865m60.86 18.223-9.406 5.071-9.284-17.22 9.582-2.935a3.46 3.46 0 0 1 3.794 1.255l6.455 8.73a3.47 3.47 0 0 1-.025 4.143c-.299.395-.68.721-1.116.956"}),d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m128.521 143.985-.991 3.313-39.757-11.903.992-3.313 12.915-6.964 19.878 5.952z"}))),v||(v=d.createElement("g",{clipPath:"url(#e)"},d.createElement("path",{fill:"#fff",d:"m371.591 83.165 21.313-16.52 4.72 6.09c2.225 2.871 3.337 4.306 3.136 5.89s-1.635 2.694-4.506 4.92l-9.134 7.079c-2.871 2.225-4.305 3.337-5.889 3.136-1.583-.2-2.695-1.635-4.92-4.506zm-7.084-2.27 5.904.747 1.37-10.809-5.568.397a1.93 1.93 0 0 0-1.719 1.413l-1.603 5.83a1.927 1.927 0 0 0 1.616 2.42m27.965-21.676-.748 5.905-10.809-1.37 1.773-5.293a1.93 1.93 0 0 1 1.798-1.313l6.045-.097a1.93 1.93 0 0 1 1.87 1.353c.082.263.106.541.071.815"}),d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m390.202 66.304 1.18 1.522-18.269 14.159-1.18-1.522 1.028-8.107 9.134-7.08z"}))),n||(n=d.createElement("path",{fill:"#fff",d:"m376.272 330.574 71.265-8.33 2.38 20.362c1.122 9.6 1.683 14.395-.952 17.727-2.634 3.331-7.429 3.892-17.03 5.014l-30.542 3.57c-9.6 1.122-14.395 1.682-17.727-.952-3.331-2.634-3.892-7.43-5.014-17.03zm-13.017-14.913 12.422 9.822 17.982-22.741-13.23-6.751a5.13 5.13 0 0 0-5.859.855l-11.667 11.08a5.133 5.133 0 0 0-1.03 6.052 5.1 5.1 0 0 0 1.382 1.683m93.51-10.929-9.823 12.422-22.741-17.982 11.316-9.619a5.12 5.12 0 0 1 5.899-.519l13.907 8.09a5.125 5.125 0 0 1 1.442 7.608"})),i||(i=d.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeWidth:2,d:"m441.851 317.749.595 5.09-61.084 7.14-.595-5.091 13.486-17.056 30.543-3.569z"})),o||(o=d.createElement("path",{fill:"#fff",d:"M411.05 246.21a5.407 5.407 0 0 1 6.473 4.052l1.211 5.263-3.508.807-1.211-5.263a1.8 1.8 0 0 0-2.158-1.35l-3.508.807a1.803 1.803 0 0 0-1.351 2.158l1.211 5.262.438-.101a1.356 1.356 0 0 1 1.619 1.013l3.026 13.157a1.355 1.355 0 0 1-1.013 1.618l-14.91 3.43a1.36 1.36 0 0 1-1.619-1.013l-3.026-13.157a1.355 1.355 0 0 1 1.013-1.618l10.963-2.522-1.21-5.262a5.407 5.407 0 0 1 4.052-6.474zM366.502 38.513a5.407 5.407 0 0 1 5.889 4.863l.512 5.375-3.583.342-.513-5.376a1.803 1.803 0 0 0-1.963-1.62l-3.584.341a1.8 1.8 0 0 0-1.62 1.963l.512 5.376.448-.043a1.355 1.355 0 0 1 1.472 1.216l1.282 13.439a1.356 1.356 0 0 1-1.216 1.472l-15.231 1.452a1.354 1.354 0 0 1-1.472-1.215l-1.281-13.44a1.354 1.354 0 0 1 1.215-1.471l11.199-1.069-.512-5.375a5.406 5.406 0 0 1 4.863-5.889zM131.964 271.975a5.407 5.407 0 0 1 5.889 4.863l.512 5.375-3.583.342-.513-5.376a1.804 1.804 0 0 0-1.963-1.621l-3.584.342a1.804 1.804 0 0 0-1.621 1.963l.513 5.376.448-.043a1.354 1.354 0 0 1 1.472 1.216l1.282 13.439a1.356 1.356 0 0 1-1.216 1.472l-15.231 1.452a1.356 1.356 0 0 1-1.472-1.215l-1.282-13.439a1.357 1.357 0 0 1 1.216-1.473l11.199-1.068-.512-5.375a5.407 5.407 0 0 1 4.863-5.889zM124.6 83c2.977 0 5.4 2.423 5.4 5.4v5.4h-3.6v-5.4c0-.992-.808-1.8-1.8-1.8H121c-.992 0-1.8.808-1.8 1.8v5.4h.45c.742 0 1.35.608 1.35 1.35v13.5c0 .742-.608 1.35-1.35 1.35h-15.3a1.353 1.353 0 0 1-1.35-1.35v-13.5c0-.742.608-1.35 1.35-1.35h11.25v-5.4c0-2.977 2.423-5.4 5.4-5.4z"})),s||(s=d.createElement("defs",null,d.createElement("clipPath",{id:"c"},d.createElement("path",{fill:"#fff",d:"m79.808 282 79.512 23.807-23.807 79.513L56 361.512z"})),d.createElement("clipPath",{id:"d"},d.createElement("path",{fill:"#fff",d:"m78.808 93 79.512 23.807-23.807 79.513L55 172.512z"})),d.createElement("clipPath",{id:"e"},d.createElement("path",{fill:"#fff",d:"M351 72.318 387.537 44l28.318 36.537-36.537 28.318z"})),d.createElement("radialGradient",{id:"b",cx:0,cy:0,r:1,gradientTransform:"matrix(184.866 0 0 454.662 258 220.5)",gradientUnits:"userSpaceOnUse"},d.createElement("stop",{offset:.484,stopColor:"#4959EC",stopOpacity:0}),d.createElement("stop",{offset:.865,stopColor:"#4959EC",stopOpacity:.05}),d.createElement("stop",{offset:1,stopColor:"#4959EC",stopOpacity:.1})),d.createElement("filter",{id:"a",width:427.223,height:224.301,x:44.388,y:106.852,colorInterpolationFilters:"sRGB",filterUnits:"userSpaceOnUse"},d.createElement("feFlood",{floodOpacity:0,result:"BackgroundImageFix"}),d.createElement("feBlend",{in:"SourceGraphic",in2:"BackgroundImageFix",result:"shape"}),d.createElement("feGaussianBlur",{result:"effect1_foregroundBlur_1664_4134",stdDeviation:10.469})))))}},602:(l,t,e)=>{e.d(t,{A:()=>g});var a,q,m,h,r,c,v,n,i,o,s,d,z,f,p,V,u,M,E=e(758);function k(){return k=Object.assign?Object.assign.bind():function(l){for(var t=1;t{let{title:t,titleId:e,...g}=l;return E.createElement("svg",k({xmlns:"http://www.w3.org/2000/svg",width:539,height:434,fill:"none",viewBox:"0 0 539 434","aria-labelledby":e},g),t?E.createElement("title",{id:e},t):null,a||(a=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.5 429C367.233 429 457 339.233 457 228.5S367.233 28 256.5 28 56 117.767 56 228.5 145.767 429 256.5 429"})),q||(q=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 413.043c101.921 0 184.544-82.623 184.544-184.544 0-101.92-82.623-184.543-184.544-184.543-101.92 0-184.543 82.623-184.543 184.543 0 101.921 82.623 184.544 184.543 184.544"})),m||(m=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 397.082c93.104 0 168.581-75.477 168.581-168.581 0-93.105-75.477-168.581-168.581-168.581-93.105 0-168.581 75.476-168.581 168.581S163.396 397.082 256.5 397.082"})),h||(h=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.5 381.125c84.292 0 152.625-68.333 152.625-152.625S340.792 75.876 256.5 75.876 103.876 144.208 103.876 228.5 172.208 381.125 256.5 381.125"})),r||(r=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 365.162c75.476 0 136.661-61.185 136.661-136.661 0-75.477-61.185-136.662-136.661-136.662-75.477 0-136.662 61.185-136.662 136.662 0 75.476 61.185 136.661 136.662 136.661"})),c||(c=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 349.203c66.664 0 120.705-54.041 120.705-120.705 0-66.663-54.041-120.705-120.705-120.705s-120.705 54.042-120.705 120.705c0 66.664 54.041 120.705 120.705 120.705"})),v||(v=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.5 333.243c57.848 0 104.743-46.895 104.743-104.743S314.348 123.758 256.5 123.758 151.758 170.653 151.758 228.5 198.653 333.243 256.5 333.243"})),n||(n=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 317.285c49.035 0 88.786-39.751 88.786-88.786s-39.751-88.786-88.786-88.786-88.786 39.751-88.786 88.786 39.751 88.786 88.786 88.786"})),i||(i=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 301.323c40.22 0 72.824-32.604 72.824-72.824s-32.604-72.823-72.824-72.823-72.823 32.604-72.823 72.823c0 40.22 32.604 72.824 72.823 72.824"})),o||(o=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 285.366c31.406 0 56.867-25.461 56.867-56.867 0-31.407-25.461-56.867-56.867-56.867-31.407 0-56.867 25.46-56.867 56.867s25.46 56.867 56.867 56.867"})),s||(s=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.499 269.403c22.591 0 40.904-18.313 40.904-40.904s-18.313-40.904-40.904-40.904-40.904 18.313-40.904 40.904 18.313 40.904 40.904 40.904"})),d||(d=E.createElement("path",{stroke:"#fff",strokeLinecap:"round",strokeLinejoin:"round",strokeOpacity:.09,strokeWidth:1.397,d:"M256.501 253.448c13.778 0 24.947-11.169 24.947-24.947 0-13.779-11.169-24.948-24.947-24.948-13.779 0-24.948 11.169-24.948 24.948s11.169 24.947 24.948 24.947"})),z||(z=E.createElement("path",{fill:"#fff",d:"M358 384v-65.022L367.839 307h57.322L435 318.978V384zm10.267-64.167h56.466l-3.636-4.277h-49.194zm41.922 32.084-8.983 8.983 6.202 6.203 15.186-15.186-15.186-15.186-6.202 6.202zm-27.164 0 8.983-8.984-6.202-6.202-15.187 15.186 15.187 15.186 6.202-6.203zM76.474 112.783l15.802-47.289 10.066-6.32 41.689 13.93 4.244 11.102-15.801 47.289zm23.06-44.172 41.067 13.723-1.605-3.995-35.778-11.955zm22.692 33.521-8.716 4.35 3.004 6.019 14.734-7.354-7.353-14.735-6.019 3.004zm-19.755-6.6 8.716-4.351-3.003-6.019-14.735 7.354 7.354 14.735 6.018-3.004zM132.873 359.49l-7.485-22.477 2.022-5.273 19.814-6.599 4.78 3.008 7.486 22.476zm-3.838-23.363 19.519-6.5-1.749-1.061-17.005 5.664zm18.185 6.264-2.071 4.14 2.858 1.43 3.501-6.998-6.998-3.501-1.43 2.858zm-9.39 3.127 2.071-4.139-2.858-1.43-3.501 6.998 6.998 3.501 1.43-2.859zM342.576 115.529l2.006-23.604 3.941-4.045 20.81 1.767 3.202 4.652-2.005 23.605zm5.706-22.977 20.5 1.741-1.189-1.665-17.859-1.517zm14.23 12.94-3.538 2.984 2.06 2.443 5.982-5.045-5.045-5.981-2.443 2.06zm-9.861-.838 3.538-2.984-2.06-2.443-5.982 5.044 5.045 5.982 2.443-2.061z"})),f||(f=E.createElement("g",{filter:"url(#a)"},E.createElement("path",{fill:"url(#b)",d:"M65.325 220.5c0-52.11 42.146-96.863 94.065-92.404 33.174 2.85 68.97 5.129 98.61 5.129s65.436-2.279 98.61-5.129c51.919-4.459 94.065 40.294 94.065 92.404 0 51.285-42.696 94.881-93.667 89.22-33.265-3.695-69.217-6.656-99.008-6.656s-65.743 2.961-99.008 6.656c-50.972 5.661-93.667-37.935-93.667-89.22"}))),p||(p=E.createElement("rect",{width:132,height:132,x:193.5,y:162.5,fill:"#2D2D38",rx:15.5})),V||(V=E.createElement("rect",{width:132,height:132,x:193.5,y:162.5,stroke:"#6CECAC",rx:15.5})),u||(u=E.createElement("path",{fill:"#6CECAC",d:"M301 208h-6.15l-11.421 19.329V208h-5.858v41h5.858v-12.593l2.635-4.393L294.85 249H301l-11.421-22.257zm-41 41h-11.714v-41H260a11.743 11.743 0 0 1 11.714 11.714v17.572A11.74 11.74 0 0 1 260 249m-5.857-5.857H260a5.876 5.876 0 0 0 5.857-5.857v-17.572a5.87 5.87 0 0 0-5.857-5.857h-5.857zM236.571 249H219v-5.857h17.571v-11.714h-11.714a5.876 5.876 0 0 1-5.857-5.858v-11.714a5.87 5.87 0 0 1 5.857-5.857h17.572v5.857h-17.572v11.714h11.714a5.88 5.88 0 0 1 5.858 5.858v11.714a5.876 5.876 0 0 1-5.858 5.857"})),M||(M=E.createElement("defs",null,E.createElement("radialGradient",{id:"b",cx:0,cy:0,r:1,gradientTransform:"matrix(184.866 0 0 454.662 258 220.5)",gradientUnits:"userSpaceOnUse"},E.createElement("stop",{offset:.484,stopColor:"#4959EC",stopOpacity:0}),E.createElement("stop",{offset:.865,stopColor:"#4959EC",stopOpacity:.05}),E.createElement("stop",{offset:1,stopColor:"#4959EC",stopOpacity:.1})),E.createElement("filter",{id:"a",width:427.223,height:224.301,x:44.388,y:106.852,colorInterpolationFilters:"sRGB",filterUnits:"userSpaceOnUse"},E.createElement("feFlood",{floodOpacity:0,result:"BackgroundImageFix"}),E.createElement("feBlend",{in:"SourceGraphic",in2:"BackgroundImageFix",result:"shape"}),E.createElement("feGaussianBlur",{result:"effect1_foregroundBlur_1664_4209",stdDeviation:10.469})))))}},8203:(l,t,e)=>{e.r(t),e.d(t,{default:()=>f});var a=e(3526),q=e(4475),m=e(1299),h=e(4622),r=e(48);const c={features:"features_t9lD",featureSvg:"featureSvg_GfXr"};var v=e(6070);const n=[{title:"Robust framework",Svg:e(3982).A,description:(0,v.jsx)(v.Fragment,{children:"Quickly launch and configure nodes in our peer-to-peer network with user-friendly tools that minimize the complexity and technical challenges."})},{title:"Comprehensive SDKs",Svg:e(602).A,description:(0,v.jsxs)(v.Fragment,{children:[" ","Jumpstart your decentralized apps with our SDKs, designed for easy integration into our robust peer-to-peer network."]})},{title:"Open Source project",Svg:e(1724).A,description:(0,v.jsx)(v.Fragment,{children:"Contribute your code to help forge a platform that leads the way in innovation in the decentralized space"})}];function i(l){let{title:t,Svg:e,description:q}=l;return(0,v.jsxs)("div",{className:(0,a.A)("col col--4"),children:[(0,v.jsx)("div",{className:"text--center",children:(0,v.jsx)(e,{className:c.featureSvg,role:"img"})}),(0,v.jsxs)("div",{className:"text--center padding-horiz--md",children:[(0,v.jsx)(r.A,{as:"h3",children:t}),(0,v.jsx)("p",{children:q})]})]})}function o(){return(0,v.jsx)("section",{className:c.features,children:(0,v.jsx)("div",{className:"container",children:(0,v.jsx)("div",{className:"row",children:n.map(((l,t)=>(0,v.jsx)(i,{...l},t)))})})})}const s={heroBanner:"heroBanner_qdFl",headerContainer:"headerContainer_Dcc3",buttons:"buttons_AeoN",heroSubtitle:"heroSubtitle_jFu1",textPadding:"textPadding_Bwvp",bodyContainer:"bodyContainer_uay2"};function d(){const{siteConfig:l}=(0,m.A)();return(0,v.jsx)("header",{className:(0,a.A)("",s.heroBanner),children:(0,v.jsx)("div",{className:"container",children:(0,v.jsx)(r.A,{as:"h1",className:"hero__title",children:l.title})})})}function z(){return(0,v.jsxs)("header",{className:s.features,children:[(0,v.jsx)("div",{className:s.bodyContainer,children:(0,v.jsx)("div",{className:s.textPadding,children:"You're about to dive into the Calimero Network, a place designed to shake up the digital world by prioritizing what matters most: privacy, data control, and freedom in your creations. Calimero offers a foundation for those committed to building the new digital landscape where privacy and user autonomy are non-negotiable. It's a shift towards an ecosystem where applications are built on principles of decentralization, ensuring users retain control over their digital footprint."})}),(0,v.jsx)("div",{className:s.buttons,children:(0,v.jsx)(q.A,{className:"button button--secondary button--lg",to:"/explore/intro",children:"Dive into privacy preserving technology"})})]})}function f(){const{siteConfig:l}=(0,m.A)();return(0,v.jsxs)(h.A,{title:`Hello from ${l.title}`,description:"Description will go into a meta tag in ",children:[(0,v.jsx)(d,{}),(0,v.jsxs)("main",{children:[(0,v.jsx)(z,{}),(0,v.jsx)(o,{})]})]})}}}]); \ No newline at end of file diff --git a/assets/js/22e91f41.468045bf.js b/assets/js/22e91f41.b5ddddd4.js similarity index 89% rename from assets/js/22e91f41.468045bf.js rename to assets/js/22e91f41.b5ddddd4.js index 90f97171..f44c0c39 100644 --- a/assets/js/22e91f41.468045bf.js +++ b/assets/js/22e91f41.b5ddddd4.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[317],{1647:(e,o,r)=>{r.r(o),r.d(o,{assets:()=>a,contentTitle:()=>i,default:()=>u,frontMatter:()=>n,metadata:()=>c,toc:()=>p});var s=r(6070),t=r(5710);const n={id:"rock-paper-scissors",title:"Rock Paper Scissors"},i=void 0,c={id:"explore/awesome-projects/rock-paper-scissors",title:"Rock Paper Scissors",description:"A popular game we all know and love, but this time played online and enforcing",source:"@site/docs/01-explore/06-awesome-projects/02-rock-paper-scissors.mdx",sourceDirName:"01-explore/06-awesome-projects",slug:"/explore/awesome-projects/rock-paper-scissors",permalink:"/explore/awesome-projects/rock-paper-scissors",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"rock-paper-scissors",title:"Rock Paper Scissors"},sidebar:"tutorialSidebar",previous:{title:"Only Peers",permalink:"/explore/awesome-projects/only-peers"},next:{title:"Terminology",permalink:"/learn/terminology"}},a={},p=[];function l(e){const o={a:"a",p:"p",...(0,t.R)(),...e.components};return(0,s.jsxs)(o.p,{children:["A popular game we all know and love, but this time played online and enforcing\ncomplete security using the commit - reveal scheme. After you pick your choice\nof either rock, paper or scissors, you encrypt your choice with a password. This\nensures the other player can\u2019t see your choice. After your opponent has also\ndecided, it is time to reveal your password and determine the winner. You cannot\nchange your mind between choosing and revealing because your choice is locked\nwith the special password. This prevents any bad actors from changing their\nminds in the middle of the game.Have fun with a classic game that is completely\nfair and private! Explore the source code on\n",(0,s.jsx)(o.a,{href:"https://github.com/calimero-network/rock-paper-scissors-ui",children:"GitHub repository"})]})}function u(e={}){const{wrapper:o}={...(0,t.R)(),...e.components};return o?(0,s.jsx)(o,{...e,children:(0,s.jsx)(l,{...e})}):l(e)}},5710:(e,o,r)=>{r.d(o,{R:()=>i,x:()=>c});var s=r(758);const t={},n=s.createContext(t);function i(e){const o=s.useContext(n);return s.useMemo((function(){return"function"==typeof e?e(o):{...o,...e}}),[o,e])}function c(e){let o;return o=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:i(e.components),s.createElement(n.Provider,{value:o},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[317],{1647:(e,o,r)=>{r.r(o),r.d(o,{assets:()=>a,contentTitle:()=>i,default:()=>u,frontMatter:()=>n,metadata:()=>c,toc:()=>p});var s=r(6070),t=r(8355);const n={id:"rock-paper-scissors",title:"Rock Paper Scissors"},i=void 0,c={id:"explore/awesome-projects/rock-paper-scissors",title:"Rock Paper Scissors",description:"A popular game we all know and love, but this time played online and enforcing",source:"@site/docs/01-explore/06-awesome-projects/02-rock-paper-scissors.mdx",sourceDirName:"01-explore/06-awesome-projects",slug:"/explore/awesome-projects/rock-paper-scissors",permalink:"/explore/awesome-projects/rock-paper-scissors",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"rock-paper-scissors",title:"Rock Paper Scissors"},sidebar:"tutorialSidebar",previous:{title:"Only Peers",permalink:"/explore/awesome-projects/only-peers"},next:{title:"Terminology",permalink:"/learn/terminology"}},a={},p=[];function l(e){const o={a:"a",p:"p",...(0,t.R)(),...e.components};return(0,s.jsxs)(o.p,{children:["A popular game we all know and love, but this time played online and enforcing\ncomplete security using the commit - reveal scheme. After you pick your choice\nof either rock, paper or scissors, you encrypt your choice with a password. This\nensures the other player can\u2019t see your choice. After your opponent has also\ndecided, it is time to reveal your password and determine the winner. You cannot\nchange your mind between choosing and revealing because your choice is locked\nwith the special password. This prevents any bad actors from changing their\nminds in the middle of the game.Have fun with a classic game that is completely\nfair and private! Explore the source code on\n",(0,s.jsx)(o.a,{href:"https://github.com/calimero-network/rock-paper-scissors-ui",children:"GitHub repository"})]})}function u(e={}){const{wrapper:o}={...(0,t.R)(),...e.components};return o?(0,s.jsx)(o,{...e,children:(0,s.jsx)(l,{...e})}):l(e)}},8355:(e,o,r)=>{r.d(o,{R:()=>i,x:()=>c});var s=r(758);const t={},n=s.createContext(t);function i(e){const o=s.useContext(n);return s.useMemo((function(){return"function"==typeof e?e(o):{...o,...e}}),[o,e])}function c(e){let o;return o=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:i(e.components),s.createElement(n.Provider,{value:o},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/2966.8ac87274.js b/assets/js/2966.8ac87274.js deleted file mode 100644 index e8915322..00000000 --- a/assets/js/2966.8ac87274.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2966],{2966:(c,s,a)=>{a.r(s),a.d(s,{DocSearchModal:()=>e.a1});var e=a(5992)}}]); \ No newline at end of file diff --git a/assets/js/3114.32f7c34d.js b/assets/js/2995.275b0081.js similarity index 62% rename from assets/js/3114.32f7c34d.js rename to assets/js/2995.275b0081.js index 4067b783..e6f58be4 100644 --- a/assets/js/3114.32f7c34d.js +++ b/assets/js/2995.275b0081.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3114],{3114:(s,c,e)=>{e.r(c)}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2995],{2995:(s,c,e)=>{e.r(c)}}]); \ No newline at end of file diff --git a/assets/js/2e1d06d3.cd9d3cb5.js b/assets/js/2e1d06d3.7ef5c9cd.js similarity index 98% rename from assets/js/2e1d06d3.cd9d3cb5.js rename to assets/js/2e1d06d3.7ef5c9cd.js index 76b6b8ae..d8ff5003 100644 --- a/assets/js/2e1d06d3.cd9d3cb5.js +++ b/assets/js/2e1d06d3.7ef5c9cd.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9502],{8582:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>r,contentTitle:()=>a,default:()=>h,frontMatter:()=>l,metadata:()=>s,toc:()=>d});var i=t(6070),o=t(5710);const l={id:"dev-mode",title:"Dev Mode"},a="Using Dev Mode in meroctl CLI",s={id:"build/dev-mode",title:"Dev Mode",description:"Overview",source:"@site/docs/04-build/04-dev-mode.mdx",sourceDirName:"04-build",slug:"/build/dev-mode",permalink:"/build/dev-mode",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:4,frontMatter:{id:"dev-mode",title:"Dev Mode"},sidebar:"tutorialSidebar",previous:{title:"Publish App",permalink:"/build/publish-app"},next:{title:"GitHub",permalink:"/contribute/github"}},r={},d=[{value:"Overview",id:"overview",level:2},{value:"Why Use Dev Mode?",id:"why-use-dev-mode",level:2},{value:"Prerequisites",id:"prerequisites",level:2},{value:"How to Use Dev Mode",id:"how-to-use-dev-mode",level:2},{value:"Parameters:",id:"parameters",level:3},{value:"Automatic Updates",id:"automatic-updates",level:3},{value:"Other useful commands",id:"other-useful-commands",level:3},{value:"From development to Publication",id:"from-development-to-publication",level:3}];function c(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.header,{children:(0,i.jsx)(n.h1,{id:"using-dev-mode-in-meroctl-cli",children:"Using Dev Mode in meroctl CLI"})}),"\n",(0,i.jsx)(n.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsx)(n.p,{children:'The meroctl CLI provides a powerful feature called "dev mode" that allows\ndevelopers to test their applications locally before publishing them to the\nnetwork. This mode is particularly useful during the development and testing\nphases of your application.'}),"\n",(0,i.jsx)(n.h2,{id:"why-use-dev-mode",children:"Why Use Dev Mode?"}),"\n",(0,i.jsx)(n.p,{children:"Dev mode offers several advantages:"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Local Testing"}),": Test your application on your local machine without\nneeding to publish it to the network."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Quick Iterations"}),": Make changes to your application and immediately test\nthem without going through the full publication process."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Context Creation"}),": Automatically create a context and link it to your\nlocal application."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Hot Reload-like Functionality"}),': Any changes to the binary will\nautomatically reflect in the context, eliminating the need to "upload" the\napp again after every change.']}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,i.jsxs)(n.p,{children:["Before using dev mode, ensure you have a node and a coordinator node running.\nThis should be done in a separate terminal window. For more information, see the\n",(0,i.jsx)(n.a,{href:"/getting-started/setup",children:"Setup guide"}),"."]}),"\n",(0,i.jsx)(n.h2,{id:"how-to-use-dev-mode",children:"How to Use Dev Mode"}),"\n",(0,i.jsx)(n.p,{children:"To list all supported commands, run the following command:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- help\n"})}),"\n",(0,i.jsx)(n.p,{children:"Supported commands:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"init"})," Initialize node configuration"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"config"})," Configure the node"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"run"})," Run a node"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"context"})," Manage contexts"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"app"})," Manage applications"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"help"})," Print this message or the help of the given subcommand(s)"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Here's the basic syntax:"}),"\n",(0,i.jsx)(n.p,{children:"All commands share the same prefix:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --home --node-name \n"})}),"\n",(0,i.jsx)(n.h3,{id:"parameters",children:"Parameters:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"--home"}),": Specifies the path to the home directory. ( In our example we are\nusing ",(0,i.jsx)(n.code,{children:"data"})," as the home directory)"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"--node-name"}),": Specifies the name of the node."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"--path"}),": Specifies the absolute path to your WASM file."]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Create dev context using installed app"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --home --node-name context create --watch \n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:'$ cargo run -p meroctl -- --home data --node-name node1 context create --watch ./path/to/binary.wasm\nApplication `` installed!\nContext `` created!\nContext{contextId} -> Application{appId}\n(i) Watching for changes to "./path/to/binary.wasm"\n'})}),"\n",(0,i.jsx)(n.p,{children:"Invite coordinator or other local nodes to participate in the context"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --node-name coordinator --home data context join --context-id contextId\n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"Context sucesfully joined\n"})}),"\n",(0,i.jsx)(n.p,{children:"Create context command will:"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"Install your application locally."}),"\n",(0,i.jsx)(n.li,{children:"Create a new context."}),"\n",(0,i.jsx)(n.li,{children:"Link the context to your local application."}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"automatic-updates",children:"Automatic Updates"}),"\n",(0,i.jsx)(n.p,{children:'One of the key benefits of dev mode is its ability to automatically reflect\nchanges in your application. When you modify and recompile your WASM binary,\nthese changes are immediately available in the context without requiring you to\n"upload" or reinstall the application. This feature provides a seamless\ndevelopment experience, similar to "hot reload" functionality in other\ndevelopment environments.'}),"\n",(0,i.jsx)(n.h3,{id:"other-useful-commands",children:"Other useful commands"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"List existing contexts"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ cargo run -p meroctl -- --home data --node-name node1 context ls\n"})}),"\n",(0,i.jsxs)(n.ol,{start:"2",children:["\n",(0,i.jsx)(n.li,{children:"Create a context for a published application:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ cargo run -p meroctl -- --home data --node-name node1 context create --application-id \n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"Context `contextId` created!\nContext{contextId} -> Application{appId}\n"})}),"\n",(0,i.jsx)(n.h3,{id:"from-development-to-publication",children:"From development to Publication"}),"\n",(0,i.jsx)(n.p,{children:"When you're ready to move from local development to publishing your application:"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Test your application thoroughly using dev mode."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"When satisfied with your application's performance, follow the steps in the\nPublish App guide to publish your application to the network."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"After publication, you can create contexts for your published application\nusing the --application-id flag instead of dev mode."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Install the local app on node for debugging"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --home --node-name app install \u2013-path \n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"Application installed successfully. Application ID: \n"})})]})}function h(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>s});var i=t(758);const o={},l=i.createContext(o);function a(e){const n=i.useContext(l);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:a(e.components),i.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9502],{8582:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>r,contentTitle:()=>a,default:()=>h,frontMatter:()=>l,metadata:()=>s,toc:()=>d});var i=t(6070),o=t(8355);const l={id:"dev-mode",title:"Dev Mode"},a="Using Dev Mode in meroctl CLI",s={id:"build/dev-mode",title:"Dev Mode",description:"Overview",source:"@site/docs/04-build/04-dev-mode.mdx",sourceDirName:"04-build",slug:"/build/dev-mode",permalink:"/build/dev-mode",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:4,frontMatter:{id:"dev-mode",title:"Dev Mode"},sidebar:"tutorialSidebar",previous:{title:"Publish App",permalink:"/build/publish-app"},next:{title:"GitHub",permalink:"/contribute/github"}},r={},d=[{value:"Overview",id:"overview",level:2},{value:"Why Use Dev Mode?",id:"why-use-dev-mode",level:2},{value:"Prerequisites",id:"prerequisites",level:2},{value:"How to Use Dev Mode",id:"how-to-use-dev-mode",level:2},{value:"Parameters:",id:"parameters",level:3},{value:"Automatic Updates",id:"automatic-updates",level:3},{value:"Other useful commands",id:"other-useful-commands",level:3},{value:"From development to Publication",id:"from-development-to-publication",level:3}];function c(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.header,{children:(0,i.jsx)(n.h1,{id:"using-dev-mode-in-meroctl-cli",children:"Using Dev Mode in meroctl CLI"})}),"\n",(0,i.jsx)(n.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsx)(n.p,{children:'The meroctl CLI provides a powerful feature called "dev mode" that allows\ndevelopers to test their applications locally before publishing them to the\nnetwork. This mode is particularly useful during the development and testing\nphases of your application.'}),"\n",(0,i.jsx)(n.h2,{id:"why-use-dev-mode",children:"Why Use Dev Mode?"}),"\n",(0,i.jsx)(n.p,{children:"Dev mode offers several advantages:"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Local Testing"}),": Test your application on your local machine without\nneeding to publish it to the network."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Quick Iterations"}),": Make changes to your application and immediately test\nthem without going through the full publication process."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Context Creation"}),": Automatically create a context and link it to your\nlocal application."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Hot Reload-like Functionality"}),': Any changes to the binary will\nautomatically reflect in the context, eliminating the need to "upload" the\napp again after every change.']}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,i.jsxs)(n.p,{children:["Before using dev mode, ensure you have a node and a coordinator node running.\nThis should be done in a separate terminal window. For more information, see the\n",(0,i.jsx)(n.a,{href:"/getting-started/setup",children:"Setup guide"}),"."]}),"\n",(0,i.jsx)(n.h2,{id:"how-to-use-dev-mode",children:"How to Use Dev Mode"}),"\n",(0,i.jsx)(n.p,{children:"To list all supported commands, run the following command:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- help\n"})}),"\n",(0,i.jsx)(n.p,{children:"Supported commands:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"init"})," Initialize node configuration"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"config"})," Configure the node"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"run"})," Run a node"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"context"})," Manage contexts"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"app"})," Manage applications"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"help"})," Print this message or the help of the given subcommand(s)"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Here's the basic syntax:"}),"\n",(0,i.jsx)(n.p,{children:"All commands share the same prefix:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --home --node-name \n"})}),"\n",(0,i.jsx)(n.h3,{id:"parameters",children:"Parameters:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"--home"}),": Specifies the path to the home directory. ( In our example we are\nusing ",(0,i.jsx)(n.code,{children:"data"})," as the home directory)"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"--node-name"}),": Specifies the name of the node."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"--path"}),": Specifies the absolute path to your WASM file."]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Create dev context using installed app"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --home --node-name context create --watch \n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:'$ cargo run -p meroctl -- --home data --node-name node1 context create --watch ./path/to/binary.wasm\nApplication `` installed!\nContext `` created!\nContext{contextId} -> Application{appId}\n(i) Watching for changes to "./path/to/binary.wasm"\n'})}),"\n",(0,i.jsx)(n.p,{children:"Invite coordinator or other local nodes to participate in the context"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --node-name coordinator --home data context join --context-id contextId\n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"Context sucesfully joined\n"})}),"\n",(0,i.jsx)(n.p,{children:"Create context command will:"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"Install your application locally."}),"\n",(0,i.jsx)(n.li,{children:"Create a new context."}),"\n",(0,i.jsx)(n.li,{children:"Link the context to your local application."}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"automatic-updates",children:"Automatic Updates"}),"\n",(0,i.jsx)(n.p,{children:'One of the key benefits of dev mode is its ability to automatically reflect\nchanges in your application. When you modify and recompile your WASM binary,\nthese changes are immediately available in the context without requiring you to\n"upload" or reinstall the application. This feature provides a seamless\ndevelopment experience, similar to "hot reload" functionality in other\ndevelopment environments.'}),"\n",(0,i.jsx)(n.h3,{id:"other-useful-commands",children:"Other useful commands"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"List existing contexts"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ cargo run -p meroctl -- --home data --node-name node1 context ls\n"})}),"\n",(0,i.jsxs)(n.ol,{start:"2",children:["\n",(0,i.jsx)(n.li,{children:"Create a context for a published application:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ cargo run -p meroctl -- --home data --node-name node1 context create --application-id \n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"Context `contextId` created!\nContext{contextId} -> Application{appId}\n"})}),"\n",(0,i.jsx)(n.h3,{id:"from-development-to-publication",children:"From development to Publication"}),"\n",(0,i.jsx)(n.p,{children:"When you're ready to move from local development to publishing your application:"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Test your application thoroughly using dev mode."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"When satisfied with your application's performance, follow the steps in the\nPublish App guide to publish your application to the network."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"After publication, you can create contexts for your published application\nusing the --application-id flag instead of dev mode."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Install the local app on node for debugging"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --home --node-name app install \u2013-path \n"})}),"\n",(0,i.jsx)(n.p,{children:"Output"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"Application installed successfully. Application ID: \n"})})]})}function h(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>s});var i=t(758);const o={},l=i.createContext(o);function a(e){const n=i.useContext(l);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:a(e.components),i.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3130.8db77545.js b/assets/js/3130.8db77545.js new file mode 100644 index 00000000..98cbf7f8 --- /dev/null +++ b/assets/js/3130.8db77545.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3130],{9476:(e,t,n)=>{n.d(t,{A:()=>a});n(758);var i=n(3526),o=n(2641),s=n(48),r=n(6070);function a(e){let{className:t}=e;return(0,r.jsx)("main",{className:(0,i.A)("container margin-vert--xl",t),children:(0,r.jsx)("div",{className:"row",children:(0,r.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,r.jsx)(s.A,{as:"h1",className:"hero__title",children:(0,r.jsx)(o.A,{id:"theme.NotFound.title",description:"The title of the 404 page",children:"Page Not Found"})}),(0,r.jsx)("p",{children:(0,r.jsx)(o.A,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page",children:"We could not find what you were looking for."})}),(0,r.jsx)("p",{children:(0,r.jsx)(o.A,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page",children:"Please contact the owner of the site that linked you to the original URL and let them know their link is broken."})})]})})})}},3130:(e,t,n)=>{n.r(t),n.d(t,{default:()=>d});n(758);var i=n(2641),o=n(5212),s=n(4622),r=n(9476),a=n(6070);function d(){const e=(0,i.T)({id:"theme.NotFound.title",message:"Page Not Found"});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.be,{title:e}),(0,a.jsx)(s.A,{children:(0,a.jsx)(r.A,{})})]})}}}]); \ No newline at end of file diff --git a/assets/js/3b38d041.acbfd09c.js b/assets/js/3b38d041.0656ae80.js similarity index 99% rename from assets/js/3b38d041.acbfd09c.js rename to assets/js/3b38d041.0656ae80.js index c0a32c80..ef82784b 100644 --- a/assets/js/3b38d041.acbfd09c.js +++ b/assets/js/3b38d041.0656ae80.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8048],{4881:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var i=t(6070),r=t(5710);const s={id:"protocol-rs-sdk",title:"Rust Protocol SDK"},o=void 0,a={id:"build/protocol-sdks/protocol-rs-sdk",title:"Rust Protocol SDK",description:"Getting Started with Calimero SDK for Rust",source:"@site/docs/04-build/01-protocol-sdks/02-protocol-rs-sdk.mdx",sourceDirName:"04-build/01-protocol-sdks",slug:"/build/protocol-sdks/protocol-rs-sdk",permalink:"/build/protocol-sdks/protocol-rs-sdk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"protocol-rs-sdk",title:"Rust Protocol SDK"},sidebar:"tutorialSidebar",previous:{title:"Protocol SDK",permalink:"/build/protocol-sdks/protocol-sdk"},next:{title:"TypeScript Client SDK",permalink:"/build/client-sdks/client-ts-sdk"}},l={},c=[{value:"Getting Started with Calimero SDK for Rust",id:"getting-started-with-calimero-sdk-for-rust",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Setting Up Your Project",id:"setting-up-your-project",level:3},{value:"Writing Your Application",id:"writing-your-application",level:3},{value:"Building Your Application",id:"building-your-application",level:3},{value:"Deploying Your Application",id:"deploying-your-application",level:3},{value:"Writing Efficient Code with Calimero SDK",id:"writing-efficient-code-with-calimero-sdk",level:3},{value:"Handling Errors with Calimero SDK",id:"handling-errors-with-calimero-sdk",level:3},{value:"Emitting Events with Calimero SDK",id:"emitting-events-with-calimero-sdk",level:3},{value:"Ensuring Atomicity and Event Reliability in Calimero Applications",id:"ensuring-atomicity-and-event-reliability-in-calimero-applications",level:3},{value:"Atomic State Changes",id:"atomic-state-changes",level:4},{value:"Reliable Event Emission",id:"reliable-event-emission",level:4},{value:"Local-First Efficiency: No Network Overhead for Read-Only Calls",id:"local-first-efficiency-no-network-overhead-for-read-only-calls",level:3},{value:"Conclusion",id:"conclusion",level:3}];function d(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",pre:"pre",...(0,r.R)(),...e.components},{Details:t}=n;return t||function(e,n){throw new Error("Expected "+(n?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}("Details",!0),(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"getting-started-with-calimero-sdk-for-rust",children:"Getting Started with Calimero SDK for Rust"}),"\n",(0,i.jsx)(n.p,{children:"The Calimero SDK for Rust empowers developers to build applications that compile\nto WebAssembly (Wasm) and run securely within the Calimero virtual machine (VM).\nThis guide will walk you through setting up a Rust project using the Calimero\nSDK, writing an application, and preparing it for deployment."}),"\n",(0,i.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,i.jsxs)(n.p,{children:["Before you begin, ensure you have Rust installed on your system. If not, follow\nthe official Rust installation guide for your platform:\n",(0,i.jsx)(n.a,{href:"https://www.rust-lang.org/tools/install",children:"Rust Installation Guide"}),"."]}),"\n",(0,i.jsxs)(n.p,{children:["You should ensure you have the ",(0,i.jsx)(n.code,{children:"wasm32-unknown-unknown"})," target installed. Run\nthe following command in your terminal to install the target:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"rustup target add wasm32-unknown-unknown\n"})}),"\n",(0,i.jsx)(n.h3,{id:"setting-up-your-project",children:"Setting Up Your Project"}),"\n",(0,i.jsx)(n.p,{children:"To create a new project, initialize a Rust library project using Cargo. Run the\nfollowing command in your terminal:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo new --lib kv-store\n"})}),"\n",(0,i.jsx)(n.p,{children:"You should have a tree that looks like this:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ tree kv-store\nkv-store\n\u251c\u2500\u2500 Cargo.toml\n\u2514\u2500\u2500 src\n \u2514\u2500\u2500 lib.rs\n\n2 directories, 2 files\n"})}),"\n",(0,i.jsxs)(n.p,{children:["At this point, we can ",(0,i.jsx)(n.code,{children:"cd"})," into the ",(0,i.jsx)(n.code,{children:"kv-store"})," directory:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cd kv-store\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Next, you need to specify the crate-type as ",(0,i.jsx)(n.code,{children:"cdylib"})," in your ",(0,i.jsx)(n.code,{children:"Cargo.toml"})," file\nto generate a dynamic library that can be compiled to Wasm:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml"',children:'[lib]\ncrate-type = ["cdylib"]\n'})}),"\n",(0,i.jsxs)(n.p,{children:["You can now configure your project to use the Calimero SDK by adding it as a\ndependency in your ",(0,i.jsx)(n.code,{children:"Cargo.toml"})," file:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml"',children:'[dependencies]\ncalimero-sdk = { git = "https://github.com/calimero-network/core" }\n'})}),"\n",(0,i.jsx)(n.p,{children:"Then, we need to specify a custom build profile for the most compact Wasm\noutput:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml"',children:'[profile.app-release]\ninherits = "release"\ncodegen-units = 1\nopt-level = "z"\nlto = true\ndebug = false\npanic = "abort"\noverflow-checks = true\n'})}),"\n",(0,i.jsxs)(t,{children:[(0,i.jsxs)("summary",{children:[" Your ",(0,i.jsx)(n.code,{children:"Cargo.toml"})," file should now look like this "]}),(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml" showLineNumbers',children:'[package]\nname = "kv-store"\nversion = "0.1.0"\nedition = "2021"\n\n# highlight-start\n[lib]\ncrate-type = ["cdylib"]\n# highlight-end\n\n# highlight-start\n[dependencies]\ncalimero-sdk = { git = "https://github.com/calimero-network/core" }\n# highlight-end\n\n# highlight-start\n[profile.app-release]\ninherits = "release"\ncodegen-units = 1\nopt-level = "z"\nlto = true\ndebug = false\npanic = "abort"\noverflow-checks = true\n# highlight-end\n'})})]}),"\n",(0,i.jsxs)(n.p,{children:["And finally, create a ",(0,i.jsx)(n.code,{children:"build.sh"})," script to compile your application into Wasm\nformat, for example:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="File: build.sh" showLineNumbers',children:'#!/bin/bash\nset -e\n\ncd "$(dirname $0)"\n\nTARGET="${CARGO_TARGET_DIR:-../../target}"\n\nrustup target add wasm32-unknown-unknown\n\ncargo build --target wasm32-unknown-unknown --profile app-release\n\nmkdir -p res\n\ncp $TARGET/wasm32-unknown-unknown/app-release/kv_store.wasm ./res/\n'})}),"\n",(0,i.jsxs)(n.p,{children:["You can optionally choose to install and use\n",(0,i.jsx)(n.a,{href:"https://github.com/WebAssembly/binaryen",children:(0,i.jsx)(n.code,{children:"wasm-opt"})}),", for an additional\noptimization step in the build script. This step is not required but can help\nreduce the size of the generated Wasm file:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="File: build.sh"',children:"if command -v wasm-opt > /dev/null; then\n wasm-opt -Oz ./res/kv_store.wasm -o ./res/kv_store.wasm\nfi\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Don't forget to make the ",(0,i.jsx)(n.code,{children:"build.sh"})," script executable:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"chmod +x build.sh\n"})}),"\n",(0,i.jsx)(n.p,{children:"At this point, your project structure should look like this:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ tree\n.\n\u251c\u2500\u2500 Cargo.toml\n\u251c\u2500\u2500 build.sh\n\u2514\u2500\u2500 src\n \u2514\u2500\u2500 lib.rs\n\n2 directories, 3 files\n"})}),"\n",(0,i.jsx)(n.h3,{id:"writing-your-application",children:"Writing Your Application"}),"\n",(0,i.jsxs)(n.p,{children:["Now, let's create a simple key-value store application using the Calimero SDK.\nStart by defining your application logic in ",(0,i.jsx)(n.code,{children:"lib.rs"}),":"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs" showLineNumbers',children:'use calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};\nuse calimero_sdk::app;\n\n#[app::state]\n#[derive(Default, BorshSerialize, BorshDeserialize)]\n#[borsh(crate = "calimero_sdk::borsh")]\nstruct KvStore {}\n\n#[app::logic]\nimpl KvStore {}\n'})}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"KvStore"})," struct represents the state of your application, which will be\nborsh-encoded in the app-scoped state partition on the node's storage. The\n",(0,i.jsx)(n.code,{children:"#[app::state]"})," attribute macro marks the struct as the application state,\npermitting its use by Calimero SDK."]}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"#[app::logic]"})," attribute macro marks the implementation block as the\napplication logic, allowing you to define the methods that interact with the\napplication state."]}),"\n",(0,i.jsxs)(n.p,{children:["Consider a method like ",(0,i.jsx)(n.code,{children:"get"})," that retrieves a value from the key-value store:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",children:"pub fn get(&self, key: &str) -> Option<&str> {\n // Snip...\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["The inputs must be deserializable from the transaction data, and the output must\nbe serializable to the response data. The ",(0,i.jsx)(n.code,{children:"Option"})," type is used to represent the\npossibility of the key not being present in the store."]}),"\n",(0,i.jsx)(n.p,{children:"And now, here's a complete example of a key-value store application:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs" showLineNumbers',children:'use std::collections::HashMap;\n\nuse calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};\nuse calimero_sdk::{app, env};\n\n#[app::state]\n#[derive(Default, BorshSerialize, BorshDeserialize)]\nstruct KvStore {\n entries: HashMap,\n}\n\n#[app::logic]\nimpl KvStore {\n // highlight-start\n pub fn set(&mut self, key: String, value: String) {\n env::log(&format!("Setting key: {:?} to value: {:?}", key, value));\n\n self.entries.insert(key, value);\n }\n // highlight-end\n\n // highlight-start\n pub fn entries(&self) -> &HashMap {\n env::log("Getting all entries");\n\n &self.entries\n }\n // highlight-end\n\n // highlight-start\n pub fn get(&self, key: &str) -> Option<&str> {\n env::log(&format!("Getting key: {:?}", key));\n\n self.entries.get(key).map(|v| v.as_str())\n }\n // highlight-end\n\n // highlight-start\n pub fn remove(&mut self, key: &str) -> Option {\n env::log(&format!("Removing key: {:?}", key));\n\n self.entries.remove(key)\n }\n // highlight-end\n}\n'})}),"\n",(0,i.jsx)(n.h3,{id:"building-your-application",children:"Building Your Application"}),"\n",(0,i.jsxs)(n.p,{children:["Once your application logic is defined, run the ",(0,i.jsx)(n.code,{children:"./build.sh"})," script to compile\nyour application into Wasm format. This script will generate ",(0,i.jsx)(n.code,{children:"kv_store.wasm"})," in\nthe ",(0,i.jsx)(n.code,{children:"res"})," folder of your application."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ ./build.sh\ninfo: component 'rust-std' for target 'wasm32-unknown-unknown' is up to date\n # Snip...\n Compiling calimero-sdk v0.1.0\n Compiling kv-store v0.1.0 (/apps/kv-store)\n Finished `app-release` profile [optimized] target(s) in 1.20s\n\n$ tree\n.\n\u251c\u2500\u2500 Cargo.toml\n\u251c\u2500\u2500 build.sh\n\u251c\u2500\u2500 res\n\u2502\xa0\xa0 \u2514\u2500\u2500 kv_store.wasm\n\u2514\u2500\u2500 src\n \u2514\u2500\u2500 lib.rs\n\n3 directories, 4 files\n"})}),"\n",(0,i.jsx)(n.h3,{id:"deploying-your-application",children:"Deploying Your Application"}),"\n",(0,i.jsxs)(n.p,{children:["After successfully building your application, you can upload the compiled\n",(0,i.jsx)(n.code,{children:"kv_store.wasm"})," to the registry for use by a live Calimero node."]}),"\n",(0,i.jsx)(n.h3,{id:"writing-efficient-code-with-calimero-sdk",children:"Writing Efficient Code with Calimero SDK"}),"\n",(0,i.jsx)(n.p,{children:"In the following code snippet:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"pub fn get(&self, key: &str) -> Option<&str> {\n // Snip...\n}\n"})}),"\n",(0,i.jsx)(n.p,{children:"you'll notice that we prioritize using references instead of owned values. This\napproach optimizes performance and memory usage by minimizing unnecessary data\ncopying."}),"\n",(0,i.jsxs)(n.p,{children:["For input parameters, such as ",(0,i.jsx)(n.code,{children:"&str"})," and ",(0,i.jsx)(n.code,{children:"&[u8]"}),", utilizing references allows\nyou to avoid unnecessary copying of data. Similarly, for output values, you can\nreturn references to data that live as long as ",(0,i.jsx)(n.code,{children:"&self"})," or any of the input\nparameters. By doing so, you reduce memory overhead and improve the overall\nefficiency of your application."]}),"\n",(0,i.jsx)(n.p,{children:"By returning a reference to the value associated with the provided key instead\nof cloning the entire value, you ensure efficient memory usage and enhance the\nperformance of your application."}),"\n",(0,i.jsx)(n.h3,{id:"handling-errors-with-calimero-sdk",children:"Handling Errors with Calimero SDK"}),"\n",(0,i.jsxs)(n.p,{children:["When designing methods that may potentially fail, it's recommended to return a\n",(0,i.jsx)(n.code,{children:"Result"})," type with an error variant representing the possible failure cases.\nThis enables you to handle errors more effectively and communicate error\nconditions to users of your application. As opposed to panicking which would\nonly return a string message, using ",(0,i.jsx)(n.code,{children:"Result"})," allows you to provide a structured\nerror type with additional context."]}),"\n",(0,i.jsxs)(n.p,{children:["First, let's define an error type ",(0,i.jsx)(n.code,{children:"Error<'a>"})," with a lifetime tied to the key\n",(0,i.jsx)(n.code,{children:"&'a str"}),":"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"use calimero_sdk::serde::Serialize;\n\n#[derive(Debug, Serialize)]\npub enum Error<'a> {\n NotFound(&'a str),\n // Add more error variants as needed\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In the above definition, ",(0,i.jsx)(n.code,{children:"Error"})," represents the possible error variants that may\noccur during the execution of your method. Each variant can carry additional\ndata to provide context about the error condition."]}),"\n",(0,i.jsxs)(n.p,{children:["Next, let's modify the ",(0,i.jsx)(n.code,{children:"get"})," method to return a ",(0,i.jsx)(n.code,{children:"Result"})," with ",(0,i.jsx)(n.code,{children:"Error"})," as the\nerror type:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"pub fn get<'a>(&self, key: &'a str) -> Result<&'a str, Error<'a>> {\n match self.entries.get(key) {\n Some(value) => Ok(value),\n None => Err(Error::NotFound(key)),\n }\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In the ",(0,i.jsx)(n.code,{children:"get"})," method, we return ",(0,i.jsx)(n.code,{children:"Ok(value)"})," if the key exists in the key-value\nstore, and ",(0,i.jsx)(n.code,{children:"Err(Error::NotFound(key))"})," if the key is not found. This allows\ncallers of the method to handle the possibility of the key not being present in\nthe store."]}),"\n",(0,i.jsxs)(n.p,{children:["Additionally, ensure that the ",(0,i.jsx)(n.code,{children:"Error"})," type is serializable by implementing (or\nderiving) the ",(0,i.jsx)(n.code,{children:"Serialize"})," trait, as shown in the definition above. This enables\nerrors to be encoded in a structured format when returned as part of a call\nerror."]}),"\n",(0,i.jsx)(n.p,{children:"By following this approach, you can handle errors more gracefully and provide\nmeaningful feedback to users of your Calimero application."}),"\n",(0,i.jsx)(n.h3,{id:"emitting-events-with-calimero-sdk",children:"Emitting Events with Calimero SDK"}),"\n",(0,i.jsxs)(n.p,{children:["To facilitate real-time monitoring of state transitions within your Calimero\napplication, you can emit events using the ",(0,i.jsx)(n.code,{children:"app::emit!"})," macro provided by the\nCalimero SDK. Event emission is particularly useful for handling live state\ntransitions triggered by other actors, allowing subscribed clients to receive\nimmediate updates about relevant actions."]}),"\n",(0,i.jsxs)(n.p,{children:["Let's focus on emitting events for mutating calls, specifically ",(0,i.jsx)(n.code,{children:"set"})," and\n",(0,i.jsx)(n.code,{children:"remove"})," methods:"]}),"\n",(0,i.jsxs)(n.p,{children:["First, define your custom events using the ",(0,i.jsx)(n.code,{children:"#[app::event]"})," proc macro. In this\nexample, we'll define events for setting a new key-value pair (",(0,i.jsx)(n.code,{children:"Inserted"}),"),\nupdating an existing value (",(0,i.jsx)(n.code,{children:"Updated"}),"), and removing a key-value pair\n(",(0,i.jsx)(n.code,{children:"Removed"}),"):"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"use calimero_sdk::app;\n\n#[app::event]\npub enum Event<'a> {\n Inserted { key: &'a str, value: &'a str },\n Updated { key: &'a str, value: &'a str },\n Removed { key: &'a str },\n}\n"})}),"\n",(0,i.jsx)(n.p,{children:"Each event variant can carry additional data to provide context about the event."}),"\n",(0,i.jsx)(n.p,{children:"Now, you need to associate the event with the application logic by annotating\nthe application state."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"#[app::state(emits = for<'a> Event<'a>)]\n#[derive(Default, BorshSerialize, BorshDeserialize)]\nstruct KvStore {\n // Snip...\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["And finally, within your application logic methods, emit events using the\n",(0,i.jsx)(n.code,{children:"app::emit!"})," macro:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"use std::collections::hash_map::Entry;\n\npub fn set(&mut self, key: String, value: String) {\n match self.items.entry(key) {\n Entry::Occupied(mut entry) => {\n app::emit!(Event::Updated {\n key: entry.key(),\n value: &value,\n });\n entry.insert(value);\n }\n Entry::Vacant(entry) => {\n app::emit!(Event::Inserted {\n key: entry.key(),\n value: &value,\n });\n entry.insert(value);\n }\n }\n}\n\npub fn remove(&mut self, key: &str) -> Result {\n app::emit!(Event::Removed { key });\n\n self.entries.remove(key).ok_or_else(|| Error::NotFound(key))\n}\n"})}),"\n",(0,i.jsx)(n.p,{children:"In each method, we emit the corresponding event with relevant data. This allows\nexternal observers to react to these events and take appropriate actions."}),"\n",(0,i.jsx)(n.p,{children:"By emitting events, you can ensure connected clients receive real-time updates\nabout state transitions within your Calimero application, enabling them to\nrespond to changes as they occur."}),"\n",(0,i.jsx)(n.h3,{id:"ensuring-atomicity-and-event-reliability-in-calimero-applications",children:"Ensuring Atomicity and Event Reliability in Calimero Applications"}),"\n",(0,i.jsx)(n.p,{children:"In Calimero applications, ensuring atomicity of state changes and reliability of\nevent emission is crucial for maintaining data consistency and facilitating\nreliable communication between actors. Here's how atomicity and event\nreliability are enforced:"}),"\n",(0,i.jsx)(n.h4,{id:"atomic-state-changes",children:"Atomic State Changes"}),"\n",(0,i.jsxs)(n.p,{children:["When a method call fails, whether due to panics or returning an ",(0,i.jsx)(n.code,{children:"Err"}),", all state\nchanges made up to that point are discarded. This ensures that if an operation\ncannot be completed successfully, the application's state remains consistent and\nunaffected by partial updates. By enforcing atomicity, Calimero promotes data\nintegrity and prevents inconsistencies that may arise from incomplete\ntransactions."]}),"\n",(0,i.jsx)(n.h4,{id:"reliable-event-emission",children:"Reliable Event Emission"}),"\n",(0,i.jsx)(n.p,{children:"Similarly, event emission in Calimero applications is tied to the successful\nexecution of transactions. Events are only relayed when a transaction has been\nsuccessfully executed, ensuring that external observers receive updates about\nstate changes reliably. By linking event emission to transaction execution,\nCalimero guarantees that event notifications accurately reflect the\napplication's current state, enhancing the reliability and consistency of\ncommunication between actors."}),"\n",(0,i.jsx)(n.p,{children:"This also means it doesn't matter if the event emission is done before or after\nthe state change, as the event will only be emitted if the state change is\nsuccessful."}),"\n",(0,i.jsx)(n.p,{children:"By adhering to these principles of atomicity and event reliability, Calimero\napplications maintain data integrity and enable robust interaction between\ndifferent components, facilitating the development of secure and dependable\ndecentralized systems."}),"\n",(0,i.jsx)(n.h3,{id:"local-first-efficiency-no-network-overhead-for-read-only-calls",children:"Local-First Efficiency: No Network Overhead for Read-Only Calls"}),"\n",(0,i.jsx)(n.p,{children:"In Calimero, adherence to the local-first principle eliminates the need for\nnetwork communication in read-only calls. Since read-only operations don't\nmodify the state, there's no associated network overhead. This local-first\napproach streamlines data access, promoting efficient and responsive application\nperformance without unnecessary network activity."}),"\n",(0,i.jsx)(n.h3,{id:"conclusion",children:"Conclusion"}),"\n",(0,i.jsx)(n.p,{children:"You've now learned how to set up a Rust project using the Calimero SDK, write a\nsimple application, build it into Wasm, and prepare it for deployment.\nExperiment with different features and functionalities to create powerful and\nsecure applications with Calimero."}),"\n",(0,i.jsx)(n.p,{children:"Happy coding! \ud83d\ude80"})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(758);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8048],{4881:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var i=t(6070),r=t(8355);const s={id:"protocol-rs-sdk",title:"Rust Protocol SDK"},o=void 0,a={id:"build/protocol-sdks/protocol-rs-sdk",title:"Rust Protocol SDK",description:"Getting Started with Calimero SDK for Rust",source:"@site/docs/04-build/01-protocol-sdks/02-protocol-rs-sdk.mdx",sourceDirName:"04-build/01-protocol-sdks",slug:"/build/protocol-sdks/protocol-rs-sdk",permalink:"/build/protocol-sdks/protocol-rs-sdk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"protocol-rs-sdk",title:"Rust Protocol SDK"},sidebar:"tutorialSidebar",previous:{title:"Protocol SDK",permalink:"/build/protocol-sdks/protocol-sdk"},next:{title:"TypeScript Client SDK",permalink:"/build/client-sdks/client-ts-sdk"}},l={},c=[{value:"Getting Started with Calimero SDK for Rust",id:"getting-started-with-calimero-sdk-for-rust",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Setting Up Your Project",id:"setting-up-your-project",level:3},{value:"Writing Your Application",id:"writing-your-application",level:3},{value:"Building Your Application",id:"building-your-application",level:3},{value:"Deploying Your Application",id:"deploying-your-application",level:3},{value:"Writing Efficient Code with Calimero SDK",id:"writing-efficient-code-with-calimero-sdk",level:3},{value:"Handling Errors with Calimero SDK",id:"handling-errors-with-calimero-sdk",level:3},{value:"Emitting Events with Calimero SDK",id:"emitting-events-with-calimero-sdk",level:3},{value:"Ensuring Atomicity and Event Reliability in Calimero Applications",id:"ensuring-atomicity-and-event-reliability-in-calimero-applications",level:3},{value:"Atomic State Changes",id:"atomic-state-changes",level:4},{value:"Reliable Event Emission",id:"reliable-event-emission",level:4},{value:"Local-First Efficiency: No Network Overhead for Read-Only Calls",id:"local-first-efficiency-no-network-overhead-for-read-only-calls",level:3},{value:"Conclusion",id:"conclusion",level:3}];function d(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",pre:"pre",...(0,r.R)(),...e.components},{Details:t}=n;return t||function(e,n){throw new Error("Expected "+(n?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}("Details",!0),(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"getting-started-with-calimero-sdk-for-rust",children:"Getting Started with Calimero SDK for Rust"}),"\n",(0,i.jsx)(n.p,{children:"The Calimero SDK for Rust empowers developers to build applications that compile\nto WebAssembly (Wasm) and run securely within the Calimero virtual machine (VM).\nThis guide will walk you through setting up a Rust project using the Calimero\nSDK, writing an application, and preparing it for deployment."}),"\n",(0,i.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,i.jsxs)(n.p,{children:["Before you begin, ensure you have Rust installed on your system. If not, follow\nthe official Rust installation guide for your platform:\n",(0,i.jsx)(n.a,{href:"https://www.rust-lang.org/tools/install",children:"Rust Installation Guide"}),"."]}),"\n",(0,i.jsxs)(n.p,{children:["You should ensure you have the ",(0,i.jsx)(n.code,{children:"wasm32-unknown-unknown"})," target installed. Run\nthe following command in your terminal to install the target:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"rustup target add wasm32-unknown-unknown\n"})}),"\n",(0,i.jsx)(n.h3,{id:"setting-up-your-project",children:"Setting Up Your Project"}),"\n",(0,i.jsx)(n.p,{children:"To create a new project, initialize a Rust library project using Cargo. Run the\nfollowing command in your terminal:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo new --lib kv-store\n"})}),"\n",(0,i.jsx)(n.p,{children:"You should have a tree that looks like this:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ tree kv-store\nkv-store\n\u251c\u2500\u2500 Cargo.toml\n\u2514\u2500\u2500 src\n \u2514\u2500\u2500 lib.rs\n\n2 directories, 2 files\n"})}),"\n",(0,i.jsxs)(n.p,{children:["At this point, we can ",(0,i.jsx)(n.code,{children:"cd"})," into the ",(0,i.jsx)(n.code,{children:"kv-store"})," directory:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cd kv-store\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Next, you need to specify the crate-type as ",(0,i.jsx)(n.code,{children:"cdylib"})," in your ",(0,i.jsx)(n.code,{children:"Cargo.toml"})," file\nto generate a dynamic library that can be compiled to Wasm:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml"',children:'[lib]\ncrate-type = ["cdylib"]\n'})}),"\n",(0,i.jsxs)(n.p,{children:["You can now configure your project to use the Calimero SDK by adding it as a\ndependency in your ",(0,i.jsx)(n.code,{children:"Cargo.toml"})," file:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml"',children:'[dependencies]\ncalimero-sdk = { git = "https://github.com/calimero-network/core" }\n'})}),"\n",(0,i.jsx)(n.p,{children:"Then, we need to specify a custom build profile for the most compact Wasm\noutput:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml"',children:'[profile.app-release]\ninherits = "release"\ncodegen-units = 1\nopt-level = "z"\nlto = true\ndebug = false\npanic = "abort"\noverflow-checks = true\n'})}),"\n",(0,i.jsxs)(t,{children:[(0,i.jsxs)("summary",{children:[" Your ",(0,i.jsx)(n.code,{children:"Cargo.toml"})," file should now look like this "]}),(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-toml",metastring:'title="File: Cargo.toml" showLineNumbers',children:'[package]\nname = "kv-store"\nversion = "0.1.0"\nedition = "2021"\n\n# highlight-start\n[lib]\ncrate-type = ["cdylib"]\n# highlight-end\n\n# highlight-start\n[dependencies]\ncalimero-sdk = { git = "https://github.com/calimero-network/core" }\n# highlight-end\n\n# highlight-start\n[profile.app-release]\ninherits = "release"\ncodegen-units = 1\nopt-level = "z"\nlto = true\ndebug = false\npanic = "abort"\noverflow-checks = true\n# highlight-end\n'})})]}),"\n",(0,i.jsxs)(n.p,{children:["And finally, create a ",(0,i.jsx)(n.code,{children:"build.sh"})," script to compile your application into Wasm\nformat, for example:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="File: build.sh" showLineNumbers',children:'#!/bin/bash\nset -e\n\ncd "$(dirname $0)"\n\nTARGET="${CARGO_TARGET_DIR:-../../target}"\n\nrustup target add wasm32-unknown-unknown\n\ncargo build --target wasm32-unknown-unknown --profile app-release\n\nmkdir -p res\n\ncp $TARGET/wasm32-unknown-unknown/app-release/kv_store.wasm ./res/\n'})}),"\n",(0,i.jsxs)(n.p,{children:["You can optionally choose to install and use\n",(0,i.jsx)(n.a,{href:"https://github.com/WebAssembly/binaryen",children:(0,i.jsx)(n.code,{children:"wasm-opt"})}),", for an additional\noptimization step in the build script. This step is not required but can help\nreduce the size of the generated Wasm file:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="File: build.sh"',children:"if command -v wasm-opt > /dev/null; then\n wasm-opt -Oz ./res/kv_store.wasm -o ./res/kv_store.wasm\nfi\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Don't forget to make the ",(0,i.jsx)(n.code,{children:"build.sh"})," script executable:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"chmod +x build.sh\n"})}),"\n",(0,i.jsx)(n.p,{children:"At this point, your project structure should look like this:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ tree\n.\n\u251c\u2500\u2500 Cargo.toml\n\u251c\u2500\u2500 build.sh\n\u2514\u2500\u2500 src\n \u2514\u2500\u2500 lib.rs\n\n2 directories, 3 files\n"})}),"\n",(0,i.jsx)(n.h3,{id:"writing-your-application",children:"Writing Your Application"}),"\n",(0,i.jsxs)(n.p,{children:["Now, let's create a simple key-value store application using the Calimero SDK.\nStart by defining your application logic in ",(0,i.jsx)(n.code,{children:"lib.rs"}),":"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs" showLineNumbers',children:'use calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};\nuse calimero_sdk::app;\n\n#[app::state]\n#[derive(Default, BorshSerialize, BorshDeserialize)]\n#[borsh(crate = "calimero_sdk::borsh")]\nstruct KvStore {}\n\n#[app::logic]\nimpl KvStore {}\n'})}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"KvStore"})," struct represents the state of your application, which will be\nborsh-encoded in the app-scoped state partition on the node's storage. The\n",(0,i.jsx)(n.code,{children:"#[app::state]"})," attribute macro marks the struct as the application state,\npermitting its use by Calimero SDK."]}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"#[app::logic]"})," attribute macro marks the implementation block as the\napplication logic, allowing you to define the methods that interact with the\napplication state."]}),"\n",(0,i.jsxs)(n.p,{children:["Consider a method like ",(0,i.jsx)(n.code,{children:"get"})," that retrieves a value from the key-value store:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",children:"pub fn get(&self, key: &str) -> Option<&str> {\n // Snip...\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["The inputs must be deserializable from the transaction data, and the output must\nbe serializable to the response data. The ",(0,i.jsx)(n.code,{children:"Option"})," type is used to represent the\npossibility of the key not being present in the store."]}),"\n",(0,i.jsx)(n.p,{children:"And now, here's a complete example of a key-value store application:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs" showLineNumbers',children:'use std::collections::HashMap;\n\nuse calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};\nuse calimero_sdk::{app, env};\n\n#[app::state]\n#[derive(Default, BorshSerialize, BorshDeserialize)]\nstruct KvStore {\n entries: HashMap,\n}\n\n#[app::logic]\nimpl KvStore {\n // highlight-start\n pub fn set(&mut self, key: String, value: String) {\n env::log(&format!("Setting key: {:?} to value: {:?}", key, value));\n\n self.entries.insert(key, value);\n }\n // highlight-end\n\n // highlight-start\n pub fn entries(&self) -> &HashMap {\n env::log("Getting all entries");\n\n &self.entries\n }\n // highlight-end\n\n // highlight-start\n pub fn get(&self, key: &str) -> Option<&str> {\n env::log(&format!("Getting key: {:?}", key));\n\n self.entries.get(key).map(|v| v.as_str())\n }\n // highlight-end\n\n // highlight-start\n pub fn remove(&mut self, key: &str) -> Option {\n env::log(&format!("Removing key: {:?}", key));\n\n self.entries.remove(key)\n }\n // highlight-end\n}\n'})}),"\n",(0,i.jsx)(n.h3,{id:"building-your-application",children:"Building Your Application"}),"\n",(0,i.jsxs)(n.p,{children:["Once your application logic is defined, run the ",(0,i.jsx)(n.code,{children:"./build.sh"})," script to compile\nyour application into Wasm format. This script will generate ",(0,i.jsx)(n.code,{children:"kv_store.wasm"})," in\nthe ",(0,i.jsx)(n.code,{children:"res"})," folder of your application."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ ./build.sh\ninfo: component 'rust-std' for target 'wasm32-unknown-unknown' is up to date\n # Snip...\n Compiling calimero-sdk v0.1.0\n Compiling kv-store v0.1.0 (/apps/kv-store)\n Finished `app-release` profile [optimized] target(s) in 1.20s\n\n$ tree\n.\n\u251c\u2500\u2500 Cargo.toml\n\u251c\u2500\u2500 build.sh\n\u251c\u2500\u2500 res\n\u2502\xa0\xa0 \u2514\u2500\u2500 kv_store.wasm\n\u2514\u2500\u2500 src\n \u2514\u2500\u2500 lib.rs\n\n3 directories, 4 files\n"})}),"\n",(0,i.jsx)(n.h3,{id:"deploying-your-application",children:"Deploying Your Application"}),"\n",(0,i.jsxs)(n.p,{children:["After successfully building your application, you can upload the compiled\n",(0,i.jsx)(n.code,{children:"kv_store.wasm"})," to the registry for use by a live Calimero node."]}),"\n",(0,i.jsx)(n.h3,{id:"writing-efficient-code-with-calimero-sdk",children:"Writing Efficient Code with Calimero SDK"}),"\n",(0,i.jsx)(n.p,{children:"In the following code snippet:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"pub fn get(&self, key: &str) -> Option<&str> {\n // Snip...\n}\n"})}),"\n",(0,i.jsx)(n.p,{children:"you'll notice that we prioritize using references instead of owned values. This\napproach optimizes performance and memory usage by minimizing unnecessary data\ncopying."}),"\n",(0,i.jsxs)(n.p,{children:["For input parameters, such as ",(0,i.jsx)(n.code,{children:"&str"})," and ",(0,i.jsx)(n.code,{children:"&[u8]"}),", utilizing references allows\nyou to avoid unnecessary copying of data. Similarly, for output values, you can\nreturn references to data that live as long as ",(0,i.jsx)(n.code,{children:"&self"})," or any of the input\nparameters. By doing so, you reduce memory overhead and improve the overall\nefficiency of your application."]}),"\n",(0,i.jsx)(n.p,{children:"By returning a reference to the value associated with the provided key instead\nof cloning the entire value, you ensure efficient memory usage and enhance the\nperformance of your application."}),"\n",(0,i.jsx)(n.h3,{id:"handling-errors-with-calimero-sdk",children:"Handling Errors with Calimero SDK"}),"\n",(0,i.jsxs)(n.p,{children:["When designing methods that may potentially fail, it's recommended to return a\n",(0,i.jsx)(n.code,{children:"Result"})," type with an error variant representing the possible failure cases.\nThis enables you to handle errors more effectively and communicate error\nconditions to users of your application. As opposed to panicking which would\nonly return a string message, using ",(0,i.jsx)(n.code,{children:"Result"})," allows you to provide a structured\nerror type with additional context."]}),"\n",(0,i.jsxs)(n.p,{children:["First, let's define an error type ",(0,i.jsx)(n.code,{children:"Error<'a>"})," with a lifetime tied to the key\n",(0,i.jsx)(n.code,{children:"&'a str"}),":"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"use calimero_sdk::serde::Serialize;\n\n#[derive(Debug, Serialize)]\npub enum Error<'a> {\n NotFound(&'a str),\n // Add more error variants as needed\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In the above definition, ",(0,i.jsx)(n.code,{children:"Error"})," represents the possible error variants that may\noccur during the execution of your method. Each variant can carry additional\ndata to provide context about the error condition."]}),"\n",(0,i.jsxs)(n.p,{children:["Next, let's modify the ",(0,i.jsx)(n.code,{children:"get"})," method to return a ",(0,i.jsx)(n.code,{children:"Result"})," with ",(0,i.jsx)(n.code,{children:"Error"})," as the\nerror type:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"pub fn get<'a>(&self, key: &'a str) -> Result<&'a str, Error<'a>> {\n match self.entries.get(key) {\n Some(value) => Ok(value),\n None => Err(Error::NotFound(key)),\n }\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In the ",(0,i.jsx)(n.code,{children:"get"})," method, we return ",(0,i.jsx)(n.code,{children:"Ok(value)"})," if the key exists in the key-value\nstore, and ",(0,i.jsx)(n.code,{children:"Err(Error::NotFound(key))"})," if the key is not found. This allows\ncallers of the method to handle the possibility of the key not being present in\nthe store."]}),"\n",(0,i.jsxs)(n.p,{children:["Additionally, ensure that the ",(0,i.jsx)(n.code,{children:"Error"})," type is serializable by implementing (or\nderiving) the ",(0,i.jsx)(n.code,{children:"Serialize"})," trait, as shown in the definition above. This enables\nerrors to be encoded in a structured format when returned as part of a call\nerror."]}),"\n",(0,i.jsx)(n.p,{children:"By following this approach, you can handle errors more gracefully and provide\nmeaningful feedback to users of your Calimero application."}),"\n",(0,i.jsx)(n.h3,{id:"emitting-events-with-calimero-sdk",children:"Emitting Events with Calimero SDK"}),"\n",(0,i.jsxs)(n.p,{children:["To facilitate real-time monitoring of state transitions within your Calimero\napplication, you can emit events using the ",(0,i.jsx)(n.code,{children:"app::emit!"})," macro provided by the\nCalimero SDK. Event emission is particularly useful for handling live state\ntransitions triggered by other actors, allowing subscribed clients to receive\nimmediate updates about relevant actions."]}),"\n",(0,i.jsxs)(n.p,{children:["Let's focus on emitting events for mutating calls, specifically ",(0,i.jsx)(n.code,{children:"set"})," and\n",(0,i.jsx)(n.code,{children:"remove"})," methods:"]}),"\n",(0,i.jsxs)(n.p,{children:["First, define your custom events using the ",(0,i.jsx)(n.code,{children:"#[app::event]"})," proc macro. In this\nexample, we'll define events for setting a new key-value pair (",(0,i.jsx)(n.code,{children:"Inserted"}),"),\nupdating an existing value (",(0,i.jsx)(n.code,{children:"Updated"}),"), and removing a key-value pair\n(",(0,i.jsx)(n.code,{children:"Removed"}),"):"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"use calimero_sdk::app;\n\n#[app::event]\npub enum Event<'a> {\n Inserted { key: &'a str, value: &'a str },\n Updated { key: &'a str, value: &'a str },\n Removed { key: &'a str },\n}\n"})}),"\n",(0,i.jsx)(n.p,{children:"Each event variant can carry additional data to provide context about the event."}),"\n",(0,i.jsx)(n.p,{children:"Now, you need to associate the event with the application logic by annotating\nthe application state."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"#[app::state(emits = for<'a> Event<'a>)]\n#[derive(Default, BorshSerialize, BorshDeserialize)]\nstruct KvStore {\n // Snip...\n}\n"})}),"\n",(0,i.jsxs)(n.p,{children:["And finally, within your application logic methods, emit events using the\n",(0,i.jsx)(n.code,{children:"app::emit!"})," macro:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-rust",metastring:'title="File: src/lib.rs"',children:"use std::collections::hash_map::Entry;\n\npub fn set(&mut self, key: String, value: String) {\n match self.items.entry(key) {\n Entry::Occupied(mut entry) => {\n app::emit!(Event::Updated {\n key: entry.key(),\n value: &value,\n });\n entry.insert(value);\n }\n Entry::Vacant(entry) => {\n app::emit!(Event::Inserted {\n key: entry.key(),\n value: &value,\n });\n entry.insert(value);\n }\n }\n}\n\npub fn remove(&mut self, key: &str) -> Result {\n app::emit!(Event::Removed { key });\n\n self.entries.remove(key).ok_or_else(|| Error::NotFound(key))\n}\n"})}),"\n",(0,i.jsx)(n.p,{children:"In each method, we emit the corresponding event with relevant data. This allows\nexternal observers to react to these events and take appropriate actions."}),"\n",(0,i.jsx)(n.p,{children:"By emitting events, you can ensure connected clients receive real-time updates\nabout state transitions within your Calimero application, enabling them to\nrespond to changes as they occur."}),"\n",(0,i.jsx)(n.h3,{id:"ensuring-atomicity-and-event-reliability-in-calimero-applications",children:"Ensuring Atomicity and Event Reliability in Calimero Applications"}),"\n",(0,i.jsx)(n.p,{children:"In Calimero applications, ensuring atomicity of state changes and reliability of\nevent emission is crucial for maintaining data consistency and facilitating\nreliable communication between actors. Here's how atomicity and event\nreliability are enforced:"}),"\n",(0,i.jsx)(n.h4,{id:"atomic-state-changes",children:"Atomic State Changes"}),"\n",(0,i.jsxs)(n.p,{children:["When a method call fails, whether due to panics or returning an ",(0,i.jsx)(n.code,{children:"Err"}),", all state\nchanges made up to that point are discarded. This ensures that if an operation\ncannot be completed successfully, the application's state remains consistent and\nunaffected by partial updates. By enforcing atomicity, Calimero promotes data\nintegrity and prevents inconsistencies that may arise from incomplete\ntransactions."]}),"\n",(0,i.jsx)(n.h4,{id:"reliable-event-emission",children:"Reliable Event Emission"}),"\n",(0,i.jsx)(n.p,{children:"Similarly, event emission in Calimero applications is tied to the successful\nexecution of transactions. Events are only relayed when a transaction has been\nsuccessfully executed, ensuring that external observers receive updates about\nstate changes reliably. By linking event emission to transaction execution,\nCalimero guarantees that event notifications accurately reflect the\napplication's current state, enhancing the reliability and consistency of\ncommunication between actors."}),"\n",(0,i.jsx)(n.p,{children:"This also means it doesn't matter if the event emission is done before or after\nthe state change, as the event will only be emitted if the state change is\nsuccessful."}),"\n",(0,i.jsx)(n.p,{children:"By adhering to these principles of atomicity and event reliability, Calimero\napplications maintain data integrity and enable robust interaction between\ndifferent components, facilitating the development of secure and dependable\ndecentralized systems."}),"\n",(0,i.jsx)(n.h3,{id:"local-first-efficiency-no-network-overhead-for-read-only-calls",children:"Local-First Efficiency: No Network Overhead for Read-Only Calls"}),"\n",(0,i.jsx)(n.p,{children:"In Calimero, adherence to the local-first principle eliminates the need for\nnetwork communication in read-only calls. Since read-only operations don't\nmodify the state, there's no associated network overhead. This local-first\napproach streamlines data access, promoting efficient and responsive application\nperformance without unnecessary network activity."}),"\n",(0,i.jsx)(n.h3,{id:"conclusion",children:"Conclusion"}),"\n",(0,i.jsx)(n.p,{children:"You've now learned how to set up a Rust project using the Calimero SDK, write a\nsimple application, build it into Wasm, and prepare it for deployment.\nExperiment with different features and functionalities to create powerful and\nsecure applications with Calimero."}),"\n",(0,i.jsx)(n.p,{children:"Happy coding! \ud83d\ude80"})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(758);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/42b3b6e0.099ed172.js b/assets/js/42b3b6e0.598b130d.js similarity index 95% rename from assets/js/42b3b6e0.099ed172.js rename to assets/js/42b3b6e0.598b130d.js index fc7fc6cc..97efff59 100644 --- a/assets/js/42b3b6e0.099ed172.js +++ b/assets/js/42b3b6e0.598b130d.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6391],{1010:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>u,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var o=n(6070),i=n(5710);const r={id:"intro",title:"Introduction"},s=void 0,a={id:"explore/intro",title:"Introduction",description:"Welcome to Our Project Documentation",source:"@site/docs/01-explore/01-intro.mdx",sourceDirName:"01-explore",slug:"/explore/intro",permalink:"/explore/intro",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"intro",title:"Introduction"},sidebar:"tutorialSidebar",next:{title:"The Data Sovereignty Manifesto",permalink:"/explore/manifesto"}},c={},l=[{value:"Welcome to Our Project Documentation",id:"welcome-to-our-project-documentation",level:2},{value:"Explore",id:"explore",level:3},{value:"Learn",id:"learn",level:3},{value:"Build",id:"build",level:3},{value:"Contribute",id:"contribute",level:3},{value:"Resources",id:"resources",level:3},{value:"Next steps",id:"next-steps",level:3}];function d(e){const t={h2:"h2",h3:"h3",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.h2,{id:"welcome-to-our-project-documentation",children:"Welcome to Our Project Documentation"}),"\n",(0,o.jsx)(t.p,{children:"Welcome to our comprehensive documentation. Here, you'll find all the resources\nand guidance needed to understand and engage with our technology. Whether you\nare new to privacy technology or looking to deepen your existing knowledge, this\ndocumentation is structured to assist you every step of the way."}),"\n",(0,o.jsx)(t.p,{children:"Our documentation is divided into several key sections, each designed to provide\nyou with detailed insights and practical tools:"}),"\n",(0,o.jsx)(t.h3,{id:"explore",children:"Explore"}),"\n",(0,o.jsx)(t.p,{children:"Explore is your starting point for smoothly moving between our documentation\nsections. Here, you'll get a quick overview of what each part covers. Dive into\nour Manifesto to understand our key beliefs. Then, jump into the Developers\nQuickstart for simple steps to get hands-on with our product if you prefer to\ndive into example first."}),"\n",(0,o.jsx)(t.h3,{id:"learn",children:"Learn"}),"\n",(0,o.jsx)(t.p,{children:"This section is your gateway to understanding our technology and foundational\nprivacy principles. It provides a structured approach to learning, from system\narchitecture and essential terminology to in-depth exploration of both basic and\ncomplex privacy concepts. It also addresses the limitations of our technology,\nensuring you have a comprehensive understanding."}),"\n",(0,o.jsx)(t.h3,{id:"build",children:"Build"}),"\n",(0,o.jsx)(t.p,{children:'The "Build" section equips you with the necessary tools and documentation to\nstart creating applications using our technology. It features a quickstart guide\nfor immediate setup, detailed descriptions of our SDKs for Rust and TypeScript,\nand insights into our protocol, catering to developers at all skill levels.'}),"\n",(0,o.jsx)(t.h3,{id:"contribute",children:"Contribute"}),"\n",(0,o.jsx)(t.p,{children:'In the "Contribute" section, we invite you to actively participate in the\ndevelopment and improvement of our project. It provides detailed instructions on\nhow to use GitHub for contributions, including environment setup, submission of\nchanges, and community guidelines. Information on hackathons and available\nbounties is also included to engage with our community further.'}),"\n",(0,o.jsx)(t.h3,{id:"resources",children:"Resources"}),"\n",(0,o.jsx)(t.p,{children:'Our "Resources" section serves as a comprehensive directory of additional\nmaterials, including detailed documentation, community forums, and external\nreadings. It is designed to support your ongoing learning and application of our\ntechnology.'}),"\n",(0,o.jsx)(t.h3,{id:"next-steps",children:"Next steps"}),"\n",(0,o.jsx)(t.p,{children:"Ready to embark on this journey? Welcome to Calimero Network!"})]})}function u(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>a});var o=n(758);const i={},r=o.createContext(i);function s(e){const t=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),o.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6391],{1010:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>u,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var o=n(6070),i=n(8355);const r={id:"intro",title:"Introduction"},s=void 0,a={id:"explore/intro",title:"Introduction",description:"Welcome to Our Project Documentation",source:"@site/docs/01-explore/01-intro.mdx",sourceDirName:"01-explore",slug:"/explore/intro",permalink:"/explore/intro",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"intro",title:"Introduction"},sidebar:"tutorialSidebar",next:{title:"The Data Sovereignty Manifesto",permalink:"/explore/manifesto"}},c={},l=[{value:"Welcome to Our Project Documentation",id:"welcome-to-our-project-documentation",level:2},{value:"Explore",id:"explore",level:3},{value:"Learn",id:"learn",level:3},{value:"Build",id:"build",level:3},{value:"Contribute",id:"contribute",level:3},{value:"Resources",id:"resources",level:3},{value:"Next steps",id:"next-steps",level:3}];function d(e){const t={h2:"h2",h3:"h3",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.h2,{id:"welcome-to-our-project-documentation",children:"Welcome to Our Project Documentation"}),"\n",(0,o.jsx)(t.p,{children:"Welcome to our comprehensive documentation. Here, you'll find all the resources\nand guidance needed to understand and engage with our technology. Whether you\nare new to privacy technology or looking to deepen your existing knowledge, this\ndocumentation is structured to assist you every step of the way."}),"\n",(0,o.jsx)(t.p,{children:"Our documentation is divided into several key sections, each designed to provide\nyou with detailed insights and practical tools:"}),"\n",(0,o.jsx)(t.h3,{id:"explore",children:"Explore"}),"\n",(0,o.jsx)(t.p,{children:"Explore is your starting point for smoothly moving between our documentation\nsections. Here, you'll get a quick overview of what each part covers. Dive into\nour Manifesto to understand our key beliefs. Then, jump into the Developers\nQuickstart for simple steps to get hands-on with our product if you prefer to\ndive into example first."}),"\n",(0,o.jsx)(t.h3,{id:"learn",children:"Learn"}),"\n",(0,o.jsx)(t.p,{children:"This section is your gateway to understanding our technology and foundational\nprivacy principles. It provides a structured approach to learning, from system\narchitecture and essential terminology to in-depth exploration of both basic and\ncomplex privacy concepts. It also addresses the limitations of our technology,\nensuring you have a comprehensive understanding."}),"\n",(0,o.jsx)(t.h3,{id:"build",children:"Build"}),"\n",(0,o.jsx)(t.p,{children:'The "Build" section equips you with the necessary tools and documentation to\nstart creating applications using our technology. It features a quickstart guide\nfor immediate setup, detailed descriptions of our SDKs for Rust and TypeScript,\nand insights into our protocol, catering to developers at all skill levels.'}),"\n",(0,o.jsx)(t.h3,{id:"contribute",children:"Contribute"}),"\n",(0,o.jsx)(t.p,{children:'In the "Contribute" section, we invite you to actively participate in the\ndevelopment and improvement of our project. It provides detailed instructions on\nhow to use GitHub for contributions, including environment setup, submission of\nchanges, and community guidelines. Information on hackathons and available\nbounties is also included to engage with our community further.'}),"\n",(0,o.jsx)(t.h3,{id:"resources",children:"Resources"}),"\n",(0,o.jsx)(t.p,{children:'Our "Resources" section serves as a comprehensive directory of additional\nmaterials, including detailed documentation, community forums, and external\nreadings. It is designed to support your ongoing learning and application of our\ntechnology.'}),"\n",(0,o.jsx)(t.h3,{id:"next-steps",children:"Next steps"}),"\n",(0,o.jsx)(t.p,{children:"Ready to embark on this journey? Welcome to Calimero Network!"})]})}function u(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>a});var o=n(758);const i={},r=o.createContext(i);function s(e){const t=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),o.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5062.66606bee.js b/assets/js/5062.66606bee.js deleted file mode 100644 index de258209..00000000 --- a/assets/js/5062.66606bee.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5062],{2824:(e,t,n)=>{n.d(t,{A:()=>a});n(758);var i=n(3526),o=n(427),s=n(9849),r=n(6070);function a(e){let{className:t}=e;return(0,r.jsx)("main",{className:(0,i.A)("container margin-vert--xl",t),children:(0,r.jsx)("div",{className:"row",children:(0,r.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,r.jsx)(s.A,{as:"h1",className:"hero__title",children:(0,r.jsx)(o.A,{id:"theme.NotFound.title",description:"The title of the 404 page",children:"Page Not Found"})}),(0,r.jsx)("p",{children:(0,r.jsx)(o.A,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page",children:"We could not find what you were looking for."})}),(0,r.jsx)("p",{children:(0,r.jsx)(o.A,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page",children:"Please contact the owner of the site that linked you to the original URL and let them know their link is broken."})})]})})})}},5062:(e,t,n)=>{n.r(t),n.d(t,{default:()=>d});n(758);var i=n(427),o=n(4804),s=n(6848),r=n(2824),a=n(6070);function d(){const e=(0,i.T)({id:"theme.NotFound.title",message:"Page Not Found"});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.be,{title:e}),(0,a.jsx)(s.A,{children:(0,a.jsx)(r.A,{})})]})}}}]); \ No newline at end of file diff --git a/assets/js/514a65da.8f15bbe5.js b/assets/js/514a65da.ddac9227.js similarity index 95% rename from assets/js/514a65da.8f15bbe5.js rename to assets/js/514a65da.ddac9227.js index 2c846741..87d4d748 100644 --- a/assets/js/514a65da.8f15bbe5.js +++ b/assets/js/514a65da.ddac9227.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3182],{5081:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>i,toc:()=>l});var s=t(6070),r=t(5710);const a={id:"storage",title:"Storage"},o=void 0,i={id:"learn/core-concepts/node/storage",title:"Storage",description:"The storage component in the Calimero Network is essential for managing and",source:"@site/docs/02-learn/03-core-concepts/02-node/04-storage.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/storage",permalink:"/learn/core-concepts/node/storage",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:4,frontMatter:{id:"storage",title:"Storage"},sidebar:"tutorialSidebar",previous:{title:"Server",permalink:"/learn/core-concepts/node/server"},next:{title:"Network",permalink:"/learn/core-concepts/node/network"}},c={},l=[{value:"Core Capabilities",id:"core-capabilities",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.p,{children:"The storage component in the Calimero Network is essential for managing and\nmaintaining the data generated and utilized by decentralized applications\n(DApps). It ensures data integrity, security, and efficient access, enabling\nseamless operation of applications within the network."}),"\n",(0,s.jsx)(n.h3,{id:"core-capabilities",children:"Core Capabilities"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Generic Storage Interface"}),": Calimero provides a flexible storage interface\nthat allows app developers to choose their preferred database. By default,\nCalimero uses RocksDB, but it can also support LevelDB, Sled, TigerBeetle,\nSQLite, or even cloud storage solutions like S3."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Context State Storage"}),": The context state is backed by a Patricia-Trie\nstructure flattened into the key-value map of the datastore. This structure\nensures efficient state management and retrieval."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Data Blobs"}),": The storage system handles non-state-transitional, encrypted\nblobs of data, similar to BitTorrent or IPFS. Nodes can lazily share these\ndata blobs without needing centralized storage, ensuring efficient and secure\ndata distribution across the network. By default, the blobstore is the local\nfilesystem, but it can be configured to use any cloud storage option or\ncontent-addressed storage like IPFS."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Data Encryption"}),": All data stored within the network is encrypted at rest,\nensuring that sensitive information remains protected. This includes both\nstate-transitional data and non-state-transitional data like attached files in\nDMs or collaborative document assets."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Efficient Data Operations"}),": The storage component is optimized for quick\ndata operations, ensuring that applications can access, retrieve, and update\nthe data they need promptly. Caching mechanisms are employed to further\nimprove data access speeds."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Garbage Collection"}),": The system includes mechanisms for garbage collection\nusing reference counting for trie data, allowing for the cleanup of obsolete\nor redundant data. This helps in maintaining optimal storage performance and\nresource utilization."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Metrics and Monitoring"}),": The storage component provides detailed metrics on\nstorage usage, including total usage and breakdowns by context. This allows\nfor effective monitoring and management of storage resources."]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>i});var s=t(758);const r={},a=s.createContext(r);function o(e){const n=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),s.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3182],{5081:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>i,toc:()=>l});var s=t(6070),r=t(8355);const a={id:"storage",title:"Storage"},o=void 0,i={id:"learn/core-concepts/node/storage",title:"Storage",description:"The storage component in the Calimero Network is essential for managing and",source:"@site/docs/02-learn/03-core-concepts/02-node/04-storage.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/storage",permalink:"/learn/core-concepts/node/storage",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:4,frontMatter:{id:"storage",title:"Storage"},sidebar:"tutorialSidebar",previous:{title:"Server",permalink:"/learn/core-concepts/node/server"},next:{title:"Network",permalink:"/learn/core-concepts/node/network"}},c={},l=[{value:"Core Capabilities",id:"core-capabilities",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.p,{children:"The storage component in the Calimero Network is essential for managing and\nmaintaining the data generated and utilized by decentralized applications\n(DApps). It ensures data integrity, security, and efficient access, enabling\nseamless operation of applications within the network."}),"\n",(0,s.jsx)(n.h3,{id:"core-capabilities",children:"Core Capabilities"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Generic Storage Interface"}),": Calimero provides a flexible storage interface\nthat allows app developers to choose their preferred database. By default,\nCalimero uses RocksDB, but it can also support LevelDB, Sled, TigerBeetle,\nSQLite, or even cloud storage solutions like S3."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Context State Storage"}),": The context state is backed by a Patricia-Trie\nstructure flattened into the key-value map of the datastore. This structure\nensures efficient state management and retrieval."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Data Blobs"}),": The storage system handles non-state-transitional, encrypted\nblobs of data, similar to BitTorrent or IPFS. Nodes can lazily share these\ndata blobs without needing centralized storage, ensuring efficient and secure\ndata distribution across the network. By default, the blobstore is the local\nfilesystem, but it can be configured to use any cloud storage option or\ncontent-addressed storage like IPFS."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Data Encryption"}),": All data stored within the network is encrypted at rest,\nensuring that sensitive information remains protected. This includes both\nstate-transitional data and non-state-transitional data like attached files in\nDMs or collaborative document assets."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Efficient Data Operations"}),": The storage component is optimized for quick\ndata operations, ensuring that applications can access, retrieve, and update\nthe data they need promptly. Caching mechanisms are employed to further\nimprove data access speeds."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Garbage Collection"}),": The system includes mechanisms for garbage collection\nusing reference counting for trie data, allowing for the cleanup of obsolete\nor redundant data. This helps in maintaining optimal storage performance and\nresource utilization."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Metrics and Monitoring"}),": The storage component provides detailed metrics on\nstorage usage, including total usage and breakdowns by context. This allows\nfor effective monitoring and management of storage resources."]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>i});var s=t(758);const r={},a=s.createContext(r);function o(e){const n=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),s.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5664.25224e7d.js b/assets/js/5664.25224e7d.js new file mode 100644 index 00000000..1acfd380 --- /dev/null +++ b/assets/js/5664.25224e7d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5664],{5664:(c,s,a)=>{a.r(s),a.d(s,{DocSearchModal:()=>e.a1});var e=a(3374)}}]); \ No newline at end of file diff --git a/assets/js/5910.0d523cf3.js b/assets/js/5910.0d523cf3.js deleted file mode 100644 index 10dc7bdb..00000000 --- a/assets/js/5910.0d523cf3.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5910],{6061:(e,t,n)=>{"use strict";n.d(t,{_:()=>r,u:()=>l});var s=n(758),a=n(1367),i=n(6070);const o=s.createContext(null);function r(e){let{children:t,content:n}=e;const a=function(e){return(0,s.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(n);return(0,i.jsx)(o.Provider,{value:a,children:t})}function l(){const e=(0,s.useContext)(o);if(null===e)throw new a.dV("DocProvider");return e}},6476:(e,t,n)=>{"use strict";n.d(t,{A:()=>y});n(758);var s=n(3526),a=n(2382),i=n(6061),o=n(427),r=n(9410);const l={tag:"tag_z3Op",tagRegular:"tagRegular_rGMd",tagWithCount:"tagWithCount_J6D4"};var c=n(6070);function d(e){let{permalink:t,label:n,count:a,description:i}=e;return(0,c.jsxs)(r.A,{href:t,title:i,className:(0,s.A)(l.tag,a?l.tagWithCount:l.tagRegular),children:[n,a&&(0,c.jsx)("span",{children:a})]})}const u={tags:"tags_LjXH",tag:"tag_ipaw"};function m(e){let{tags:t}=e;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("b",{children:(0,c.jsx)(o.A,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list",children:"Tags:"})}),(0,c.jsx)("ul",{className:(0,s.A)(u.tags,"padding--none","margin-left--sm"),children:t.map((e=>(0,c.jsx)("li",{className:u.tag,children:(0,c.jsx)(d,{...e})},e.permalink)))})]})}const h={iconEdit:"iconEdit_RxWf"};function f(e){let{className:t,...n}=e;return(0,c.jsx)("svg",{fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,s.A)(h.iconEdit,t),"aria-hidden":"true",...n,children:(0,c.jsx)("g",{children:(0,c.jsx)("path",{d:"m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"})})})}function p(e){let{editUrl:t}=e;return(0,c.jsxs)(r.A,{to:t,className:a.G.common.editThisPage,children:[(0,c.jsx)(f,{}),(0,c.jsx)(o.A,{id:"theme.common.editThisPage",description:"The link label to edit the current page",children:"Edit this page"})]})}var b=n(9014);function x(e){void 0===e&&(e={});const{i18n:{currentLocale:t}}=(0,b.A)(),n=function(){const{i18n:{currentLocale:e,localeConfigs:t}}=(0,b.A)();return t[e].calendar}();return new Intl.DateTimeFormat(t,{calendar:n,...e})}function g(e){let{lastUpdatedAt:t}=e;const n=new Date(t),s=x({day:"numeric",month:"short",year:"numeric",timeZone:"UTC"}).format(n);return(0,c.jsx)(o.A,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:(0,c.jsx)("b",{children:(0,c.jsx)("time",{dateTime:n.toISOString(),itemProp:"dateModified",children:s})})},children:" on {date}"})}function v(e){let{lastUpdatedBy:t}=e;return(0,c.jsx)(o.A,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:(0,c.jsx)("b",{children:t})},children:" by {user}"})}function j(e){let{lastUpdatedAt:t,lastUpdatedBy:n}=e;return(0,c.jsxs)("span",{className:a.G.common.lastUpdated,children:[(0,c.jsx)(o.A,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t?(0,c.jsx)(g,{lastUpdatedAt:t}):"",byUser:n?(0,c.jsx)(v,{lastUpdatedBy:n}):""},children:"Last updated{atDate}{byUser}"}),!1]})}const k={lastUpdated:"lastUpdated_dWC1"};function N(e){let{className:t,editUrl:n,lastUpdatedAt:a,lastUpdatedBy:i}=e;return(0,c.jsxs)("div",{className:(0,s.A)("row",t),children:[(0,c.jsx)("div",{className:"col",children:n&&(0,c.jsx)(p,{editUrl:n})}),(0,c.jsx)("div",{className:(0,s.A)("col",k.lastUpdated),children:(a||i)&&(0,c.jsx)(j,{lastUpdatedAt:a,lastUpdatedBy:i})})]})}function y(){const{metadata:e}=(0,i.u)(),{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:o,tags:r}=e,l=r.length>0,d=!!(t||n||o);return l||d?(0,c.jsxs)("footer",{className:(0,s.A)(a.G.docs.docFooter,"docusaurus-mt-lg"),children:[l&&(0,c.jsx)("div",{className:(0,s.A)("row margin-top--sm",a.G.docs.docFooterTagsRow),children:(0,c.jsx)("div",{className:"col",children:(0,c.jsx)(m,{tags:r})})}),d&&(0,c.jsx)(N,{className:(0,s.A)("margin-top--sm",a.G.docs.docFooterEditMetaRow),editUrl:t,lastUpdatedAt:n,lastUpdatedBy:o})]}):null}},7417:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>Ht});var s=n(758),a=n(4804),i=n(6061),o=n(6070);function r(){const{metadata:e,frontMatter:t,assets:n}=(0,i.u)();return(0,o.jsx)(a.be,{title:e.title,description:e.description,keywords:t.keywords,image:n.image??t.image})}var l=n(3526),c=n(3216),d=n(427),u=n(9410);function m(e){const{permalink:t,title:n,subLabel:s,isNext:a}=e;return(0,o.jsxs)(u.A,{className:(0,l.A)("pagination-nav__link",a?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t,children:[s&&(0,o.jsx)("div",{className:"pagination-nav__sublabel",children:s}),(0,o.jsx)("div",{className:"pagination-nav__label",children:n})]})}function h(e){const{previous:t,next:n}=e;return(0,o.jsxs)("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,d.T)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages",description:"The ARIA label for the docs pagination"}),children:[t&&(0,o.jsx)(m,{...t,subLabel:(0,o.jsx)(d.A,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc",children:"Previous"})}),n&&(0,o.jsx)(m,{...n,subLabel:(0,o.jsx)(d.A,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc",children:"Next"}),isNext:!0})]})}function f(){const{metadata:e}=(0,i.u)();return(0,o.jsx)(h,{previous:e.previous,next:e.next})}var p=n(9014),b=n(5755),x=n(2382),g=n(3875),v=n(6518);const j={unreleased:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,o.jsx)(d.A,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:(0,o.jsx)("b",{children:n.label})},children:"This is unreleased documentation for {siteTitle} {versionLabel} version."})},unmaintained:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,o.jsx)(d.A,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:(0,o.jsx)("b",{children:n.label})},children:"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained."})}};function k(e){const t=j[e.versionMetadata.banner];return(0,o.jsx)(t,{...e})}function N(e){let{versionLabel:t,to:n,onClick:s}=e;return(0,o.jsx)(d.A,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:(0,o.jsx)("b",{children:(0,o.jsx)(u.A,{to:n,onClick:s,children:(0,o.jsx)(d.A,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label",children:"latest version"})})})},children:"For up-to-date documentation, see the {latestVersionLink} ({versionLabel})."})}function y(e){let{className:t,versionMetadata:n}=e;const{siteConfig:{title:s}}=(0,p.A)(),{pluginId:a}=(0,b.vT)({failfast:!0}),{savePreferredVersionName:i}=(0,g.g1)(a),{latestDocSuggestion:r,latestVersionSuggestion:c}=(0,b.HW)(a),d=r??(u=c).docs.find((e=>e.id===u.mainDocId));var u;return(0,o.jsxs)("div",{className:(0,l.A)(t,x.G.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert",children:[(0,o.jsx)("div",{children:(0,o.jsx)(k,{siteTitle:s,versionMetadata:n})}),(0,o.jsx)("div",{className:"margin-top--md",children:(0,o.jsx)(N,{versionLabel:c.label,to:d.path,onClick:()=>i(c.name)})})]})}function C(e){let{className:t}=e;const n=(0,v.r)();return n.banner?(0,o.jsx)(y,{className:t,versionMetadata:n}):null}function w(e){let{className:t}=e;const n=(0,v.r)();return n.badge?(0,o.jsx)("span",{className:(0,l.A)(t,x.G.docs.docVersionBadge,"badge badge--secondary"),children:(0,o.jsx)(d.A,{id:"theme.docs.versionBadge.label",values:{versionLabel:n.label},children:"Version: {versionLabel}"})}):null}var A=n(1159),L=n(6925),E=n(1781);function B(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const s=n.slice(2,e.level);e.parentIndex=Math.max(...s),n[e.level]=t}));const s=[];return t.forEach((e=>{const{parentIndex:n,...a}=e;n>=0?t[n].children.push(a):s.push(a)})),s}function T(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:s}=e;return t.flatMap((e=>{const t=T({toc:e.children,minHeadingLevel:n,maxHeadingLevel:s});return function(e){return e.level>=n&&e.level<=s}(e)?[{...e,children:t}]:t}))}function S(e){const t=e.getBoundingClientRect();return t.top===t.bottom?S(e.parentNode):t}function _(e,t){let{anchorTopOffset:n}=t;const s=e.find((e=>S(e).top>=n));if(s){return function(e){return e.top>0&&e.bottom{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function M(e){const t=(0,s.useRef)(void 0),n=I();(0,s.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:s,linkActiveClassName:a,minHeadingLevel:i,maxHeadingLevel:o}=e;function r(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(s),r=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const s=[];for(let a=t;a<=n;a+=1)s.push(`h${a}.anchor`);return Array.from(document.querySelectorAll(s.join()))}({minHeadingLevel:i,maxHeadingLevel:o}),l=_(r,{anchorTopOffset:n.current}),c=e.find((e=>l&&l.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,n){n?(t.current&&t.current!==e&&t.current.classList.remove(a),e.classList.add(a),t.current=e):e.classList.remove(a)}(e,e===c)}))}return document.addEventListener("scroll",r),document.addEventListener("resize",r),r(),()=>{document.removeEventListener("scroll",r),document.removeEventListener("resize",r)}}),[e,n])}function H(e){let{toc:t,className:n,linkClassName:s,isChild:a}=e;return t.length?(0,o.jsx)("ul",{className:a?void 0:n,children:t.map((e=>(0,o.jsxs)("li",{children:[(0,o.jsx)(u.A,{to:`#${e.id}`,className:s??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,o.jsx)(H,{isChild:!0,toc:e.children,className:n,linkClassName:s})]},e.id)))}):null}const R=s.memo(H);function z(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:a="table-of-contents__link",linkActiveClassName:i,minHeadingLevel:r,maxHeadingLevel:l,...c}=e;const d=(0,E.p)(),u=r??d.tableOfContents.minHeadingLevel,m=l??d.tableOfContents.maxHeadingLevel,h=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return(0,s.useMemo)((()=>T({toc:B(t),minHeadingLevel:n,maxHeadingLevel:a})),[t,n,a])}({toc:t,minHeadingLevel:u,maxHeadingLevel:m});return M((0,s.useMemo)((()=>{if(a&&i)return{linkClassName:a,linkActiveClassName:i,minHeadingLevel:u,maxHeadingLevel:m}}),[a,i,u,m])),(0,o.jsx)(R,{toc:h,className:n,linkClassName:a,...c})}const U={tocCollapsibleButton:"tocCollapsibleButton_D68z",tocCollapsibleButtonExpanded:"tocCollapsibleButtonExpanded_akXK"};function $(e){let{collapsed:t,...n}=e;return(0,o.jsx)("button",{type:"button",...n,className:(0,l.A)("clean-btn",U.tocCollapsibleButton,!t&&U.tocCollapsibleButtonExpanded,n.className),children:(0,o.jsx)(d.A,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component",children:"On this page"})})}const O={tocCollapsible:"tocCollapsible_HXs3",tocCollapsibleContent:"tocCollapsibleContent_f5x3",tocCollapsibleExpanded:"tocCollapsibleExpanded_dlAu"};function V(e){let{toc:t,className:n,minHeadingLevel:s,maxHeadingLevel:a}=e;const{collapsed:i,toggleCollapsed:r}=(0,L.u)({initialState:!0});return(0,o.jsxs)("div",{className:(0,l.A)(O.tocCollapsible,!i&&O.tocCollapsibleExpanded,n),children:[(0,o.jsx)($,{collapsed:i,onClick:r}),(0,o.jsx)(L.N,{lazy:!0,className:O.tocCollapsibleContent,collapsed:i,children:(0,o.jsx)(z,{toc:t,minHeadingLevel:s,maxHeadingLevel:a})})]})}const D={tocMobile:"tocMobile_aui3"};function F(){const{toc:e,frontMatter:t}=(0,i.u)();return(0,o.jsx)(V,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,l.A)(x.G.docs.docTocMobile,D.tocMobile)})}const P={tableOfContents:"tableOfContents_ao1q",docItemContainer:"docItemContainer_ezBS"},G="table-of-contents__link toc-highlight",q="table-of-contents__link--active";function W(e){let{className:t,...n}=e;return(0,o.jsx)("div",{className:(0,l.A)(P.tableOfContents,"thin-scrollbar",t),children:(0,o.jsx)(z,{...n,linkClassName:G,linkActiveClassName:q})})}function Z(){const{toc:e,frontMatter:t}=(0,i.u)();return(0,o.jsx)(W,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:x.G.docs.docTocDesktop})}var J=n(9849),X=n(5710),Y=n(8472),K=n(2195),Q=n(3510);function ee(){const{prism:e}=(0,E.p)(),{colorMode:t}=(0,Q.G)(),n=e.theme,s=e.darkTheme||n;return"dark"===t?s:n}var te=n(4809),ne=n.n(te);const se=/title=(?["'])(?.*?)\1/,ae=/\{(?<range>[\d,-]+)\}/,ie={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}},oe={...ie,lua:{start:"--",end:""},wasm:{start:"\\;\\;",end:""},tex:{start:"%",end:""},vb:{start:"['\u2018\u2019]",end:""},vbnet:{start:"(?:_\\s*)?['\u2018\u2019]",end:""},rem:{start:"[Rr][Ee][Mm]\\b",end:""},f90:{start:"!",end:""},ml:{start:"\\(\\*",end:"\\*\\)"},cobol:{start:"\\*>",end:""}},re=Object.keys(ie);function le(e,t){const n=e.map((e=>{const{start:n,end:s}=oe[e];return`(?:${n}\\s*(${t.flatMap((e=>[e.line,e.block?.start,e.block?.end].filter(Boolean))).join("|")})\\s*${s})`})).join("|");return new RegExp(`^\\s*(?:${n})\\s*$`)}function ce(e,t){let n=e.replace(/\n$/,"");const{language:s,magicComments:a,metastring:i}=t;if(i&&ae.test(i)){const e=i.match(ae).groups.range;if(0===a.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${i}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const t=a[0].className,s=ne()(e).filter((e=>e>0)).map((e=>[e-1,[t]]));return{lineClassNames:Object.fromEntries(s),code:n}}if(void 0===s)return{lineClassNames:{},code:n};const o=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return le(["js","jsBlock"],t);case"jsx":case"tsx":return le(["js","jsBlock","jsx"],t);case"html":return le(["js","jsBlock","html"],t);case"python":case"py":case"bash":return le(["bash"],t);case"markdown":case"md":return le(["html","jsx","bash"],t);case"tex":case"latex":case"matlab":return le(["tex"],t);case"lua":case"haskell":case"sql":return le(["lua"],t);case"wasm":return le(["wasm"],t);case"vb":case"vba":case"visual-basic":return le(["vb","rem"],t);case"vbnet":return le(["vbnet","rem"],t);case"batch":return le(["rem"],t);case"basic":return le(["rem","f90"],t);case"fsharp":return le(["js","ml"],t);case"ocaml":case"sml":return le(["ml"],t);case"fortran":return le(["f90"],t);case"cobol":return le(["cobol"],t);default:return le(re,t)}}(s,a),r=n.split("\n"),l=Object.fromEntries(a.map((e=>[e.className,{start:0,range:""}]))),c=Object.fromEntries(a.filter((e=>e.line)).map((e=>{let{className:t,line:n}=e;return[n,t]}))),d=Object.fromEntries(a.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.start,t]}))),u=Object.fromEntries(a.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.end,t]})));for(let h=0;h<r.length;){const e=r[h].match(o);if(!e){h+=1;continue}const t=e.slice(1).find((e=>void 0!==e));c[t]?l[c[t]].range+=`${h},`:d[t]?l[d[t]].start=h:u[t]&&(l[u[t]].range+=`${l[u[t]].start}-${h-1},`),r.splice(h,1)}n=r.join("\n");const m={};return Object.entries(l).forEach((e=>{let[t,{range:n}]=e;ne()(n).forEach((e=>{m[e]??=[],m[e].push(t)}))})),{lineClassNames:m,code:n}}const de={codeBlockContainer:"codeBlockContainer_irvZ"};function ue(e){let{as:t,...n}=e;const s=function(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach((e=>{let[s,a]=e;const i=t[s];i&&"string"==typeof a&&(n[i]=a)})),n}(ee());return(0,o.jsx)(t,{...n,style:s,className:(0,l.A)(n.className,de.codeBlockContainer,x.G.common.codeBlock)})}const me={codeBlockContent:"codeBlockContent_dikE",codeBlockTitle:"codeBlockTitle_L2Hc",codeBlock:"codeBlock_mHbI",codeBlockStandalone:"codeBlockStandalone_aGPC",codeBlockLines:"codeBlockLines_znEV",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_qzRx",buttonGroup:"buttonGroup_qmNP"};function he(e){let{children:t,className:n}=e;return(0,o.jsx)(ue,{as:"pre",tabIndex:0,className:(0,l.A)(me.codeBlockStandalone,"thin-scrollbar",n),children:(0,o.jsx)("code",{className:me.codeBlockLines,children:t})})}var fe=n(1367);const pe={attributes:!0,characterData:!0,childList:!0,subtree:!0};function be(e,t){const[n,a]=(0,s.useState)(),i=(0,s.useCallback)((()=>{a(e.current?.closest("[role=tabpanel][hidden]"))}),[e,a]);(0,s.useEffect)((()=>{i()}),[i]),function(e,t,n){void 0===n&&(n=pe);const a=(0,fe._q)(t),i=(0,fe.Be)(n);(0,s.useEffect)((()=>{const t=new MutationObserver(a);return e&&t.observe(e,i),()=>t.disconnect()}),[e,a,i])}(n,(e=>{e.forEach((e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),i())}))}),{attributes:!0,characterData:!1,childList:!1,subtree:!1})}var xe=n(3477);const ge={codeLine:"codeLine_Hu6L",codeLineNumber:"codeLineNumber_tWSx",codeLineContent:"codeLineContent_ZGp0"};function ve(e){let{line:t,classNames:n,showLineNumbers:s,getLineProps:a,getTokenProps:i}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");const r=a({line:t,className:(0,l.A)(n,s&&ge.codeLine)}),c=t.map(((e,t)=>(0,o.jsx)("span",{...i({token:e})},t)));return(0,o.jsxs)("span",{...r,children:[s?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{className:ge.codeLineNumber}),(0,o.jsx)("span",{className:ge.codeLineContent,children:c})]}):c,(0,o.jsx)("br",{})]})}function je(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{fill:"currentColor",d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})})}function ke(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"})})}const Ne={copyButtonCopied:"copyButtonCopied_FCOZ",copyButtonIcons:"copyButtonIcons_bnsA",copyButtonIcon:"copyButtonIcon_WgLZ",copyButtonSuccessIcon:"copyButtonSuccessIcon_NVAE"};function ye(e){let{code:t,className:n}=e;const[a,i]=(0,s.useState)(!1),r=(0,s.useRef)(void 0),c=(0,s.useCallback)((()=>{!function(e,t){let{target:n=document.body}=void 0===t?{}:t;if("string"!=typeof e)throw new TypeError(`Expected parameter \`text\` to be a \`string\`, got \`${typeof e}\`.`);const s=document.createElement("textarea"),a=document.activeElement;s.value=e,s.setAttribute("readonly",""),s.style.contain="strict",s.style.position="absolute",s.style.left="-9999px",s.style.fontSize="12pt";const i=document.getSelection(),o=i.rangeCount>0&&i.getRangeAt(0);n.append(s),s.select(),s.selectionStart=0,s.selectionEnd=e.length;let r=!1;try{r=document.execCommand("copy")}catch{}s.remove(),o&&(i.removeAllRanges(),i.addRange(o)),a&&a.focus()}(t),i(!0),r.current=window.setTimeout((()=>{i(!1)}),1e3)}),[t]);return(0,s.useEffect)((()=>()=>window.clearTimeout(r.current)),[]),(0,o.jsx)("button",{type:"button","aria-label":a?(0,d.T)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,d.T)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,d.T)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,l.A)("clean-btn",n,Ne.copyButton,a&&Ne.copyButtonCopied),onClick:c,children:(0,o.jsxs)("span",{className:Ne.copyButtonIcons,"aria-hidden":"true",children:[(0,o.jsx)(je,{className:Ne.copyButtonIcon}),(0,o.jsx)(ke,{className:Ne.copyButtonSuccessIcon})]})})}function Ce(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"})})}const we={wordWrapButtonIcon:"wordWrapButtonIcon_mO86",wordWrapButtonEnabled:"wordWrapButtonEnabled_iBMN"};function Ae(e){let{className:t,onClick:n,isEnabled:s}=e;const a=(0,d.T)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return(0,o.jsx)("button",{type:"button",onClick:n,className:(0,l.A)("clean-btn",t,s&&we.wordWrapButtonEnabled),"aria-label":a,title:a,children:(0,o.jsx)(Ce,{className:we.wordWrapButtonIcon,"aria-hidden":"true"})})}function Le(e){let{children:t,className:n="",metastring:a,title:i,showLineNumbers:r,language:c}=e;const{prism:{defaultLanguage:d,magicComments:u}}=(0,E.p)(),m=function(e){return e?.toLowerCase()}(c??function(e){const t=e.split(" ").find((e=>e.startsWith("language-")));return t?.replace(/language-/,"")}(n)??d),h=ee(),f=function(){const[e,t]=(0,s.useState)(!1),[n,a]=(0,s.useState)(!1),i=(0,s.useRef)(null),o=(0,s.useCallback)((()=>{const n=i.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t((e=>!e))}),[i,e]),r=(0,s.useCallback)((()=>{const{scrollWidth:e,clientWidth:t}=i.current,n=e>t||i.current.querySelector("code").hasAttribute("style");a(n)}),[i]);return be(i,r),(0,s.useEffect)((()=>{r()}),[e,r]),(0,s.useEffect)((()=>(window.addEventListener("resize",r,{passive:!0}),()=>{window.removeEventListener("resize",r)})),[r]),{codeBlockRef:i,isEnabled:e,isCodeScrollable:n,toggle:o}}(),p=function(e){return e?.match(se)?.groups.title??""}(a)||i,{lineClassNames:b,code:x}=ce(t,{metastring:a,language:m,magicComments:u}),g=r??function(e){return Boolean(e?.includes("showLineNumbers"))}(a);return(0,o.jsxs)(ue,{as:"div",className:(0,l.A)(n,m&&!n.includes(`language-${m}`)&&`language-${m}`),children:[p&&(0,o.jsx)("div",{className:me.codeBlockTitle,children:p}),(0,o.jsxs)("div",{className:me.codeBlockContent,children:[(0,o.jsx)(xe.f4,{theme:h,code:x,language:m??"text",children:e=>{let{className:t,style:n,tokens:s,getLineProps:a,getTokenProps:i}=e;return(0,o.jsx)("pre",{tabIndex:0,ref:f.codeBlockRef,className:(0,l.A)(t,me.codeBlock,"thin-scrollbar"),style:n,children:(0,o.jsx)("code",{className:(0,l.A)(me.codeBlockLines,g&&me.codeBlockLinesWithNumbering),children:s.map(((e,t)=>(0,o.jsx)(ve,{line:e,getLineProps:a,getTokenProps:i,classNames:b[t],showLineNumbers:g},t)))})})}}),(0,o.jsxs)("div",{className:me.buttonGroup,children:[(f.isEnabled||f.isCodeScrollable)&&(0,o.jsx)(Ae,{className:me.codeButton,onClick:()=>f.toggle(),isEnabled:f.isEnabled}),(0,o.jsx)(ye,{className:me.codeButton,code:x})]})]})]})}function Ee(e){let{children:t,...n}=e;const a=(0,K.A)(),i=function(e){return s.Children.toArray(e).some((e=>(0,s.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),r="string"==typeof i?Le:he;return(0,o.jsx)(r,{...n,children:i},String(a))}function Be(e){return(0,o.jsx)("code",{...e})}var Te=n(9102);const Se={details:"details_tB_N",isBrowser:"isBrowser_H34u",collapsibleContent:"collapsibleContent_zY8v"};function _e(e){return!!e&&("SUMMARY"===e.tagName||_e(e.parentElement))}function Ie(e,t){return!!e&&(e===t||Ie(e.parentElement,t))}function Me(e){let{summary:t,children:n,...a}=e;(0,Te.A)().collectAnchor(a.id);const i=(0,K.A)(),r=(0,s.useRef)(null),{collapsed:c,setCollapsed:d}=(0,L.u)({initialState:!a.open}),[u,m]=(0,s.useState)(a.open),h=s.isValidElement(t)?t:(0,o.jsx)("summary",{children:t??"Details"});return(0,o.jsxs)("details",{...a,ref:r,open:u,"data-collapsed":c,className:(0,l.A)(Se.details,i&&Se.isBrowser,a.className),onMouseDown:e=>{_e(e.target)&&e.detail>1&&e.preventDefault()},onClick:e=>{e.stopPropagation();const t=e.target;_e(t)&&Ie(t,r.current)&&(e.preventDefault(),c?(d(!1),m(!0)):d(!0))},children:[h,(0,o.jsx)(L.N,{lazy:!1,collapsed:c,disableSSRStyle:!0,onCollapseTransitionEnd:e=>{d(e),m(!e)},children:(0,o.jsx)("div",{className:Se.collapsibleContent,children:n})})]})}const He={details:"details_qjPS"},Re="alert alert--info";function ze(e){let{...t}=e;return(0,o.jsx)(Me,{...t,className:(0,l.A)(Re,He.details,t.className)})}function Ue(e){const t=s.Children.toArray(e.children),n=t.find((e=>s.isValidElement(e)&&"summary"===e.type)),a=(0,o.jsx)(o.Fragment,{children:t.filter((e=>e!==n))});return(0,o.jsx)(ze,{...e,summary:n,children:a})}function $e(e){return(0,o.jsx)(J.A,{...e})}const Oe={containsTaskList:"containsTaskList_1zqx"};function Ve(e){if(void 0!==e)return(0,l.A)(e,e?.includes("contains-task-list")&&Oe.containsTaskList)}const De={img:"img_yzzE"};function Fe(e){const{mdxAdmonitionTitle:t,rest:n}=function(e){const t=s.Children.toArray(e),n=t.find((e=>s.isValidElement(e)&&"mdxAdmonitionTitle"===e.type)),a=t.filter((e=>e!==n)),i=n?.props.children;return{mdxAdmonitionTitle:i,rest:a.length>0?(0,o.jsx)(o.Fragment,{children:a}):null}}(e.children),a=e.title??t;return{...e,...a&&{title:a},children:n}}const Pe={admonition:"admonition_h_cf",admonitionHeading:"admonitionHeading_goNb",admonitionIcon:"admonitionIcon_Hr0w",admonitionContent:"admonitionContent_mlf7"};function Ge(e){let{type:t,className:n,children:s}=e;return(0,o.jsx)("div",{className:(0,l.A)(x.G.common.admonition,x.G.common.admonitionType(t),Pe.admonition,n),children:s})}function qe(e){let{icon:t,title:n}=e;return(0,o.jsxs)("div",{className:Pe.admonitionHeading,children:[(0,o.jsx)("span",{className:Pe.admonitionIcon,children:t}),n]})}function We(e){let{children:t}=e;return t?(0,o.jsx)("div",{className:Pe.admonitionContent,children:t}):null}function Ze(e){const{type:t,icon:n,title:s,children:a,className:i}=e;return(0,o.jsxs)(Ge,{type:t,className:i,children:[s||n?(0,o.jsx)(qe,{title:s,icon:n}):null,(0,o.jsx)(We,{children:a})]})}function Je(e){return(0,o.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"})})}const Xe={icon:(0,o.jsx)(Je,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)",children:"note"})};function Ye(e){return(0,o.jsx)(Ze,{...Xe,...e,className:(0,l.A)("alert alert--secondary",e.className),children:e.children})}function Ke(e){return(0,o.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"})})}const Qe={icon:(0,o.jsx)(Ke,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)",children:"tip"})};function et(e){return(0,o.jsx)(Ze,{...Qe,...e,className:(0,l.A)("alert alert--success",e.className),children:e.children})}function tt(e){return(0,o.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"})})}const nt={icon:(0,o.jsx)(tt,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)",children:"info"})};function st(e){return(0,o.jsx)(Ze,{...nt,...e,className:(0,l.A)("alert alert--info",e.className),children:e.children})}function at(e){return(0,o.jsx)("svg",{viewBox:"0 0 16 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"})})}const it={icon:(0,o.jsx)(at,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.warning",description:"The default label used for the Warning admonition (:::warning)",children:"warning"})};function ot(e){return(0,o.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M5.05.31c.81 2.17.41 3.38-.52 4.31C3.55 5.67 1.98 6.45.9 7.98c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.31 8.68 2.45 5.05.32L5.03.3l.02.01z"})})}const rt={icon:(0,o.jsx)(ot,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)",children:"danger"})};const lt={icon:(0,o.jsx)(at,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)",children:"caution"})};const ct={...{note:Ye,tip:et,info:st,warning:function(e){return(0,o.jsx)(Ze,{...it,...e,className:(0,l.A)("alert alert--warning",e.className),children:e.children})},danger:function(e){return(0,o.jsx)(Ze,{...rt,...e,className:(0,l.A)("alert alert--danger",e.className),children:e.children})}},...{secondary:e=>(0,o.jsx)(Ye,{title:"secondary",...e}),important:e=>(0,o.jsx)(st,{title:"important",...e}),success:e=>(0,o.jsx)(et,{title:"success",...e}),caution:function(e){return(0,o.jsx)(Ze,{...lt,...e,className:(0,l.A)("alert alert--warning",e.className),children:e.children})}}};function dt(e){const t=Fe(e),n=(s=t.type,ct[s]||(console.warn(`No admonition component found for admonition type "${s}". Using Info as fallback.`),ct.info));var s;return(0,o.jsx)(n,{...t})}const ut={Head:Y.A,details:Ue,Details:Ue,code:function(e){return function(e){return void 0!==e.children&&s.Children.toArray(e.children).every((e=>"string"==typeof e&&!e.includes("\n")))}(e)?(0,o.jsx)(Be,{...e}):(0,o.jsx)(Ee,{...e})},a:function(e){return(0,o.jsx)(u.A,{...e})},pre:function(e){return(0,o.jsx)(o.Fragment,{children:e.children})},ul:function(e){return(0,o.jsx)("ul",{...e,className:Ve(e.className)})},li:function(e){return(0,Te.A)().collectAnchor(e.id),(0,o.jsx)("li",{...e})},img:function(e){return(0,o.jsx)("img",{decoding:"async",loading:"lazy",...e,className:(t=e.className,(0,l.A)(t,De.img))});var t},h1:e=>(0,o.jsx)($e,{as:"h1",...e}),h2:e=>(0,o.jsx)($e,{as:"h2",...e}),h3:e=>(0,o.jsx)($e,{as:"h3",...e}),h4:e=>(0,o.jsx)($e,{as:"h4",...e}),h5:e=>(0,o.jsx)($e,{as:"h5",...e}),h6:e=>(0,o.jsx)($e,{as:"h6",...e}),admonition:dt,mermaid:()=>null};function mt(e){let{children:t}=e;return(0,o.jsx)(X.x,{components:ut,children:t})}function ht(e){let{children:t}=e;const n=function(){const{metadata:e,frontMatter:t,contentTitle:n}=(0,i.u)();return t.hide_title||void 0!==n?null:e.title}();return(0,o.jsxs)("div",{className:(0,l.A)(x.G.docs.docMarkdown,"markdown"),children:[n&&(0,o.jsx)("header",{children:(0,o.jsx)(J.A,{as:"h1",children:n})}),(0,o.jsx)(mt,{children:t})]})}var ft=n(2847),pt=n(8988),bt=n(7437);function xt(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"})})}const gt={breadcrumbHomeIcon:"breadcrumbHomeIcon_sXAL"};function vt(){const e=(0,bt.Ay)("/");return(0,o.jsx)("li",{className:"breadcrumbs__item",children:(0,o.jsx)(u.A,{"aria-label":(0,d.T)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:"breadcrumbs__link",href:e,children:(0,o.jsx)(xt,{className:gt.breadcrumbHomeIcon})})})}const jt={breadcrumbsContainer:"breadcrumbsContainer_FUiM"};function kt(e){let{children:t,href:n,isLast:s}=e;const a="breadcrumbs__link";return s?(0,o.jsx)("span",{className:a,itemProp:"name",children:t}):n?(0,o.jsx)(u.A,{className:a,href:n,itemProp:"item",children:(0,o.jsx)("span",{itemProp:"name",children:t})}):(0,o.jsx)("span",{className:a,children:t})}function Nt(e){let{children:t,active:n,index:s,addMicrodata:a}=e;return(0,o.jsxs)("li",{...a&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},className:(0,l.A)("breadcrumbs__item",{"breadcrumbs__item--active":n}),children:[t,(0,o.jsx)("meta",{itemProp:"position",content:String(s+1)})]})}function yt(){const e=(0,ft.OF)(),t=(0,pt.Dt)();return e?(0,o.jsx)("nav",{className:(0,l.A)(x.G.docs.docBreadcrumbs,jt.breadcrumbsContainer),"aria-label":(0,d.T)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"}),children:(0,o.jsxs)("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList",children:[t&&(0,o.jsx)(vt,{}),e.map(((t,n)=>{const s=n===e.length-1,a="category"===t.type&&t.linkUnlisted?void 0:t.href;return(0,o.jsx)(Nt,{active:s,index:n,addMicrodata:!!a,children:(0,o.jsx)(kt,{href:a,isLast:s,children:t.label})},n)}))]})}):null}function Ct(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.unlistedBanner.title",description:"The unlisted content banner title",children:"Unlisted page"})}function wt(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.unlistedBanner.message",description:"The unlisted content banner message",children:"This page is unlisted. Search engines will not index it, and only users having a direct link can access it."})}function At(){return(0,o.jsx)(Y.A,{children:(0,o.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})}function Lt(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.draftBanner.title",description:"The draft content banner title",children:"Draft page"})}function Et(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.draftBanner.message",description:"The draft content banner message",children:"This page is a draft. It will only be visible in dev and be excluded from the production build."})}function Bt(e){let{className:t}=e;return(0,o.jsx)(dt,{type:"caution",title:(0,o.jsx)(Lt,{}),className:(0,l.A)(t,x.G.common.draftBanner),children:(0,o.jsx)(Et,{})})}function Tt(e){let{className:t}=e;return(0,o.jsx)(dt,{type:"caution",title:(0,o.jsx)(Ct,{}),className:(0,l.A)(t,x.G.common.unlistedBanner),children:(0,o.jsx)(wt,{})})}function St(e){return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(At,{}),(0,o.jsx)(Tt,{...e})]})}function _t(e){let{metadata:t}=e;const{unlisted:n,frontMatter:s}=t;return(0,o.jsxs)(o.Fragment,{children:[(n||s.unlisted)&&(0,o.jsx)(St,{}),s.draft&&(0,o.jsx)(Bt,{})]})}const It={docItemContainer:"docItemContainer_Mvrd",docItemCol:"docItemCol_nv1l"};function Mt(e){let{children:t}=e;const n=function(){const{frontMatter:e,toc:t}=(0,i.u)(),n=(0,c.l)(),s=e.hide_table_of_contents,a=!s&&t.length>0;return{hidden:s,mobile:a?(0,o.jsx)(F,{}):void 0,desktop:!a||"desktop"!==n&&"ssr"!==n?void 0:(0,o.jsx)(Z,{})}}(),{metadata:s}=(0,i.u)();return(0,o.jsxs)("div",{className:"row",children:[(0,o.jsxs)("div",{className:(0,l.A)("col",!n.hidden&&It.docItemCol),children:[(0,o.jsx)(_t,{metadata:s}),(0,o.jsx)(C,{}),(0,o.jsxs)("div",{className:It.docItemContainer,children:[(0,o.jsxs)("article",{children:[(0,o.jsx)(yt,{}),(0,o.jsx)(w,{}),n.mobile,(0,o.jsx)(ht,{children:t}),(0,o.jsx)(A.A,{})]}),(0,o.jsx)(f,{})]})]}),n.desktop&&(0,o.jsx)("div",{className:"col col--3",children:n.desktop})]})}function Ht(e){const t=`docs-doc-id-${e.content.metadata.id}`,n=e.content;return(0,o.jsx)(i._,{content:e.content,children:(0,o.jsxs)(a.e3,{className:t,children:[(0,o.jsx)(r,{}),(0,o.jsx)(Mt,{children:(0,o.jsx)(n,{})})]})})}},4809:(e,t)=>{function n(e){let t,n=[];for(let s of e.split(",").map((e=>e.trim())))if(/^-?\d+$/.test(s))n.push(parseInt(s,10));else if(t=s.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,s,a,i]=t;if(s&&i){s=parseInt(s),i=parseInt(i);const e=s<i?1:-1;"-"!==a&&".."!==a&&"\u2025"!==a||(i+=e);for(let t=s;t!==i;t+=e)n.push(t)}}return n}t.default=n,e.exports=n},2041:(e,t,n)=>{"use strict";n.d(t,{D1:()=>P,MB:()=>G,l6:()=>U,vN:()=>_});var s=n(758),a=n(6070),i=n(8143);function o(e,t){if(!e||"$auto"===e)return t?.toString()||(typeof window<"u"?window.location.href:"/");if("$path"===e){"string"==typeof t&&(t=new URL(t));let e=t||(typeof window<"u"?window.location:void 0);return e?`${e.origin}${e.pathname}`:"/"}return e}var r="fbs-store";function l(e){return"contentId"in e?e.contentId:`${e.contentSetId}/${o(e.key)}`}var c,d,u=class{constructor(e){if(this.feelbacks=void 0,e??="local",typeof window>"u"&&(e="memory"),"local"===e)this.storage=window.localStorage;else if("session"===e)this.storage=window.sessionStorage;else{let e=()=>{};this.storage={getItem:e,setItem:e,removeItem:e,clear:e,key:e,length:0}}this.load()}add(e){let t=l(e.target),n=(this.feelbacks??=[]).findIndex((e=>e.key===t));n>=0&&this.feelbacks.splice(n,1),this.feelbacks.push({key:t,value:e.value,expire:e.expireIn&&e.expireIn>0?Math.floor(Date.now()/1e3)+e.expireIn:void 0,feelbackId:e.feelbackId,revokeToken:e.revokable?.token,revokeExpire:e.revokable?.expireAt&&Math.floor(new Date(e.revokable.expireAt).getTime()/1e3)||void 0}),this.save()}clear(){this.feelbacks?.splice(0,this.feelbacks.length),this.storage.removeItem(r)}remove(e){let t="string"==typeof e?this.feelbacks?.findIndex((t=>t.feelbackId===e)):(e=l(e),this.feelbacks?.findIndex((t=>t.key===e)));void 0!==t&&t>=0&&(this.feelbacks.splice(t,1),this.save())}getValue(e){return this.getFeelback(e)?.value}isRevokable(e){return!!this.getRevocable(e)}getRevocable(e){let t=this.getFeelback(e);if(t&&t.revokeToken&&!(t.revokeExpire&&t.revokeExpire<Date.now()/1e3))return{feelbackId:t.feelbackId,revokeToken:t.revokeToken}}load(e){if(this.feelbacks&&!e)return;let t;try{t=JSON.parse(this.storage.getItem(r))||[]}catch{t=[]}this.feelbacks=t.filter((e=>!e.expire||e.expire>Date.now()/1e3)),t.length!==this.feelbacks.length&&this.save()}save(){try{this.storage.setItem(r,JSON.stringify(this.feelbacks))}catch{}}getFeelback(e){let t="string"==typeof e?this.feelbacks?.find((t=>t.feelbackId===e)):(e=l(e),this.feelbacks?.find((t=>t.key===e)));if(!(t&&t.expire&&t.expire<Date.now()/1e3))return t;this.remove(t.feelbackId)}};function m(e){return e??=d||"local",c&&d===e?c:(d=e,c=new u(e))}async function h(e){if((e=await e).status>=400)throw new Error("[feelback] API error");if(204!==e.status)return await e.json()}var f={get:async function(e,...t){return t.length>0&&(e=`${e}?$p=${JSON.stringify(t)}`),await h(fetch(e,{method:"GET"}))},post:async function(e,...t){return await h(fetch(e,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(t)}))}},p="https://api.feelback.dev/v0";var b=(0,s.createContext)(void 0);function x(){return(0,s.useContext)(b)}var g=()=>{let e=(0,s.useRef)(!1);return(0,s.useEffect)((()=>(e.current=!0,()=>{e.current=!1})),[]),()=>e.current};function v(e=5e3,t,n){(0,s.useEffect)((()=>{if(t)return function(e,t){let n=setTimeout(t,e);return()=>clearTimeout(n)}(e,(()=>n(t)))}),[t])}function j(e=5e3,t=!1){let n=(0,s.useRef)(t),[a,i]=(0,s.useState)(),o=(0,s.useCallback)((()=>r(n.current)),[]),r=(0,s.useCallback)((e=>i(e??!0)),[]);return v(e,a,o),{value:a,set:r,reset:o}}function k(e,t){let n=(0,s.useRef)(null);return(0,s.useEffect)((()=>{if(e&&t){let e=e=>{(!e.target||!n.current?.contains(e.target))&&(t(),e.stopPropagation(),e.preventDefault())};return document.addEventListener("click",e,{capture:!0}),()=>document.removeEventListener("click",e,{capture:!0})}}),[e]),n}var N={data:void 0,isLoading:!1,isCompleted:!1,isSuccess:!1,isError:!1,error:void 0};function y(e,t,n){let a=(0,s.useRef)(0),i=g(),o=!!n?.paused,r=!!t&&!o,[l,c]=(0,s.useReducer)(C,r,(e=>({...N,isLoading:e})));async function d(...t){let n=++a.current;try{l.isLoading||c({type:"LOADING"});let s=await e(...t);return i()&&n===a.current&&c({type:"SUCCESS",data:s}),C(l,{type:"SUCCESS",data:s})}catch(s){return i()&&n===a.current&&c({type:"ERROR",error:s}),C(l,{type:"ERROR",error:s})}}return(0,s.useEffect)((()=>{!o&&t&&d()}),[o,...t||[]]),{...l,call:d,exec:async(...e)=>{let t=await d(...e);if(t.error)throw t.error;return t.data},reset:()=>{c({type:"RESET"})}}}function C(e,t){switch(t.type){case"LOADING":return{...N,isLoading:!0,data:e.data};case"SUCCESS":return{...N,isCompleted:!0,isSuccess:!0,data:t.data};case"ERROR":return{...N,isCompleted:!0,error:t.error,isError:!0};case"RESET":return{...N};default:throw new Error("unknown action")}}function w(){let e=(0,s.useRef)("");return e.current||(e.current="i"+Math.random().toString().substring(2)),e.current}function A(e){if("function"==typeof e)return(0,s.createElement)(e);if("object"==typeof e&&"text"in e)return(0,s.createElement)(s.Fragment,void 0,[e.text]);if((0,s.isValidElement)(e))return e;throw console.error("Invalid icon",e),new Error("Invalid icon")}function L(e,t){return e&&t?function(){e.apply(this,arguments),t.apply(this,arguments)}:e||t}function E(e){let{count:t=!1,isActive:n=!1,isDisabled:s=!1,label:i,title:o,icon:r,onClick:l}=e;return(0,a.jsxs)("button",{title:o,className:`feelback-btn ${s?"disabled":""} ${n?"active":""}`,onClick:l,children:[r&&(Array.isArray(r)?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"feelback-icon inactive",children:A(r[0])}),(0,a.jsx)("span",{className:"feelback-icon active",children:A(r[1])})]}):(0,a.jsx)("span",{className:"feelback-icon",children:A(r)})),i&&(0,a.jsx)("span",{className:"label",children:i}),!1!==t&&(0,a.jsx)("span",{className:"feelback-count",children:t})]})}function B(e){let{active:t,showCount:n=!1,showLabels:s=!1,showTitle:i=!s,hideZero:o=!1,hideZeroCount:r=!0,isDisabled:l=!1,items:c,counts:d,onClick:u}=e;return(0,a.jsx)("div",{className:"feelback-buttons"+(n&&c.length>1?" with-count":""),children:c.map((({value:e,icon:c,title:m},h)=>{let f=d?.[h]||(t===e?1:0);return o&&f<=0?null:(0,a.jsx)(E,{title:i&&m||void 0,label:s&&m||void 0,icon:c,count:n&&f||(r?void 0:0),isDisabled:l,isActive:t===e,onClick:()=>u?.(e)},e)}))})}function T(e){let{group:t,value:n,label:s,description:i,checked:o,onSelected:r}=e,l=`radio-${w()}`;return(0,a.jsxs)("div",{className:"feelback-radio-item",children:[(0,a.jsx)("input",{id:l,name:t,type:"radio",value:n,checked:o,onChange:e=>e.target.checked?r?.():void 0}),(0,a.jsxs)("div",{className:"feelback-radio-side",children:[s&&(0,a.jsx)("label",{htmlFor:l,children:s}),i&&(0,a.jsx)("span",{className:"feelback-text",children:i})]})]})}function S(e){let{active:t,isDisabled:n=!1,items:s,onRenderAddon:i,onSelected:o}=e,r=`rg-${w()}`;return(0,a.jsx)("fieldset",{className:"feelback-radio-group",children:s.map((e=>(0,a.jsxs)("div",{className:"feelback-radio-item-wrap",children:[(0,a.jsx)(T,{group:r,checked:t===e.value,value:e.value,label:e.title,description:e.description,onSelected:()=>o?.(e.value)}),i?.({item:e,isSelected:t===e.value,isDisabled:n})||null]},e.value)))})}function _(e){let{text:t,...n}=e;return(0,a.jsxs)("div",{className:"feelback-q",children:[t&&"string"==typeof t&&(0,a.jsx)("span",{className:"feelback-text",children:t}),t&&(0,s.isValidElement)(t)&&t,(0,a.jsx)(B,{...n})]})}function I(e){let{text:t}=e;return(0,a.jsx)("div",{className:"feelback-a",children:(0,a.jsx)("span",{className:"feelback-text",children:t})})}var M=(0,s.forwardRef)(((e,t)=>{let{className:n,layout:i,label:o="Send feedback",textAnswer:r="Thanks for your feedback",revokable:l=!0,onClose:c,onSuccess:d,children:u,...m}=e,{call:h,isSuccess:f}=O(m),{value:p,set:b}=j(1e3),x=({value:e,metadata:t})=>{b(!0),h(e,{metadata:t,revokable:l}).then((({isSuccess:t})=>{t&&d?.({...m,value:e})}))};return(0,a.jsxs)("div",{ref:t,className:"feelback-container"+(n?" "+n:""),style:{pointerEvents:p?"none":void 0},children:[!f&&(()=>{switch(i){case"button-switch":return(0,a.jsx)(H,{label:o,behavior:"remove-when-open",children:e=>(0,s.cloneElement)(u,{onSubmit:x,onCancel:e})});case"button-dialog":return(0,a.jsx)(H,{label:o,behavior:"disable-when-open",children:e=>(0,a.jsx)(R,{onClose:e,children:(0,s.cloneElement)(u,{onSubmit:x,onCancel:e})})});case"radio-group-dialog":return(0,a.jsx)(R,{onClose:c,children:(0,s.cloneElement)(u,{onSubmit:x,onCancel:L(u.props.onCancel,c)})});default:return(0,s.cloneElement)(u,{onSubmit:x})}})(),f&&(0,a.jsx)(I,{text:r})]})}));function H(e){let{label:t,behavior:n="remove-when-open",children:i}=e,[o,r]=(0,s.useState)(!1);return(0,a.jsxs)(a.Fragment,{children:[(!o||"remove-when-open"!==n)&&(0,a.jsx)("button",{className:"feelback-btn btn-action trigger-btn",disabled:o,onClick:()=>r(!0),children:t}),o&&i((()=>r(!1)))]})}function R(e){let{onClose:t,children:n}=e,o=k(!0,t);return(0,i.createPortal)((0,a.jsx)("div",{className:"feelback-style",children:(0,a.jsx)("div",{className:"dialog",children:(0,s.cloneElement)(n,{ref:o})})}),document.body)}var z=(0,s.forwardRef)(((e,t)=>{let{title:n="Send feedback",alignButton:s="right",showButton:i=!0,onCancel:o,onSubmit:r,onValidate:l,slots:c,children:d}=e;return(0,a.jsx)("div",{ref:t,className:"feelback-form",children:(0,a.jsxs)("div",{className:"content",children:[n&&(0,a.jsx)("span",{className:"feelback-text form-title",children:n}),d,i&&c?.BeforeFormButtons,i&&(0,a.jsxs)("div",{className:"form-buttons feelback-buttons "+("right"===s?"align-end":""),children:[(0,a.jsx)("button",{className:"feelback-btn btn-action",onClick:()=>{let e=l();void 0!==e&&r?.(e)},children:"Send"}),o&&(0,a.jsx)("button",{className:"feelback-btn btn-cancel",onClick:o,children:"Cancel"})]})]})})}));(0,s.forwardRef)(((e,t)=>{let{title:n="Send feedback",placeholder:i="Type your message",minLength:o,maxLength:r,withEmail:l,placeholderEmail:c="your@email.com"+(l&&"required"!==l?" (optional)":""),slots:d,onCancel:u,onSubmit:m}=e,h=(0,s.useRef)(null),f="required"===l,p=(0,s.useRef)(null);return(0,a.jsxs)(z,{slots:d,title:n,onCancel:u,onSubmit:m,ref:t,onValidate:()=>{let e=h.current?.value.trim()||void 0,t=p.current?.value?.trim()||void 0;if(e&&!(o&&o>0&&e.length<o)&&!(t&&!t.match(/^(.+)@(.+)$/)||f))return{value:e,metadata:t?{$user:t}:void 0}},children:[d?.BeforeMessage,(0,a.jsx)("textarea",{ref:h,required:!0,placeholder:i||void 0,minLength:o,maxLength:r}),l&&(0,a.jsxs)(a.Fragment,{children:[d?.BeforeEmail,(0,a.jsx)("input",{ref:p,type:"email",name:"email",required:f,placeholder:c||void 0})]})]})}));function U(e){let{layout:t="button-switch",label:n="Send feedback",revokable:s,preset:i,tags:o=i,active:r,title:l,placeholder:c,minLength:d,maxLength:u,textAnswer:m="Thanks for your feedback",showLabels:h=!1,style:f,withEmail:p,placeholderEmail:b,onCancel:x,onSuccess:g,slots:v,...j}=e;if(!o)return console.warn("Missing tags"),null;let k=f&&Array.isArray(f)?f.join(" "):f||void 0;return(0,a.jsx)(M,{className:`feelback-tagged-message layout-${t} ${k}`,layout:t,label:n,revokable:s,onSuccess:g,...j,children:(0,a.jsx)($,{title:l,tags:o,showLabels:h,placeholder:c,minLength:d,maxLength:u,withEmail:p,placeholderEmail:b,onCancel:x,slots:v,layout:"reveal-message"===t?t:"radio-group"===t||"radio-group-dialog"===t?"radio-group":"form"})})}var $=(0,s.forwardRef)(((e,t)=>{let{layout:n,title:i="Send feedback",active:o,tags:r,showLabels:l=!0,placeholder:c="Type your message",minLength:d,maxLength:u,withEmail:m,placeholderEmail:h="your@email.com"+(m&&"required"!==m?" (optional)":""),slots:f,onCancel:p,onSubmit:b}=e,x=!!d&&d>0,g=(0,s.useRef)(null),v="required"===m,j=(0,s.useRef)(null),[k,N]=(0,s.useState)("$auto"===o?r[0].value:o),y=(0,a.jsxs)(a.Fragment,{children:[f?.BeforeMessage,(0,a.jsx)("textarea",{ref:g,required:x,placeholder:c||void 0,minLength:d,maxLength:u})]}),C=m&&(0,a.jsxs)(a.Fragment,{children:[f?.BeforeEmail,(0,a.jsx)("input",{ref:j,type:"email",name:"email",required:v,placeholder:h||void 0})]});return(0,a.jsxs)(z,{onCancel:p,onSubmit:b,ref:t,onValidate:()=>{let e=g.current?.value?.trim()||void 0,t=j.current?.value?.trim()||void 0;if(k&&(!x||e&&!(e.length<d))&&!(t&&!t.match(/^(.+)@(.+)$/)||v))return{value:{tag:k,message:e},metadata:t?{$user:t}:void 0}},title:"reveal-message"!==n&&i,showButton:"reveal-message"!==n||!!k,alignButton:"radio-group"===n?"left":"right",slots:f,children:["form"===n&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(B,{items:r,showLabels:l,active:k,onClick:N}),y,C]}),"radio-group"===n&&(0,a.jsx)(S,{items:r,active:k,onSelected:N,onRenderAddon:({isSelected:e})=>e&&(0,a.jsxs)(a.Fragment,{children:[y,C]})}),"reveal-message"===n&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(_,{text:i,items:r,showLabels:l,active:k,onClick:N}),k&&(0,a.jsxs)(a.Fragment,{children:[y,C]})]})]})}));function O(e){let t=x(),n=V(e);return y(((e,s)=>async function(e){let{endpoint:t=p,store:n="local",revokable:s=!0,value:a,metadata:i,expireIn:r=3600}=e,l="contentId"in e?{contentId:e.contentId}:{contentSetId:e.contentSetId,key:o(e.key)},c=n&&"none"!==n&&m(n)||void 0,d=s&&c?.getRevocable(l)||void 0,u=d?await f.post(`${t}/feelbacks/edit`,{...d,value:a}):await f.post(`${t}/feelbacks/create`,{...l,value:a,context:i,revokable:s});c?.add({...u,target:l,value:a,expireIn:r})}({endpoint:t?.endpoint,store:t?.store,...s,...n,value:e})))}function V(e){let t=(0,s.useRef)(e);return t.current!==e&&("contentId"in t.current&&"contentId"in e?t.current.contentId!==e.contentId&&t.current:"contentSetId"in t.current&&"contentSetId"in e?(t.current.contentSetId!==e.contentSetId||t.current.key!==e.key)&&(t.current=e):t.current=e),t.current}var D=e=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 500 500",fill:"currentColor",width:"1em",height:"1em",...e},s.createElement("g",null,s.createElement("path",{d:"M172.7,309.1c0-7.4-3-14.6-8.3-19.9s-12.4-8.3-19.9-8.3H74.4c-10.1,0-19.3,5.4-24.4,14.1c-5.1,8.7-5,19.5,0,28.1 s14.3,14.1,24.4,14.1h70.2c7.4,0,14.6-3,19.9-8.3S172.7,316.5,172.7,309.1L172.7,309.1z"}),s.createElement("path",{d:"M102.5,449.5h70.2c10.1,0,19.3-5.4,24.4-14.1c5-8.6,5-19.5,0-28.1s-14.3-14.1-24.4-14.1h-70.2c-10.1,0-19.3,5.4-24.4,14.1 c-5,8.6-5,19.5,0,28.1C83.2,444.1,92.5,449.5,102.5,449.5z"}),s.createElement("path",{d:"M53.2,224.9h83.3c18.8,0,36.4-9.4,46.8-24.9l95.7-143.6h5c11.6,0,22.5,5.7,29.2,15.1s8.6,21.6,5,32.5l-25.4,76.5 c-1.3,3.7-0.6,7.9,1.8,11.2c2.3,3.2,6.2,5.2,10.1,5.2h65.6c14.7-0.3,28.8,6.3,37.9,17.7c5.3,6.6,8.6,14.3,9.8,22.6 c1.3,8.3,0.3,16.7-2.7,24.5l-47.6,118.7c-1.5,3.9-4.3,7.2-7.6,9.5c-3.5,2.3-7.5,3.6-11.6,3.6h-61.8l0,0c-7.1-0.3-14.2,2.2-19.7,7 c-5.4,4.6-8.9,11.2-9.9,18.4c-0.8,7.9,1.9,15.8,7.1,21.7c5.4,5.9,12.9,9.2,20.9,9.2h63.3c15.5,0,30.5-4.6,43.2-13.3 c12.8-8.6,22.7-20.9,28.5-35.2l47.6-118.8c12.8-32.1,8.8-68.5-11-97c-19.7-28.5-52.1-45.3-86.8-44.6h-4.6l5.7-17 c5.2-14.8,6.7-30.6,4.3-46.2c-3.6-21.6-14.8-41.3-31.5-55.5s-37.9-22.1-60-22h-20c-9.4,0-18.2,4.6-23.3,12.5l-104,156H54.5 c-7.1-0.1-14.1,2.3-19.6,7c-5.5,4.7-8.9,11.2-9.8,18.3c-0.8,7.9,1.9,15.8,7.1,21.7C37.8,221.4,45.2,224.9,53.2,224.9L53.2,224.9z"}))),F=e=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 500 500",fill:"currentColor",width:"1em",height:"1em",...e},s.createElement("g",null,s.createElement("path",{d:"M327.3,190.8c0,7.3,2.9,14.6,8.3,19.8c5.3,5.3,12.4,8.3,19.8,8.3h70.2c10.1,0,19.4-5.4,24.4-14c5-8.6,5-19.5,0-28.1 c-5-8.6-14.3-14-24.4-14h-70.2c-7.3,0-14.6,2.9-19.8,8.3C330.3,176.3,327.3,183.4,327.3,190.8L327.3,190.8z"}),s.createElement("path",{d:"M397.5,50.4h-70.2c-10.1,0-19.4,5.4-24.4,14c-5,8.6-5,19.5,0,28.1c5,8.6,14.3,14,24.4,14h70.2c10.1,0,19.4-5.4,24.4-14 s5-19.5,0-28.1S407.6,50.4,397.5,50.4z"}),s.createElement("path",{d:"M446.8,275.1h-83.3c-18.8,0-36.3,9.5-46.8,25l-95.7,143.6h-5c-11.6,0-22.5-5.7-29.3-15.1c-6.8-9.4-8.6-21.6-5-32.5 l25.4-76.5c1.3-3.8,0.6-7.9-1.8-11.2c-2.3-3.2-6.2-5.1-10.1-5.1h-65.5c-14.7,0.3-28.7-6.3-38.1-17.7c-5.3-6.6-8.6-14.3-9.8-22.6 c-1.3-8.3-0.3-16.6,2.7-24.5l47.6-118.8c1.6-3.9,4.2-7.2,7.6-9.5c3.5-2.3,7.5-3.6,11.6-3.6h61.8l0,0c7.1,0.3,14.2-2.3,19.7-7 c5.4-4.7,8.9-11.3,9.9-18.4c0.7-7.9-1.9-15.8-7.1-21.7c-5.4-6-12.9-9.2-20.9-9.2h-63.3c-15.5,0-30.5,4.7-43.2,13.3 C95.7,72.4,85.8,84.7,80,99L32.4,217.8c-12.8,32.1-8.8,68.5,10.9,97.1c19.7,28.6,52.1,45.2,86.8,44.7h4.7l-5.7,17.1 c-5.1,14.9-6.7,30.6-4.2,46.2c3.6,21.6,14.9,41.3,31.5,55.4s37.9,21.8,59.8,21.7h20c9.5,0,18.2-4.7,23.3-12.5l104.1-156h82.1 c7.1,0.1,14-2.3,19.6-7c5.5-4.7,8.9-11.2,9.8-18.4c0.7-7.9-1.9-15.8-7.1-21.7C462.4,278.5,454.8,275.1,446.8,275.1L446.8,275.1z"}))),P=[{value:"y",icon:D,title:"Yes"},{value:"n",icon:F,title:"No"}],G=[{value:"idea",icon:{text:"\ud83d\udca1"},title:"Idea"},{value:"error",icon:{text:"\ud83d\udca5"},title:"Error"},{value:"other",icon:{text:"\ud83d\udcac"},title:"Other"}]},5710:(e,t,n)=>{"use strict";n.d(t,{R:()=>o,x:()=>r});var s=n(758);const a={},i=s.createContext(a);function o(e){const t=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:o(e.components),s.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5af830f1.86843f19.js b/assets/js/5af830f1.b0093865.js similarity index 90% rename from assets/js/5af830f1.86843f19.js rename to assets/js/5af830f1.b0093865.js index bd595de8..d79f7f8b 100644 --- a/assets/js/5af830f1.86843f19.js +++ b/assets/js/5af830f1.b0093865.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1337],{7247:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>r,default:()=>d,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var o=n(6070),i=n(5710);const s={id:"ipfs",title:"IPFS"},r=void 0,a={id:"explore/why-not/ipfs",title:"IPFS",description:"Why not IPFS?",source:"@site/docs/01-explore/04-why-not/02-ipfs.mdx",sourceDirName:"01-explore/04-why-not",slug:"/explore/why-not/ipfs",permalink:"/explore/why-not/ipfs",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"ipfs",title:"IPFS"},sidebar:"tutorialSidebar",previous:{title:"Blockchain",permalink:"/explore/why-not/blockchain"},next:{title:"ZK",permalink:"/explore/why-not/zk"}},l={},c=[{value:"Why not IPFS?",id:"why-not-ipfs",level:2},{value:"Calimero vs IPFS",id:"calimero-vs-ipfs",level:2}];function p(e){const t={h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.h2,{id:"why-not-ipfs",children:"Why not IPFS?"}),"\n",(0,o.jsx)(t.p,{children:"IPFS is a storage solution, it's not designed for generic compute."}),"\n",(0,o.jsx)(t.h2,{id:"calimero-vs-ipfs",children:"Calimero vs IPFS"}),"\n",(0,o.jsx)(t.p,{children:"Calimero is designed to be a general-purpose compute engine that can be used to\nbuild a wide variety of applications. Also worth noting that Calimero does offer\na way to store encrypted data, effectively making it a storage solution as well."})]})}function d(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(p,{...e})}):p(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>a});var o=n(758);const i={},s=o.createContext(i);function r(e){const t=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),o.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1337],{7247:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>r,default:()=>d,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var o=n(6070),i=n(8355);const s={id:"ipfs",title:"IPFS"},r=void 0,a={id:"explore/why-not/ipfs",title:"IPFS",description:"Why not IPFS?",source:"@site/docs/01-explore/04-why-not/02-ipfs.mdx",sourceDirName:"01-explore/04-why-not",slug:"/explore/why-not/ipfs",permalink:"/explore/why-not/ipfs",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"ipfs",title:"IPFS"},sidebar:"tutorialSidebar",previous:{title:"Blockchain",permalink:"/explore/why-not/blockchain"},next:{title:"ZK",permalink:"/explore/why-not/zk"}},l={},c=[{value:"Why not IPFS?",id:"why-not-ipfs",level:2},{value:"Calimero vs IPFS",id:"calimero-vs-ipfs",level:2}];function p(e){const t={h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.h2,{id:"why-not-ipfs",children:"Why not IPFS?"}),"\n",(0,o.jsx)(t.p,{children:"IPFS is a storage solution, it's not designed for generic compute."}),"\n",(0,o.jsx)(t.h2,{id:"calimero-vs-ipfs",children:"Calimero vs IPFS"}),"\n",(0,o.jsx)(t.p,{children:"Calimero is designed to be a general-purpose compute engine that can be used to\nbuild a wide variety of applications. Also worth noting that Calimero does offer\na way to store encrypted data, effectively making it a storage solution as well."})]})}function d(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(p,{...e})}):p(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>a});var o=n(758);const i={},s=o.createContext(i);function r(e){const t=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),o.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5b892390.14d18d78.js b/assets/js/5b892390.a159f2c6.js similarity index 96% rename from assets/js/5b892390.14d18d78.js rename to assets/js/5b892390.a159f2c6.js index fb4ab0b2..72b006dd 100644 --- a/assets/js/5b892390.14d18d78.js +++ b/assets/js/5b892390.a159f2c6.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8725],{9971:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var i=t(6070),s=t(5710);const r={id:"runtime",title:"Runtime"},o=void 0,a={id:"learn/core-concepts/node/runtime",title:"Runtime",description:"The runtime environment in the Calimero Network is essential for executing",source:"@site/docs/02-learn/03-core-concepts/02-node/02-runtime.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/runtime",permalink:"/learn/core-concepts/node/runtime",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"runtime",title:"Runtime"},sidebar:"tutorialSidebar",previous:{title:"Client Node",permalink:"/learn/core-concepts/node/client-node"},next:{title:"Server",permalink:"/learn/core-concepts/node/server"}},c={},l=[{value:"Core Capabilities",id:"core-capabilities",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"The runtime environment in the Calimero Network is essential for executing\ndecentralized applications (DApps). It acts as a bridge between the application\nlogic, the network, and storage layers, ensuring seamless operation and\nintegration. The runtime ensures secure, isolated, and efficient execution of\napplications by managing resources effectively, supporting real-time event\nhandling, enabling scalability, and providing robust storage and transaction\nmanagement."}),"\n",(0,i.jsx)(n.h3,{id:"core-capabilities",children:"Core Capabilities"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Security and Isolation"}),": The runtime provides a secure execution\nenvironment for Calimero applications using WebAssembly (WASM). Each\napplication is sandboxed in the WASM VM, ensuring proper isolation and\npreventing interference between applications. This setup also ensures that\napplications cannot access unauthorized resources, maintaining a secure\nenvironment."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Multi-Application Support"}),": The runtime allows multiple applications to run\nconcurrently on the same node and supports multiple instances (contexts) of\nthe same application, each with its own state. This capability enhances the\nflexibility and scalability of the network."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Scoped Storage"}),": The runtime manages storage by partitioning it and\ngoverning where each context stores its state. These implementation details\nare abstracted from the app developer, ensuring that storage management is\nhandled seamlessly and securely."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Atomic Transactions"}),": The runtime guarantees atomic transactions, ensuring\nthat if a transaction fails, it is completely rolled back with no state\nupdates or side effects detected. This guarantees consistency and reliability\nin the application's state and any connected clients."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Log Collection and Relaying Events"}),": The runtime facilitates log collection\nand relays events emitted by the applications to connected clients, enabling\nreal-time monitoring and interaction."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Resource Management"}),": The runtime defines resource limits for applications\nto ensure fair usage and prevent malicious behavior. This includes limiting\nCPU, memory, and network usage to prevent any single application from\nmonopolizing system resources or compromising the host system."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Task Management and Performance"}),": The runtime keeps track of WASM instances\nup to a defined threshold, effortlessly queueing transactions to reuse live\ninstances and shutting down stale ones to reclaim system resources. These\noptimizations ensure efficient resource utilization and improved performance."]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(758);const s={},r=i.createContext(s);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8725],{9971:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var i=t(6070),s=t(8355);const r={id:"runtime",title:"Runtime"},o=void 0,a={id:"learn/core-concepts/node/runtime",title:"Runtime",description:"The runtime environment in the Calimero Network is essential for executing",source:"@site/docs/02-learn/03-core-concepts/02-node/02-runtime.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/runtime",permalink:"/learn/core-concepts/node/runtime",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"runtime",title:"Runtime"},sidebar:"tutorialSidebar",previous:{title:"Client Node",permalink:"/learn/core-concepts/node/client-node"},next:{title:"Server",permalink:"/learn/core-concepts/node/server"}},c={},l=[{value:"Core Capabilities",id:"core-capabilities",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"The runtime environment in the Calimero Network is essential for executing\ndecentralized applications (DApps). It acts as a bridge between the application\nlogic, the network, and storage layers, ensuring seamless operation and\nintegration. The runtime ensures secure, isolated, and efficient execution of\napplications by managing resources effectively, supporting real-time event\nhandling, enabling scalability, and providing robust storage and transaction\nmanagement."}),"\n",(0,i.jsx)(n.h3,{id:"core-capabilities",children:"Core Capabilities"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Security and Isolation"}),": The runtime provides a secure execution\nenvironment for Calimero applications using WebAssembly (WASM). Each\napplication is sandboxed in the WASM VM, ensuring proper isolation and\npreventing interference between applications. This setup also ensures that\napplications cannot access unauthorized resources, maintaining a secure\nenvironment."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Multi-Application Support"}),": The runtime allows multiple applications to run\nconcurrently on the same node and supports multiple instances (contexts) of\nthe same application, each with its own state. This capability enhances the\nflexibility and scalability of the network."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Scoped Storage"}),": The runtime manages storage by partitioning it and\ngoverning where each context stores its state. These implementation details\nare abstracted from the app developer, ensuring that storage management is\nhandled seamlessly and securely."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Atomic Transactions"}),": The runtime guarantees atomic transactions, ensuring\nthat if a transaction fails, it is completely rolled back with no state\nupdates or side effects detected. This guarantees consistency and reliability\nin the application's state and any connected clients."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Log Collection and Relaying Events"}),": The runtime facilitates log collection\nand relays events emitted by the applications to connected clients, enabling\nreal-time monitoring and interaction."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Resource Management"}),": The runtime defines resource limits for applications\nto ensure fair usage and prevent malicious behavior. This includes limiting\nCPU, memory, and network usage to prevent any single application from\nmonopolizing system resources or compromising the host system."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Task Management and Performance"}),": The runtime keeps track of WASM instances\nup to a defined threshold, effortlessly queueing transactions to reuse live\ninstances and shutting down stale ones to reclaim system resources. These\noptimizations ensure efficient resource utilization and improved performance."]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(758);const s={},r=i.createContext(s);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5e95c892.f8a47246.js b/assets/js/5e95c892.e1625ad7.js similarity index 61% rename from assets/js/5e95c892.f8a47246.js rename to assets/js/5e95c892.e1625ad7.js index 1be294f6..f18e88af 100644 --- a/assets/js/5e95c892.f8a47246.js +++ b/assets/js/5e95c892.e1625ad7.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9647],{9193:(e,s,r)=>{r.r(s),r.d(s,{default:()=>l});r(758);var c=r(3526),u=r(4804),a=r(2382),d=r(1977),n=r(6848),t=r(6070);function l(e){return(0,t.jsx)(u.e3,{className:(0,c.A)(a.G.wrapper.docsPages),children:(0,t.jsx)(n.A,{children:(0,d.v)(e.route.routes)})})}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9647],{5010:(e,s,r)=>{r.r(s),r.d(s,{default:()=>l});r(758);var c=r(3526),u=r(5212),a=r(8909),d=r(1977),n=r(4622),t=r(6070);function l(e){return(0,t.jsx)(u.e3,{className:(0,c.A)(a.G.wrapper.docsPages),children:(0,t.jsx)(n.A,{children:(0,d.v)(e.route.routes)})})}}}]); \ No newline at end of file diff --git a/assets/js/607ff301.5af792c6.js b/assets/js/607ff301.8cea052f.js similarity index 97% rename from assets/js/607ff301.5af792c6.js rename to assets/js/607ff301.8cea052f.js index 2ced31e3..f130f88d 100644 --- a/assets/js/607ff301.5af792c6.js +++ b/assets/js/607ff301.8cea052f.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7610],{5520:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>o,default:()=>d,frontMatter:()=>r,metadata:()=>c,toc:()=>l});var i=t(6070),s=t(5710);const r={id:"client-ts-sdk",title:"TypeScript Client SDK"},o=void 0,c={id:"build/client-sdks/client-ts-sdk",title:"TypeScript Client SDK",description:"Getting Started with Calimero SDK for Typescript",source:"@site/docs/04-build/02-client-sdks/02-client-ts-sdk.mdx",sourceDirName:"04-build/02-client-sdks",slug:"/build/client-sdks/client-ts-sdk",permalink:"/build/client-sdks/client-ts-sdk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"client-ts-sdk",title:"TypeScript Client SDK"},sidebar:"tutorialSidebar",previous:{title:"Rust Protocol SDK",permalink:"/build/protocol-sdks/protocol-rs-sdk"},next:{title:"Publish App",permalink:"/build/publish-app"}},a={},l=[{value:"Getting Started with Calimero SDK for Typescript",id:"getting-started-with-calimero-sdk-for-typescript",level:2},{value:"Components",id:"components",level:3},{value:"RpcClient interface",id:"rpcclient-interface",level:4},{value:"SubscriptionsClient",id:"subscriptionsclient",level:4},{value:"Examples",id:"examples",level:3},{value:"JsonRpcClient",id:"jsonrpcclient",level:4},{value:"WsSubscriptionsClient",id:"wssubscriptionsclient",level:4}];function p(e){const n={code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",pre:"pre",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"getting-started-with-calimero-sdk-for-typescript",children:"Getting Started with Calimero SDK for Typescript"}),"\n",(0,i.jsx)(n.p,{children:"Our TypeScript Client SDK is a powerful tool designed to simplify the process of\ninteracting with decentralized peer-to-peer applications installed on the node.\nIt serves as an efficient conduit for communication between the client and the\nnode\u2019s server. This SDK is particularly beneficial for developers as it\nabstracts the complexities of server communication, allowing them to concentrate\non the core application logic."}),"\n",(0,i.jsx)(n.p,{children:"The SDK is built with the modern features of TypeScript, a language that is\ngaining popularity for its static typing and advanced capabilities. By using our\nSDK, developers can write applications in TypeScript, and the SDK takes care of\nthe rest. It handles all the interactions with the server, making the\ndevelopment process more streamlined and efficient."}),"\n",(0,i.jsx)(n.p,{children:"This not only enhances the overall development experience but also accelerates\nthe deployment of innovative decentralized applications on our network. In\nessence, our TypeScript SDK is a comprehensive solution that makes building and\ninteracting with decentralized applications a breeze. It\u2019s all about making the\ndevelopment process more enjoyable and productive for developers worldwide."}),"\n",(0,i.jsx)(n.h3,{id:"components",children:"Components"}),"\n",(0,i.jsxs)(n.p,{children:["Our TypeScript Client SDK is composed of two main components: ",(0,i.jsx)(n.code,{children:"RpcClient"})," and\n",(0,i.jsx)(n.code,{children:"SubscriptionsClient"}),". Each of these components has an interface and a class\nthat implements the interface. The ",(0,i.jsx)(n.code,{children:"RpcClient"})," interface is implemented by the\n",(0,i.jsx)(n.code,{children:"JsonRpcClient"})," class, and the ",(0,i.jsx)(n.code,{children:"SubscriptionsClient"})," interface is implemented by\nthe ",(0,i.jsx)(n.code,{children:"WsSubscriptionsClient"})," class."]}),"\n",(0,i.jsx)(n.p,{children:"These components are designed with flexibility and future growth in mind. While\ncurrently there is only one implementation of each interface, we anticipate\nmultiple implementations in the future. This is because our server will have\nmultiple implementations of both the Rpc server and the Subscriptions server.\nThis design allows us to easily add new classes that implement these interfaces\nas our server capabilities expand."}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"RpcClient"})," and ",(0,i.jsx)(n.code,{children:"SubscriptionsClient"})," interfaces define a standard set of\nmethods that all implementations must provide. This ensures consistency across\ndifferent implementations, making it easier for developers to switch between\ndifferent Rpc and Subscriptions servers as needed."]}),"\n",(0,i.jsx)(n.p,{children:"By designing our SDK in this way, we ensure that it remains flexible, scalable,\nand easy to use, regardless of how our server implementations evolve in the\nfuture."}),"\n",(0,i.jsx)(n.h4,{id:"rpcclient-interface",children:"RpcClient interface"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:"export interface RpcClient {\n query<Args, Output>(\n params: RpcQueryParams<Args>,\n config?: RequestConfig,\n ): Promise<RpcQueryResponse<Output>>;\n mutate<Args, Output>(\n params: RpcMutateParams<Args>,\n config?: RequestConfig,\n ): Promise<RpcMutateResponse<Output>>;\n}\n\nexport interface RequestConfig {\n timeout?: number;\n}\n\nexport interface RpcQueryParams<Args> {\n applicationId: ApplicationId;\n method: string;\n argsJson: Args;\n}\n\nexport interface RpcQueryResponse<Output> {\n output?: Output;\n}\n\nexport interface RpcMutateParams<Args> {\n applicationId: ApplicationId;\n method: string;\n argsJson: Args;\n}\n\nexport interface RpcMutateResponse<Output> {\n output?: Output;\n}\n"})}),"\n",(0,i.jsx)(n.h4,{id:"subscriptionsclient",children:"SubscriptionsClient"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:"export interface SubscriptionsClient {\n connect(connectionId?: string): void;\n disconnect(connectionId?: string): void;\n subscribe(applicationIds: string[], connectionId?: string): void;\n unsubscribe(applicationIds: string[], connectionId?: string): void;\n addCallback(\n callback: (event: NodeEvent) => void,\n connectionId?: string,\n ): void;\n removeCallback(\n callback: (event: NodeEvent) => void,\n connectionId?: string,\n ): void;\n}\n\nexport type NodeEvent = ApplicationEvent;\n\nexport interface ApplicationEvent {\n application_id: ApplicationId;\n type: 'TransactionExecuted' | 'PeerJoined';\n data: TransactionExecuted | PeerJoined;\n}\n\nexport interface TransactionExecuted {\n hash: string;\n}\n\nexport interface PeerJoined {\n peerId: string;\n}\n"})}),"\n",(0,i.jsx)(n.h3,{id:"examples",children:"Examples"}),"\n",(0,i.jsx)(n.h4,{id:"jsonrpcclient",children:"JsonRpcClient"}),"\n",(0,i.jsx)(n.p,{children:"Here's an example of how to use it:"}),"\n",(0,i.jsx)(n.p,{children:"Define application endpoint and application id. You can find application id in\nthe Admin Dashboard -> Contexts -> select application id from the context where\nyour app logic is installed"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:'NEXT_PUBLIC_API_URL=http://localhost:{NODE_PORT}\nNEXT_PUBLIC_APPLICATION_ID="my-application-id"\n'})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:'// Import the necessary classes and interfaces from the SDK\nimport {\n RpcClient,\n JsonRpcClient,\n RpcMutateParams,\n RpcMutateResponse,\n} from "@calimero-is-near/calimero-p2p-sdk";\n\n// Define the Args and Output interfaces\ninterface CreatePost {\n title: string;\n text: string;\n}\n\ninterface Post {\n id: string;\n title: string;\n text: string;\n}\n\n// Create an instance of JsonRpcClient\nconst rpcClient: RpcClient = new JsonRpcClient(\n process.env["NEXT_PUBLIC_API_URL],\n "/jsonrpc"\n);\n\n// Define the parameters for the mutate\nconst params: RpcMutateParams<CreatePost> = {\n applicationId: process.env["NEXT_PUBLIC_APPLICATION_ID"],\n method: "create_post",\n argsJson: {\n title: "My First Post",\n text: "This is my first post using the TypeScript Client SDK",\n },\n};\n\n// Use the mutate method\nconst respone: RpcMutateResponse<Post> = await rpcClient.mutate<\nCreatePost,\nPost\n\n> (params);\n\nconsole.log(response);\n\n'})}),"\n",(0,i.jsx)(n.h4,{id:"wssubscriptionsclient",children:"WsSubscriptionsClient"}),"\n",(0,i.jsx)(n.p,{children:"Here's an example of how to use it:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:'// Import the necessary classes and interfaces from the SDK\nimport {\n SubscriptionsClient,\n WsSubscriptionsClient,\n NodeEvent,\n} from "@calimero-is-near/calimero-p2p-sdk";\n\n// Create an instance of WsSubscriptionsClient\nconst subscriptionsClient: SubscriptionsClient = new WsSubscriptionsClient(\n process.env["NEXT_PUBLIC_API_URL],\n "/ws"\n);\n\n// Create (default) connection to the server\nawait subscriptionsClient.connect();\n\n// Subscribe to an application events\nsubscriptionsClient.subscribe([process.env["NEXT_PUBLIC_APPLICATION_ID"]]);\n\n// Add a callback to process messages\nsubscriptionsClient.addCallback((data: NodeEvent) => {\n console.log(data);\n});\n'})})]})}function d(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>c});var i=t(758);const s={},r=i.createContext(s);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7610],{5520:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>o,default:()=>d,frontMatter:()=>r,metadata:()=>c,toc:()=>l});var i=t(6070),s=t(8355);const r={id:"client-ts-sdk",title:"TypeScript Client SDK"},o=void 0,c={id:"build/client-sdks/client-ts-sdk",title:"TypeScript Client SDK",description:"Getting Started with Calimero SDK for Typescript",source:"@site/docs/04-build/02-client-sdks/02-client-ts-sdk.mdx",sourceDirName:"04-build/02-client-sdks",slug:"/build/client-sdks/client-ts-sdk",permalink:"/build/client-sdks/client-ts-sdk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"client-ts-sdk",title:"TypeScript Client SDK"},sidebar:"tutorialSidebar",previous:{title:"Rust Protocol SDK",permalink:"/build/protocol-sdks/protocol-rs-sdk"},next:{title:"Publish App",permalink:"/build/publish-app"}},a={},l=[{value:"Getting Started with Calimero SDK for Typescript",id:"getting-started-with-calimero-sdk-for-typescript",level:2},{value:"Components",id:"components",level:3},{value:"RpcClient interface",id:"rpcclient-interface",level:4},{value:"SubscriptionsClient",id:"subscriptionsclient",level:4},{value:"Examples",id:"examples",level:3},{value:"JsonRpcClient",id:"jsonrpcclient",level:4},{value:"WsSubscriptionsClient",id:"wssubscriptionsclient",level:4}];function p(e){const n={code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",pre:"pre",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"getting-started-with-calimero-sdk-for-typescript",children:"Getting Started with Calimero SDK for Typescript"}),"\n",(0,i.jsx)(n.p,{children:"Our TypeScript Client SDK is a powerful tool designed to simplify the process of\ninteracting with decentralized peer-to-peer applications installed on the node.\nIt serves as an efficient conduit for communication between the client and the\nnode\u2019s server. This SDK is particularly beneficial for developers as it\nabstracts the complexities of server communication, allowing them to concentrate\non the core application logic."}),"\n",(0,i.jsx)(n.p,{children:"The SDK is built with the modern features of TypeScript, a language that is\ngaining popularity for its static typing and advanced capabilities. By using our\nSDK, developers can write applications in TypeScript, and the SDK takes care of\nthe rest. It handles all the interactions with the server, making the\ndevelopment process more streamlined and efficient."}),"\n",(0,i.jsx)(n.p,{children:"This not only enhances the overall development experience but also accelerates\nthe deployment of innovative decentralized applications on our network. In\nessence, our TypeScript SDK is a comprehensive solution that makes building and\ninteracting with decentralized applications a breeze. It\u2019s all about making the\ndevelopment process more enjoyable and productive for developers worldwide."}),"\n",(0,i.jsx)(n.h3,{id:"components",children:"Components"}),"\n",(0,i.jsxs)(n.p,{children:["Our TypeScript Client SDK is composed of two main components: ",(0,i.jsx)(n.code,{children:"RpcClient"})," and\n",(0,i.jsx)(n.code,{children:"SubscriptionsClient"}),". Each of these components has an interface and a class\nthat implements the interface. The ",(0,i.jsx)(n.code,{children:"RpcClient"})," interface is implemented by the\n",(0,i.jsx)(n.code,{children:"JsonRpcClient"})," class, and the ",(0,i.jsx)(n.code,{children:"SubscriptionsClient"})," interface is implemented by\nthe ",(0,i.jsx)(n.code,{children:"WsSubscriptionsClient"})," class."]}),"\n",(0,i.jsx)(n.p,{children:"These components are designed with flexibility and future growth in mind. While\ncurrently there is only one implementation of each interface, we anticipate\nmultiple implementations in the future. This is because our server will have\nmultiple implementations of both the Rpc server and the Subscriptions server.\nThis design allows us to easily add new classes that implement these interfaces\nas our server capabilities expand."}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"RpcClient"})," and ",(0,i.jsx)(n.code,{children:"SubscriptionsClient"})," interfaces define a standard set of\nmethods that all implementations must provide. This ensures consistency across\ndifferent implementations, making it easier for developers to switch between\ndifferent Rpc and Subscriptions servers as needed."]}),"\n",(0,i.jsx)(n.p,{children:"By designing our SDK in this way, we ensure that it remains flexible, scalable,\nand easy to use, regardless of how our server implementations evolve in the\nfuture."}),"\n",(0,i.jsx)(n.h4,{id:"rpcclient-interface",children:"RpcClient interface"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:"export interface RpcClient {\n query<Args, Output>(\n params: RpcQueryParams<Args>,\n config?: RequestConfig,\n ): Promise<RpcQueryResponse<Output>>;\n mutate<Args, Output>(\n params: RpcMutateParams<Args>,\n config?: RequestConfig,\n ): Promise<RpcMutateResponse<Output>>;\n}\n\nexport interface RequestConfig {\n timeout?: number;\n}\n\nexport interface RpcQueryParams<Args> {\n applicationId: ApplicationId;\n method: string;\n argsJson: Args;\n}\n\nexport interface RpcQueryResponse<Output> {\n output?: Output;\n}\n\nexport interface RpcMutateParams<Args> {\n applicationId: ApplicationId;\n method: string;\n argsJson: Args;\n}\n\nexport interface RpcMutateResponse<Output> {\n output?: Output;\n}\n"})}),"\n",(0,i.jsx)(n.h4,{id:"subscriptionsclient",children:"SubscriptionsClient"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:"export interface SubscriptionsClient {\n connect(connectionId?: string): void;\n disconnect(connectionId?: string): void;\n subscribe(applicationIds: string[], connectionId?: string): void;\n unsubscribe(applicationIds: string[], connectionId?: string): void;\n addCallback(\n callback: (event: NodeEvent) => void,\n connectionId?: string,\n ): void;\n removeCallback(\n callback: (event: NodeEvent) => void,\n connectionId?: string,\n ): void;\n}\n\nexport type NodeEvent = ApplicationEvent;\n\nexport interface ApplicationEvent {\n application_id: ApplicationId;\n type: 'TransactionExecuted' | 'PeerJoined';\n data: TransactionExecuted | PeerJoined;\n}\n\nexport interface TransactionExecuted {\n hash: string;\n}\n\nexport interface PeerJoined {\n peerId: string;\n}\n"})}),"\n",(0,i.jsx)(n.h3,{id:"examples",children:"Examples"}),"\n",(0,i.jsx)(n.h4,{id:"jsonrpcclient",children:"JsonRpcClient"}),"\n",(0,i.jsx)(n.p,{children:"Here's an example of how to use it:"}),"\n",(0,i.jsx)(n.p,{children:"Define application endpoint and application id. You can find application id in\nthe Admin Dashboard -> Contexts -> select application id from the context where\nyour app logic is installed"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:'NEXT_PUBLIC_API_URL=http://localhost:{NODE_PORT}\nNEXT_PUBLIC_APPLICATION_ID="my-application-id"\n'})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:'// Import the necessary classes and interfaces from the SDK\nimport {\n RpcClient,\n JsonRpcClient,\n RpcMutateParams,\n RpcMutateResponse,\n} from "@calimero-is-near/calimero-p2p-sdk";\n\n// Define the Args and Output interfaces\ninterface CreatePost {\n title: string;\n text: string;\n}\n\ninterface Post {\n id: string;\n title: string;\n text: string;\n}\n\n// Create an instance of JsonRpcClient\nconst rpcClient: RpcClient = new JsonRpcClient(\n process.env["NEXT_PUBLIC_API_URL],\n "/jsonrpc"\n);\n\n// Define the parameters for the mutate\nconst params: RpcMutateParams<CreatePost> = {\n applicationId: process.env["NEXT_PUBLIC_APPLICATION_ID"],\n method: "create_post",\n argsJson: {\n title: "My First Post",\n text: "This is my first post using the TypeScript Client SDK",\n },\n};\n\n// Use the mutate method\nconst respone: RpcMutateResponse<Post> = await rpcClient.mutate<\nCreatePost,\nPost\n\n> (params);\n\nconsole.log(response);\n\n'})}),"\n",(0,i.jsx)(n.h4,{id:"wssubscriptionsclient",children:"WsSubscriptionsClient"}),"\n",(0,i.jsx)(n.p,{children:"Here's an example of how to use it:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-typescript",children:'// Import the necessary classes and interfaces from the SDK\nimport {\n SubscriptionsClient,\n WsSubscriptionsClient,\n NodeEvent,\n} from "@calimero-is-near/calimero-p2p-sdk";\n\n// Create an instance of WsSubscriptionsClient\nconst subscriptionsClient: SubscriptionsClient = new WsSubscriptionsClient(\n process.env["NEXT_PUBLIC_API_URL],\n "/ws"\n);\n\n// Create (default) connection to the server\nawait subscriptionsClient.connect();\n\n// Subscribe to an application events\nsubscriptionsClient.subscribe([process.env["NEXT_PUBLIC_APPLICATION_ID"]]);\n\n// Add a callback to process messages\nsubscriptionsClient.addCallback((data: NodeEvent) => {\n console.log(data);\n});\n'})})]})}function d(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>c});var i=t(758);const s={},r=i.createContext(s);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/61c19dbb.58a3acef.js b/assets/js/61c19dbb.04bf7873.js similarity index 98% rename from assets/js/61c19dbb.58a3acef.js rename to assets/js/61c19dbb.04bf7873.js index 1df9e757..31658d3b 100644 --- a/assets/js/61c19dbb.58a3acef.js +++ b/assets/js/61c19dbb.04bf7873.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1367],{6382:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var i=t(6070),r=t(5710);const s={id:"setup",title:"Setup"},o=void 0,a={id:"getting-started/setup",title:"Setup",description:"Before you start, make sure you are familiar with",source:"@site/docs/03-getting-started/01-setup.mdx",sourceDirName:"03-getting-started",slug:"/getting-started/setup",permalink:"/getting-started/setup",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"setup",title:"Setup"},sidebar:"tutorialSidebar",previous:{title:"Encryption",permalink:"/learn/advanced-concepts/encryption"},next:{title:"Admin Dashboard",permalink:"/getting-started/admin-dashboard"}},l={},c=[{value:"Setup your local node",id:"setup-your-local-node",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Setup",id:"setup",level:3},{value:"Initialize and start coordinator node (separate terminal)",id:"initialize-and-start-coordinator-node-separate-terminal",level:4},{value:"Initialize and start your node (separate terminal)",id:"initialize-and-start-your-node-separate-terminal",level:4},{value:"SSL/TLS Support",id:"ssltls-support",level:3},{value:"Steps to Add the Certificate to Your Device",id:"steps-to-add-the-certificate-to-your-device",level:3},{value:"Rules for Generating SSL Certificates",id:"rules-for-generating-ssl-certificates",level:3},{value:"Congratulations on Setting Up Your Node!",id:"congratulations-on-setting-up-your-node",level:3}];function d(e){const n={a:"a",blockquote:"blockquote",code:"code",em:"em",h2:"h2",h3:"h3",h4:"h4",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(n.p,{children:["Before you start, make sure you are familiar with\n",(0,i.jsx)(n.a,{href:"/learn/terminology",children:"Calimero Terminology"}),"."]}),"\n",(0,i.jsx)(n.h2,{id:"setup-your-local-node",children:"Setup your local node"}),"\n",(0,i.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,i.jsx)(n.p,{children:"Clone repository from GitHub."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"git clone git@github.com:calimero-network/core.git\n"})}),"\n",(0,i.jsx)(n.p,{children:"Position in the root of the project and create a data folder for all\nconfiguration files."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ mkdir data\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Make sure you have Rust installed on your machine. If not, you can install it by\nfollowing the instructions on the\n",(0,i.jsx)(n.a,{href:"https://www.rust-lang.org/tools/install",children:"Rust website"}),"."]}),"\n",(0,i.jsxs)(n.blockquote,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.em,{children:"NOTE:"})})," Use minimum rust version 1.80.0"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"setup",children:"Setup"}),"\n",(0,i.jsx)(n.p,{children:"Setup coordinator node used for managing the network transactions and peer nodes\nrepresenting the network participants."}),"\n",(0,i.jsx)(n.h4,{id:"initialize-and-start-coordinator-node-separate-terminal",children:"Initialize and start coordinator node (separate terminal)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --node-name coordinator --home data init --server-port 2427 --swarm-port 2527\ncargo run -p meroctl -- --node-name coordinator --home data run --node-type coordinator\n"})}),"\n",(0,i.jsx)(n.h4,{id:"initialize-and-start-your-node-separate-terminal",children:"Initialize and start your node (separate terminal)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --node-name node1 --home data init --server-port 2428 --swarm-port 2528\ncargo run -p meroctl -- --node-name node1 --home data run\n"})}),"\n",(0,i.jsx)(n.p,{children:"Node is now initialized and ready for use."}),"\n",(0,i.jsx)(n.h3,{id:"ssltls-support",children:"SSL/TLS Support"}),"\n",(0,i.jsx)(n.p,{children:"To be able to access the the node from external source on the same network you\nwill need to install the generated self-signed certificate."}),"\n",(0,i.jsxs)(n.blockquote,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.em,{children:"NOTE:"})})," Installing the SSL certificate is only necessary if you plan to\naccess the node from an external source on the same network. If you are\nrunning the application locally, you do not need to install the certificate."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"steps-to-add-the-certificate-to-your-device",children:"Steps to Add the Certificate to Your Device"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Locate the Certificate"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Download the certificate from\n",(0,i.jsx)(n.code,{children:"http://localhost:<server-port>/admin-api/certificate"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["The ",(0,i.jsx)(n.code,{children:"<server-port>"})," is the port number used as an argument in the\n",(0,i.jsx)(n.code,{children:"--server-port"})," flag in the section\n",(0,i.jsx)(n.a,{href:"#initialize-and-start-your-node-separate-terminal",children:"Initialize and start your node (separate terminal)"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["For example: ",(0,i.jsx)(n.code,{children:"bash http://localhost:2428/admin-api/certificate"})]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Add the Certificate to Trusted Certificates"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"For Windows"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["Open the ",(0,i.jsx)(n.code,{children:"Run"})," dialog (Win + R) and type ",(0,i.jsx)(n.code,{children:"mmc"})," to open the Microsoft\nManagement Console."]}),"\n",(0,i.jsxs)(n.li,{children:["Go to ",(0,i.jsx)(n.code,{children:"File"})," -> ",(0,i.jsx)(n.code,{children:"Add/Remove Snap-in..."}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Select ",(0,i.jsx)(n.code,{children:"Certificates"})," and click ",(0,i.jsx)(n.code,{children:"Add"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Choose ",(0,i.jsx)(n.code,{children:"Computer account"}),", then ",(0,i.jsx)(n.code,{children:"Next"})," and ",(0,i.jsx)(n.code,{children:"Finish"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Expand ",(0,i.jsx)(n.code,{children:"Certificates (Local Computer)"})," ->\n",(0,i.jsx)(n.code,{children:"Trusted Root Certification Authorities"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Right-click ",(0,i.jsx)(n.code,{children:"Certificates"}),", then ",(0,i.jsx)(n.code,{children:"All Tasks"})," -> ",(0,i.jsx)(n.code,{children:"Import..."}),"."]}),"\n",(0,i.jsx)(n.li,{children:"Follow the prompts to import the certificate file."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"For macOS"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"Double-click the certificate file."}),"\n",(0,i.jsxs)(n.li,{children:["This will open the ",(0,i.jsx)(n.code,{children:"Keychain Access"})," application."]}),"\n",(0,i.jsxs)(n.li,{children:["Choose ",(0,i.jsx)(n.code,{children:"System"})," from the list of keychains."]}),"\n",(0,i.jsxs)(n.li,{children:["Drag and drop the certificate into the ",(0,i.jsx)(n.code,{children:"System"})," keychain."]}),"\n",(0,i.jsx)(n.li,{children:"Authenticate with your administrator password if prompted."}),"\n",(0,i.jsxs)(n.li,{children:["Right-click the certificate and select ",(0,i.jsx)(n.code,{children:"Get Info"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Expand the ",(0,i.jsx)(n.code,{children:"Trust"})," section and select ",(0,i.jsx)(n.code,{children:"Always Trust"})," from the\n",(0,i.jsx)(n.code,{children:"When using this certificate"})," dropdown."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"For Linux"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["Copy the certificate to ",(0,i.jsx)(n.code,{children:"/usr/local/share/ca-certificates/"})," (or\n",(0,i.jsx)(n.code,{children:"/etc/pki/ca-trust/source/anchors/"})," depending on your distribution)."]}),"\n",(0,i.jsxs)(n.li,{children:["Run ",(0,i.jsx)(n.code,{children:"sudo update-ca-certificates"})," (or ",(0,i.jsx)(n.code,{children:"sudo update-ca-trust extract"})," for\nRed Hat-based distributions)."]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Restart Your Browser"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Close and reopen your web browser to ensure it recognizes the newly added\ncertificate."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"rules-for-generating-ssl-certificates",children:"Rules for Generating SSL Certificates"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"If a certificate doesn't exist, a new one will be generated based on your\ncurrent local IP address."}),"\n",(0,i.jsx)(n.li,{children:"If a certificate exists for the current IP address, it will be used."}),"\n",(0,i.jsx)(n.li,{children:"If a certificate exists but is not configured for the current IP address, a\nnew certificate will be created."}),"\n"]}),"\n",(0,i.jsxs)(n.blockquote,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.em,{children:"NOTE:"})})," Every time a new certificate is generated (e.g., on the first\nstart of the server or when the IP address changes), you will need to add it\nto your device's trusted certificates."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"congratulations-on-setting-up-your-node",children:"Congratulations on Setting Up Your Node!"}),"\n",(0,i.jsx)(n.p,{children:"Your next step is to add an authentication mechanism to your node by adding a\ndecentralized identity."})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(758);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1367],{6382:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var i=t(6070),r=t(8355);const s={id:"setup",title:"Setup"},o=void 0,a={id:"getting-started/setup",title:"Setup",description:"Before you start, make sure you are familiar with",source:"@site/docs/03-getting-started/01-setup.mdx",sourceDirName:"03-getting-started",slug:"/getting-started/setup",permalink:"/getting-started/setup",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"setup",title:"Setup"},sidebar:"tutorialSidebar",previous:{title:"Encryption",permalink:"/learn/advanced-concepts/encryption"},next:{title:"Admin Dashboard",permalink:"/getting-started/admin-dashboard"}},l={},c=[{value:"Setup your local node",id:"setup-your-local-node",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Setup",id:"setup",level:3},{value:"Initialize and start coordinator node (separate terminal)",id:"initialize-and-start-coordinator-node-separate-terminal",level:4},{value:"Initialize and start your node (separate terminal)",id:"initialize-and-start-your-node-separate-terminal",level:4},{value:"SSL/TLS Support",id:"ssltls-support",level:3},{value:"Steps to Add the Certificate to Your Device",id:"steps-to-add-the-certificate-to-your-device",level:3},{value:"Rules for Generating SSL Certificates",id:"rules-for-generating-ssl-certificates",level:3},{value:"Congratulations on Setting Up Your Node!",id:"congratulations-on-setting-up-your-node",level:3}];function d(e){const n={a:"a",blockquote:"blockquote",code:"code",em:"em",h2:"h2",h3:"h3",h4:"h4",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(n.p,{children:["Before you start, make sure you are familiar with\n",(0,i.jsx)(n.a,{href:"/learn/terminology",children:"Calimero Terminology"}),"."]}),"\n",(0,i.jsx)(n.h2,{id:"setup-your-local-node",children:"Setup your local node"}),"\n",(0,i.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,i.jsx)(n.p,{children:"Clone repository from GitHub."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"git clone git@github.com:calimero-network/core.git\n"})}),"\n",(0,i.jsx)(n.p,{children:"Position in the root of the project and create a data folder for all\nconfiguration files."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ mkdir data\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Make sure you have Rust installed on your machine. If not, you can install it by\nfollowing the instructions on the\n",(0,i.jsx)(n.a,{href:"https://www.rust-lang.org/tools/install",children:"Rust website"}),"."]}),"\n",(0,i.jsxs)(n.blockquote,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.em,{children:"NOTE:"})})," Use minimum rust version 1.80.0"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"setup",children:"Setup"}),"\n",(0,i.jsx)(n.p,{children:"Setup coordinator node used for managing the network transactions and peer nodes\nrepresenting the network participants."}),"\n",(0,i.jsx)(n.h4,{id:"initialize-and-start-coordinator-node-separate-terminal",children:"Initialize and start coordinator node (separate terminal)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --node-name coordinator --home data init --server-port 2427 --swarm-port 2527\ncargo run -p meroctl -- --node-name coordinator --home data run --node-type coordinator\n"})}),"\n",(0,i.jsx)(n.h4,{id:"initialize-and-start-your-node-separate-terminal",children:"Initialize and start your node (separate terminal)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",metastring:'title="Terminal"',children:"cargo run -p meroctl -- --node-name node1 --home data init --server-port 2428 --swarm-port 2528\ncargo run -p meroctl -- --node-name node1 --home data run\n"})}),"\n",(0,i.jsx)(n.p,{children:"Node is now initialized and ready for use."}),"\n",(0,i.jsx)(n.h3,{id:"ssltls-support",children:"SSL/TLS Support"}),"\n",(0,i.jsx)(n.p,{children:"To be able to access the the node from external source on the same network you\nwill need to install the generated self-signed certificate."}),"\n",(0,i.jsxs)(n.blockquote,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.em,{children:"NOTE:"})})," Installing the SSL certificate is only necessary if you plan to\naccess the node from an external source on the same network. If you are\nrunning the application locally, you do not need to install the certificate."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"steps-to-add-the-certificate-to-your-device",children:"Steps to Add the Certificate to Your Device"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Locate the Certificate"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Download the certificate from\n",(0,i.jsx)(n.code,{children:"http://localhost:<server-port>/admin-api/certificate"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["The ",(0,i.jsx)(n.code,{children:"<server-port>"})," is the port number used as an argument in the\n",(0,i.jsx)(n.code,{children:"--server-port"})," flag in the section\n",(0,i.jsx)(n.a,{href:"#initialize-and-start-your-node-separate-terminal",children:"Initialize and start your node (separate terminal)"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["For example: ",(0,i.jsx)(n.code,{children:"bash http://localhost:2428/admin-api/certificate"})]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Add the Certificate to Trusted Certificates"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"For Windows"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["Open the ",(0,i.jsx)(n.code,{children:"Run"})," dialog (Win + R) and type ",(0,i.jsx)(n.code,{children:"mmc"})," to open the Microsoft\nManagement Console."]}),"\n",(0,i.jsxs)(n.li,{children:["Go to ",(0,i.jsx)(n.code,{children:"File"})," -> ",(0,i.jsx)(n.code,{children:"Add/Remove Snap-in..."}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Select ",(0,i.jsx)(n.code,{children:"Certificates"})," and click ",(0,i.jsx)(n.code,{children:"Add"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Choose ",(0,i.jsx)(n.code,{children:"Computer account"}),", then ",(0,i.jsx)(n.code,{children:"Next"})," and ",(0,i.jsx)(n.code,{children:"Finish"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Expand ",(0,i.jsx)(n.code,{children:"Certificates (Local Computer)"})," ->\n",(0,i.jsx)(n.code,{children:"Trusted Root Certification Authorities"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Right-click ",(0,i.jsx)(n.code,{children:"Certificates"}),", then ",(0,i.jsx)(n.code,{children:"All Tasks"})," -> ",(0,i.jsx)(n.code,{children:"Import..."}),"."]}),"\n",(0,i.jsx)(n.li,{children:"Follow the prompts to import the certificate file."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"For macOS"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"Double-click the certificate file."}),"\n",(0,i.jsxs)(n.li,{children:["This will open the ",(0,i.jsx)(n.code,{children:"Keychain Access"})," application."]}),"\n",(0,i.jsxs)(n.li,{children:["Choose ",(0,i.jsx)(n.code,{children:"System"})," from the list of keychains."]}),"\n",(0,i.jsxs)(n.li,{children:["Drag and drop the certificate into the ",(0,i.jsx)(n.code,{children:"System"})," keychain."]}),"\n",(0,i.jsx)(n.li,{children:"Authenticate with your administrator password if prompted."}),"\n",(0,i.jsxs)(n.li,{children:["Right-click the certificate and select ",(0,i.jsx)(n.code,{children:"Get Info"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:["Expand the ",(0,i.jsx)(n.code,{children:"Trust"})," section and select ",(0,i.jsx)(n.code,{children:"Always Trust"})," from the\n",(0,i.jsx)(n.code,{children:"When using this certificate"})," dropdown."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"For Linux"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["Copy the certificate to ",(0,i.jsx)(n.code,{children:"/usr/local/share/ca-certificates/"})," (or\n",(0,i.jsx)(n.code,{children:"/etc/pki/ca-trust/source/anchors/"})," depending on your distribution)."]}),"\n",(0,i.jsxs)(n.li,{children:["Run ",(0,i.jsx)(n.code,{children:"sudo update-ca-certificates"})," (or ",(0,i.jsx)(n.code,{children:"sudo update-ca-trust extract"})," for\nRed Hat-based distributions)."]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Restart Your Browser"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Close and reopen your web browser to ensure it recognizes the newly added\ncertificate."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"rules-for-generating-ssl-certificates",children:"Rules for Generating SSL Certificates"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"If a certificate doesn't exist, a new one will be generated based on your\ncurrent local IP address."}),"\n",(0,i.jsx)(n.li,{children:"If a certificate exists for the current IP address, it will be used."}),"\n",(0,i.jsx)(n.li,{children:"If a certificate exists but is not configured for the current IP address, a\nnew certificate will be created."}),"\n"]}),"\n",(0,i.jsxs)(n.blockquote,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.em,{children:"NOTE:"})})," Every time a new certificate is generated (e.g., on the first\nstart of the server or when the IP address changes), you will need to add it\nto your device's trusted certificates."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"congratulations-on-setting-up-your-node",children:"Congratulations on Setting Up Your Node!"}),"\n",(0,i.jsx)(n.p,{children:"Your next step is to add an authentication mechanism to your node by adding a\ndecentralized identity."})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(758);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/64bee9bd.3fc1710b.js b/assets/js/64bee9bd.ba7deca5.js similarity index 96% rename from assets/js/64bee9bd.3fc1710b.js rename to assets/js/64bee9bd.ba7deca5.js index 2a8d9373..29bce073 100644 --- a/assets/js/64bee9bd.3fc1710b.js +++ b/assets/js/64bee9bd.ba7deca5.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2074],{6712:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>s,metadata:()=>o,toc:()=>l});var i=t(6070),r=t(5710);const s={id:"encryption",title:"Encryption"},a=void 0,o={id:"learn/advanced-concepts/encryption",title:"Encryption",description:"Encryption in Calimero ensures data security in transit over the network,",source:"@site/docs/02-learn/04-advanced-concepts/02-encryption.mdx",sourceDirName:"02-learn/04-advanced-concepts",slug:"/learn/advanced-concepts/encryption",permalink:"/learn/advanced-concepts/encryption",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"encryption",title:"Encryption"},sidebar:"tutorialSidebar",previous:{title:"Specialized Nodes",permalink:"/learn/advanced-concepts/specialized-nodes"},next:{title:"Setup",permalink:"/getting-started/setup"}},c={},l=[{value:"Key Principles",id:"key-principles",level:3},{value:"Double Ratchet Algorithm",id:"double-ratchet-algorithm",level:3},{value:"Tree-Based Diffie-Hellman Key Exchange",id:"tree-based-diffie-hellman-key-exchange",level:3}];function d(e){const n={h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"Encryption in Calimero ensures data security in transit over the network,\nmaintaining confidentiality and integrity."}),"\n",(0,i.jsx)(n.h3,{id:"key-principles",children:"Key Principles"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Forward Secrecy"}),": Ensuring past messages remain secure even if a key is\ncompromised in the future."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Post-Compromise Security"}),": Ensuring future messages remain secure even\nafter any previous message has been compromised."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Zero Trust in Third Parties"}),": No reliance on intermediaries for security."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Verifiable End-to-End Encryption"}),": Confirming that only the intended\nrecipients can read the messages."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Asynchronous Communication"}),": Ability to start communications without\nrecipients being online."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Multi-Device Support"}),": Ensuring seamless use across multiple devices."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Deniability"}),": Providing plausible deniability for message authorship to\nnon-context members."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Non-Interactive Group Management"}),": Adding and removing context members\nwithout requiring interaction."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"double-ratchet-algorithm",children:"Double Ratchet Algorithm"}),"\n",(0,i.jsx)(n.p,{children:"Each network message uses a distinct encryption key derived from the ratchet\nstate, providing forward secrecy by ensuring that the compromise of one key does\nnot affect the security of previous messages."}),"\n",(0,i.jsx)(n.p,{children:"Each context can configure Diffie-Hellman reset parameters. For one-on-one peer\ninteractions, resets can occur instantaneously, while for larger groups, resets\ncan happen at non-deterministic intervals to balance security and performance."}),"\n",(0,i.jsx)(n.h3,{id:"tree-based-diffie-hellman-key-exchange",children:"Tree-Based Diffie-Hellman Key Exchange"}),"\n",(0,i.jsx)(n.p,{children:"All contexts use a tree-based Diffie-Hellman key exchange. This method\nefficiently manages shared secrets among multiple members, ensuring that keys\nare updated and propagated correctly. The reset of keys occurs at the leaf nodes\nof the tree, guaranteeing post-compromise security."}),"\n",(0,i.jsx)(n.p,{children:"Adding a new member involves existing members using their prekeys to complete an\nX3DH (Triple Diffie-Hellman) exchange, securely adding the new member without\nrequiring direct interaction. Removing a member involves invalidating their keys\nand updating the shared secrets among remaining members, ensuring efficient and\nsecure updates."}),"\n",(0,i.jsx)(n.p,{children:"By leveraging advanced encryption techniques such as the Double Ratchet\nAlgorithm and tree-based Diffie-Hellman key exchange, Calimero ensures that all\ndata in transit is protected, maintaining the confidentiality and integrity of\nnetwork messages."})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(758);const r={},s=i.createContext(r);function a(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:a(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2074],{6712:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>s,metadata:()=>o,toc:()=>l});var i=t(6070),r=t(8355);const s={id:"encryption",title:"Encryption"},a=void 0,o={id:"learn/advanced-concepts/encryption",title:"Encryption",description:"Encryption in Calimero ensures data security in transit over the network,",source:"@site/docs/02-learn/04-advanced-concepts/02-encryption.mdx",sourceDirName:"02-learn/04-advanced-concepts",slug:"/learn/advanced-concepts/encryption",permalink:"/learn/advanced-concepts/encryption",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"encryption",title:"Encryption"},sidebar:"tutorialSidebar",previous:{title:"Specialized Nodes",permalink:"/learn/advanced-concepts/specialized-nodes"},next:{title:"Setup",permalink:"/getting-started/setup"}},c={},l=[{value:"Key Principles",id:"key-principles",level:3},{value:"Double Ratchet Algorithm",id:"double-ratchet-algorithm",level:3},{value:"Tree-Based Diffie-Hellman Key Exchange",id:"tree-based-diffie-hellman-key-exchange",level:3}];function d(e){const n={h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"Encryption in Calimero ensures data security in transit over the network,\nmaintaining confidentiality and integrity."}),"\n",(0,i.jsx)(n.h3,{id:"key-principles",children:"Key Principles"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Forward Secrecy"}),": Ensuring past messages remain secure even if a key is\ncompromised in the future."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Post-Compromise Security"}),": Ensuring future messages remain secure even\nafter any previous message has been compromised."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Zero Trust in Third Parties"}),": No reliance on intermediaries for security."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Verifiable End-to-End Encryption"}),": Confirming that only the intended\nrecipients can read the messages."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Asynchronous Communication"}),": Ability to start communications without\nrecipients being online."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Multi-Device Support"}),": Ensuring seamless use across multiple devices."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Deniability"}),": Providing plausible deniability for message authorship to\nnon-context members."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Non-Interactive Group Management"}),": Adding and removing context members\nwithout requiring interaction."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"double-ratchet-algorithm",children:"Double Ratchet Algorithm"}),"\n",(0,i.jsx)(n.p,{children:"Each network message uses a distinct encryption key derived from the ratchet\nstate, providing forward secrecy by ensuring that the compromise of one key does\nnot affect the security of previous messages."}),"\n",(0,i.jsx)(n.p,{children:"Each context can configure Diffie-Hellman reset parameters. For one-on-one peer\ninteractions, resets can occur instantaneously, while for larger groups, resets\ncan happen at non-deterministic intervals to balance security and performance."}),"\n",(0,i.jsx)(n.h3,{id:"tree-based-diffie-hellman-key-exchange",children:"Tree-Based Diffie-Hellman Key Exchange"}),"\n",(0,i.jsx)(n.p,{children:"All contexts use a tree-based Diffie-Hellman key exchange. This method\nefficiently manages shared secrets among multiple members, ensuring that keys\nare updated and propagated correctly. The reset of keys occurs at the leaf nodes\nof the tree, guaranteeing post-compromise security."}),"\n",(0,i.jsx)(n.p,{children:"Adding a new member involves existing members using their prekeys to complete an\nX3DH (Triple Diffie-Hellman) exchange, securely adding the new member without\nrequiring direct interaction. Removing a member involves invalidating their keys\nand updating the shared secrets among remaining members, ensuring efficient and\nsecure updates."}),"\n",(0,i.jsx)(n.p,{children:"By leveraging advanced encryption techniques such as the Double Ratchet\nAlgorithm and tree-based Diffie-Hellman key exchange, Calimero ensures that all\ndata in transit is protected, maintaining the confidentiality and integrity of\nnetwork messages."})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(758);const r={},s=i.createContext(r);function a(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:a(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/6a63bb8b.c1b96ef5.js b/assets/js/6a63bb8b.bc510271.js similarity index 95% rename from assets/js/6a63bb8b.c1b96ef5.js rename to assets/js/6a63bb8b.bc510271.js index d1740ed5..fedd623e 100644 --- a/assets/js/6a63bb8b.c1b96ef5.js +++ b/assets/js/6a63bb8b.bc510271.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5219],{7483:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>r,contentTitle:()=>l,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>c});var a=n(6070),i=n(5710);const o={id:"example-app",title:"Example Application"},l=void 0,s={id:"getting-started/example-app",title:"Example Application",description:"We have created simple and easy to use example application called only-peers.",source:"@site/docs/03-getting-started/03-example-app.mdx",sourceDirName:"03-getting-started",slug:"/getting-started/example-app",permalink:"/getting-started/example-app",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"example-app",title:"Example Application"},sidebar:"tutorialSidebar",previous:{title:"Admin Dashboard",permalink:"/getting-started/admin-dashboard"},next:{title:"Quickstart",permalink:"/build/quickstart"}},r={},c=[{value:"Create new context",id:"create-new-context",level:3},{value:"Try out Only-peers application",id:"try-out-only-peers-application",level:3}];function p(e){const t={a:"a",blockquote:"blockquote",code:"code",em:"em",h3:"h3",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",...(0,i.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(t.p,{children:["We have created simple and easy to use example application called ",(0,a.jsx)(t.code,{children:"only-peers"}),".\nApplication enables writing posts and leaving comments. To try out application\nyou need to create new context where application will be installed."]}),"\n",(0,a.jsx)(t.h3,{id:"create-new-context",children:"Create new context"}),"\n",(0,a.jsx)(t.p,{children:"To create new context, node CLI has to be used. There are two possible options\nof creating new context."}),"\n",(0,a.jsxs)(t.ol,{children:["\n",(0,a.jsx)(t.li,{children:"If the node already has application installed, create new context using\ncommand:"}),"\n"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ meroctl context create --application <app-id>\n>> <context-id>\n"})}),"\n",(0,a.jsxs)(t.ol,{start:"2",children:["\n",(0,a.jsx)(t.li,{children:"If application is not installed then install the application and create new\ncontext using commands:"}),"\n"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ meroctl app install --path /path/to/app\n>> <app-id>\n$ meroctl context create --application <app-id>\n>> <context-id>\n"})}),"\n",(0,a.jsx)(t.p,{children:"You are now part of the context and can start using the application."}),"\n",(0,a.jsx)(t.h3,{id:"try-out-only-peers-application",children:"Try out Only-peers application"}),"\n",(0,a.jsx)(t.p,{children:"We have built and deployed a demo app so you can try it out immediately."}),"\n",(0,a.jsxs)(t.p,{children:["Navigate to ",(0,a.jsx)(t.a,{href:"https://calimero-network.github.io/only-peers-client/",children:"https://calimero-network.github.io/only-peers-client/"})," to access app\nfrontend."]}),"\n",(0,a.jsxs)(t.p,{children:["You will be asked to setup the app by the adding the node url. It is the same\nurl you used while starting the node in ",(0,a.jsx)(t.a,{href:"/getting-started/setup",children:"Getting-started"}),"\n",(0,a.jsx)(t.code,{children:"http://localhost:NODE_PORT"})," After setting up node url, you will be asked to\nlogin."]}),"\n",(0,a.jsxs)(t.blockquote,{children:["\n",(0,a.jsxs)(t.p,{children:[(0,a.jsx)(t.strong,{children:(0,a.jsx)(t.em,{children:"NOTE:"})})," Use your wallet which you have already added as root key in\n",(0,a.jsx)(t.a,{href:"/getting-started/admin-dashboard",children:"Admin Dashboard. "})]}),"\n"]}),"\n",(0,a.jsx)(t.p,{children:"You are now ready to use the app. Enjoy!"})]})}function d(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(p,{...e})}):p(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>l,x:()=>s});var a=n(758);const i={},o=a.createContext(i);function l(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5219],{7483:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>r,contentTitle:()=>l,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>c});var a=n(6070),i=n(8355);const o={id:"example-app",title:"Example Application"},l=void 0,s={id:"getting-started/example-app",title:"Example Application",description:"We have created simple and easy to use example application called only-peers.",source:"@site/docs/03-getting-started/03-example-app.mdx",sourceDirName:"03-getting-started",slug:"/getting-started/example-app",permalink:"/getting-started/example-app",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"example-app",title:"Example Application"},sidebar:"tutorialSidebar",previous:{title:"Admin Dashboard",permalink:"/getting-started/admin-dashboard"},next:{title:"Quickstart",permalink:"/build/quickstart"}},r={},c=[{value:"Create new context",id:"create-new-context",level:3},{value:"Try out Only-peers application",id:"try-out-only-peers-application",level:3}];function p(e){const t={a:"a",blockquote:"blockquote",code:"code",em:"em",h3:"h3",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",...(0,i.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(t.p,{children:["We have created simple and easy to use example application called ",(0,a.jsx)(t.code,{children:"only-peers"}),".\nApplication enables writing posts and leaving comments. To try out application\nyou need to create new context where application will be installed."]}),"\n",(0,a.jsx)(t.h3,{id:"create-new-context",children:"Create new context"}),"\n",(0,a.jsx)(t.p,{children:"To create new context, node CLI has to be used. There are two possible options\nof creating new context."}),"\n",(0,a.jsxs)(t.ol,{children:["\n",(0,a.jsx)(t.li,{children:"If the node already has application installed, create new context using\ncommand:"}),"\n"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ meroctl context create --application <app-id>\n>> <context-id>\n"})}),"\n",(0,a.jsxs)(t.ol,{start:"2",children:["\n",(0,a.jsx)(t.li,{children:"If application is not installed then install the application and create new\ncontext using commands:"}),"\n"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-bash",metastring:'title="Terminal"',children:"$ meroctl app install --path /path/to/app\n>> <app-id>\n$ meroctl context create --application <app-id>\n>> <context-id>\n"})}),"\n",(0,a.jsx)(t.p,{children:"You are now part of the context and can start using the application."}),"\n",(0,a.jsx)(t.h3,{id:"try-out-only-peers-application",children:"Try out Only-peers application"}),"\n",(0,a.jsx)(t.p,{children:"We have built and deployed a demo app so you can try it out immediately."}),"\n",(0,a.jsxs)(t.p,{children:["Navigate to ",(0,a.jsx)(t.a,{href:"https://calimero-network.github.io/only-peers-client/",children:"https://calimero-network.github.io/only-peers-client/"})," to access app\nfrontend."]}),"\n",(0,a.jsxs)(t.p,{children:["You will be asked to setup the app by the adding the node url. It is the same\nurl you used while starting the node in ",(0,a.jsx)(t.a,{href:"/getting-started/setup",children:"Getting-started"}),"\n",(0,a.jsx)(t.code,{children:"http://localhost:NODE_PORT"})," After setting up node url, you will be asked to\nlogin."]}),"\n",(0,a.jsxs)(t.blockquote,{children:["\n",(0,a.jsxs)(t.p,{children:[(0,a.jsx)(t.strong,{children:(0,a.jsx)(t.em,{children:"NOTE:"})})," Use your wallet which you have already added as root key in\n",(0,a.jsx)(t.a,{href:"/getting-started/admin-dashboard",children:"Admin Dashboard. "})]}),"\n"]}),"\n",(0,a.jsx)(t.p,{children:"You are now ready to use the app. Enjoy!"})]})}function d(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(p,{...e})}):p(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>l,x:()=>s});var a=n(758);const i={},o=a.createContext(i);function l(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/702ee7bc.1e8d54c7.js b/assets/js/702ee7bc.0b365b7e.js similarity index 98% rename from assets/js/702ee7bc.1e8d54c7.js rename to assets/js/702ee7bc.0b365b7e.js index dd17510f..265ba17d 100644 --- a/assets/js/702ee7bc.1e8d54c7.js +++ b/assets/js/702ee7bc.0b365b7e.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2408],{1452:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>r,toc:()=>l});var i=t(6070),a=t(5710);const s={id:"manifesto",title:"The Data Sovereignty Manifesto"},o=void 0,r={id:"explore/manifesto",title:"The Data Sovereignty Manifesto",description:"Vision & Mission",source:"@site/docs/01-explore/03-manifesto.mdx",sourceDirName:"01-explore",slug:"/explore/manifesto",permalink:"/explore/manifesto",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"manifesto",title:"The Data Sovereignty Manifesto"},sidebar:"tutorialSidebar",previous:{title:"Introduction",permalink:"/explore/intro"},next:{title:"Blockchain",permalink:"/explore/why-not/blockchain"}},d={},l=[{value:"Vision & Mission",id:"vision--mission",level:2},{value:"Rationale and Addressing the Problem",id:"rationale-and-addressing-the-problem",level:2},{value:"Core Values and Beliefs",id:"core-values-and-beliefs",level:2},{value:"Goals and Objectives",id:"goals-and-objectives",level:2},{value:"Join the Movement",id:"join-the-movement",level:2}];function c(e){const n={h2:"h2",p:"p",strong:"strong",...(0,a.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"vision--mission",children:"Vision & Mission"}),"\n",(0,i.jsx)(n.p,{children:"We envision a digital world where users decide how and when their data is\nstored, processed, and accessed. In such a future, individuals will be\ncompensated with a share of the profit, if they provide consent for their data\nto be utilized by a specific entity for a specific context. Our framework will\nensure that data sharing is consensual, secure, and transparent, allowing users\nto reclaim their privacy and digital autonomy."}),"\n",(0,i.jsx)(n.p,{children:"In the digital age, the concept of privacy has evolved significantly.\nTraditional notions of privacy, often centred around the control of personal\ninformation, have been challenged by the pervasive nature of digital\ntechnologies. In a world where your data flows freely across the internet, and\nis processed by centralized servers, the control over your personal information\nis often lost. A future dominated by AI, where your digital personalities can be\nreplicated and exploited, calls for urgent safeguarding of contextual integrity\nand data privacy. We aim to empower individuals to take charge of their digital\nidentities."}),"\n",(0,i.jsx)(n.p,{children:"Contextual integrity is a theory developed by Helen Nissenbaum, that suggests\nprivacy is preserved when information flows appropriately according to social\nnorms within specific contexts. Rather than focusing solely on the individual's\ncontrol over their data, contextual integrity considers the context-specific\nnorms that govern information sharing and usage. Different social settings or\nspheres (e.g., healthcare, financial records, personal relationships and\nsimilar), different actors, attributes and conditions under which information is\nshared, each have their own expectations for information flow. By examining\nthese parameters, contextual integrity provides a nuanced understanding of\nprivacy that is sensitive to the specific social contexts in which information\nis used."}),"\n",(0,i.jsx)(n.p,{children:"The digital environment involves numerous actors, including users, service\nproviders, third-party advertisers, and data brokers. This complexity increases\nthe difficulty of tracking and managing information flows. Bad actors exploit\ndata streams, leading to breaches of privacy and trust. We believe that every\nindividual should have the power to control their personal data. Our mission is\nto build a peer-to-peer ecosystem that enables users to dictate who they share\ntheir data with and how data access is managed."}),"\n",(0,i.jsx)(n.p,{children:"Digital platforms often merge multiple contexts, making it difficult to\ndistinguish appropriate information flows. For example, social media combines\npersonal, professional and public spheres, challenging traditional privacy\nnorms. Digital technologies enable the collection and analysis of vast amounts\nof diverse data, often beyond what individuals explicitly share. This includes\nmetadata, behavioral data, and similar, which complicates consent and control\nand often gives away much more about the user than the user actually understands\nor wants to share. The principles governing data transmission in the digital\nworld are often non-transparent and dynamic. Terms of service and privacy\npolicies frequently change, and the mechanisms of data sharing and processing\nare not always transparent to users."}),"\n",(0,i.jsx)(n.h2,{id:"rationale-and-addressing-the-problem",children:"Rationale and Addressing the Problem"}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Legal frameworks should consider the specific contexts in which data is used.\nThis means creating sector-specific privacy regulations that account for the\nunique norms and expectations of each context."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Digital platforms must be transparent about their data practices and\naccountable for maintaining appropriate information flows. This includes clear\ncommunication about how data is collected, used, and shared, as well as\nmechanisms for users to hold platforms accountable."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Empowering users with tools to manage their privacy in context-specific ways\nis crucial. This can involve granular privacy settings, consent mechanisms that\nreflect contextual norms, and educational initiatives to inform users about\ntheir privacy rights and risks."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Designers and developers of digital technologies should incorporate contextual\nintegrity principles into the design of systems and services. This means\nconsidering the social contexts in which their technologies will be used and\nensuring that information flows align with context-specific norms."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Regulators have tried to address this issue by implementing data protection\nlaws. However, in practice, there are no effective tools to solve the problem\neasily, and the regulations are prone to human error. This results in\nunnecessary bureaucracy, without solving the problem at its core."}),"\n",(0,i.jsx)(n.h2,{id:"core-values-and-beliefs",children:"Core Values and Beliefs"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Privacy"})}),"\n",(0,i.jsx)(n.p,{children:"We believe that privacy is a fundamental human right."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Ownership & Control"})}),"\n",(0,i.jsx)(n.p,{children:"Data should be owned and managed by the user whose data it is, not by large\ncorporations, big tech, or the government. Individuals should have complete\ncontrol over their digital footprint."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Transparency & Security"})}),"\n",(0,i.jsx)(n.p,{children:"Data management processes must be transparent and understandable. Personal data\nshould be protected against unauthorized access and misuse."}),"\n",(0,i.jsx)(n.h2,{id:"goals-and-objectives",children:"Goals and Objectives"}),"\n",(0,i.jsx)(n.p,{children:"The need for data sovereignty is urgent. Daily data breaches compromise medical\nrecords, putting lives at risk, financial records are disclosed, leading to\ntheft, and personal secrets can be exposed without consent. In a world where\ndata is a valuable asset, it is essential to create a fair and secure\nenvironment. Contextual integrity, which addresses data privacy in the digital\nage, must be upheld to protect individual rights and foster trust in digital\ninteractions. Our goals include:"}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Creating a robust, secure, and user-friendly peer-to-peer protocol for data\naccess control."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Providing tools and resources to enable builders to develop Self Sovereign\nApps, where users can manage their data independently."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Target developers to raise awareness, join the movement, and build products\nwithin this new framework."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Educating the public about the importance of data sovereignty and how to\nprotect their digital identity."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Developing user economy models, for the users to be compensated when their\ndata is used by profit-making entities."}),"\n",(0,i.jsx)(n.h2,{id:"join-the-movement",children:"Join the Movement"}),"\n",(0,i.jsx)(n.p,{children:"The future of our digital world depends on the actions we take today. By\nreclaiming control over our personal data, we can ensure privacy, security, and\nfairness for all. We call on developers to build innovative solutions that\nprioritize user-controlled data management. We urge individuals to take greater\ncare of their digital identity and privacy, advocating for a future where\npersonal data is respected and protected. Join us in creating a fair and secure\ndigital world. Let us rise to the challenge and create a digital environment\nwhere data sovereignty is the norm, not the exception. Because it is YOUR data,\nand YOU should control what happens to it!"})]})}function h(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>r});var i=t(758);const a={},s=i.createContext(a);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2408],{1452:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>r,toc:()=>l});var i=t(6070),a=t(8355);const s={id:"manifesto",title:"The Data Sovereignty Manifesto"},o=void 0,r={id:"explore/manifesto",title:"The Data Sovereignty Manifesto",description:"Vision & Mission",source:"@site/docs/01-explore/03-manifesto.mdx",sourceDirName:"01-explore",slug:"/explore/manifesto",permalink:"/explore/manifesto",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"manifesto",title:"The Data Sovereignty Manifesto"},sidebar:"tutorialSidebar",previous:{title:"Introduction",permalink:"/explore/intro"},next:{title:"Blockchain",permalink:"/explore/why-not/blockchain"}},d={},l=[{value:"Vision & Mission",id:"vision--mission",level:2},{value:"Rationale and Addressing the Problem",id:"rationale-and-addressing-the-problem",level:2},{value:"Core Values and Beliefs",id:"core-values-and-beliefs",level:2},{value:"Goals and Objectives",id:"goals-and-objectives",level:2},{value:"Join the Movement",id:"join-the-movement",level:2}];function c(e){const n={h2:"h2",p:"p",strong:"strong",...(0,a.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"vision--mission",children:"Vision & Mission"}),"\n",(0,i.jsx)(n.p,{children:"We envision a digital world where users decide how and when their data is\nstored, processed, and accessed. In such a future, individuals will be\ncompensated with a share of the profit, if they provide consent for their data\nto be utilized by a specific entity for a specific context. Our framework will\nensure that data sharing is consensual, secure, and transparent, allowing users\nto reclaim their privacy and digital autonomy."}),"\n",(0,i.jsx)(n.p,{children:"In the digital age, the concept of privacy has evolved significantly.\nTraditional notions of privacy, often centred around the control of personal\ninformation, have been challenged by the pervasive nature of digital\ntechnologies. In a world where your data flows freely across the internet, and\nis processed by centralized servers, the control over your personal information\nis often lost. A future dominated by AI, where your digital personalities can be\nreplicated and exploited, calls for urgent safeguarding of contextual integrity\nand data privacy. We aim to empower individuals to take charge of their digital\nidentities."}),"\n",(0,i.jsx)(n.p,{children:"Contextual integrity is a theory developed by Helen Nissenbaum, that suggests\nprivacy is preserved when information flows appropriately according to social\nnorms within specific contexts. Rather than focusing solely on the individual's\ncontrol over their data, contextual integrity considers the context-specific\nnorms that govern information sharing and usage. Different social settings or\nspheres (e.g., healthcare, financial records, personal relationships and\nsimilar), different actors, attributes and conditions under which information is\nshared, each have their own expectations for information flow. By examining\nthese parameters, contextual integrity provides a nuanced understanding of\nprivacy that is sensitive to the specific social contexts in which information\nis used."}),"\n",(0,i.jsx)(n.p,{children:"The digital environment involves numerous actors, including users, service\nproviders, third-party advertisers, and data brokers. This complexity increases\nthe difficulty of tracking and managing information flows. Bad actors exploit\ndata streams, leading to breaches of privacy and trust. We believe that every\nindividual should have the power to control their personal data. Our mission is\nto build a peer-to-peer ecosystem that enables users to dictate who they share\ntheir data with and how data access is managed."}),"\n",(0,i.jsx)(n.p,{children:"Digital platforms often merge multiple contexts, making it difficult to\ndistinguish appropriate information flows. For example, social media combines\npersonal, professional and public spheres, challenging traditional privacy\nnorms. Digital technologies enable the collection and analysis of vast amounts\nof diverse data, often beyond what individuals explicitly share. This includes\nmetadata, behavioral data, and similar, which complicates consent and control\nand often gives away much more about the user than the user actually understands\nor wants to share. The principles governing data transmission in the digital\nworld are often non-transparent and dynamic. Terms of service and privacy\npolicies frequently change, and the mechanisms of data sharing and processing\nare not always transparent to users."}),"\n",(0,i.jsx)(n.h2,{id:"rationale-and-addressing-the-problem",children:"Rationale and Addressing the Problem"}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Legal frameworks should consider the specific contexts in which data is used.\nThis means creating sector-specific privacy regulations that account for the\nunique norms and expectations of each context."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Digital platforms must be transparent about their data practices and\naccountable for maintaining appropriate information flows. This includes clear\ncommunication about how data is collected, used, and shared, as well as\nmechanisms for users to hold platforms accountable."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Empowering users with tools to manage their privacy in context-specific ways\nis crucial. This can involve granular privacy settings, consent mechanisms that\nreflect contextual norms, and educational initiatives to inform users about\ntheir privacy rights and risks."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Designers and developers of digital technologies should incorporate contextual\nintegrity principles into the design of systems and services. This means\nconsidering the social contexts in which their technologies will be used and\nensuring that information flows align with context-specific norms."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Regulators have tried to address this issue by implementing data protection\nlaws. However, in practice, there are no effective tools to solve the problem\neasily, and the regulations are prone to human error. This results in\nunnecessary bureaucracy, without solving the problem at its core."}),"\n",(0,i.jsx)(n.h2,{id:"core-values-and-beliefs",children:"Core Values and Beliefs"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Privacy"})}),"\n",(0,i.jsx)(n.p,{children:"We believe that privacy is a fundamental human right."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Ownership & Control"})}),"\n",(0,i.jsx)(n.p,{children:"Data should be owned and managed by the user whose data it is, not by large\ncorporations, big tech, or the government. Individuals should have complete\ncontrol over their digital footprint."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Transparency & Security"})}),"\n",(0,i.jsx)(n.p,{children:"Data management processes must be transparent and understandable. Personal data\nshould be protected against unauthorized access and misuse."}),"\n",(0,i.jsx)(n.h2,{id:"goals-and-objectives",children:"Goals and Objectives"}),"\n",(0,i.jsx)(n.p,{children:"The need for data sovereignty is urgent. Daily data breaches compromise medical\nrecords, putting lives at risk, financial records are disclosed, leading to\ntheft, and personal secrets can be exposed without consent. In a world where\ndata is a valuable asset, it is essential to create a fair and secure\nenvironment. Contextual integrity, which addresses data privacy in the digital\nage, must be upheld to protect individual rights and foster trust in digital\ninteractions. Our goals include:"}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Creating a robust, secure, and user-friendly peer-to-peer protocol for data\naccess control."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Providing tools and resources to enable builders to develop Self Sovereign\nApps, where users can manage their data independently."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Target developers to raise awareness, join the movement, and build products\nwithin this new framework."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Educating the public about the importance of data sovereignty and how to\nprotect their digital identity."}),"\n",(0,i.jsx)(n.p,{children:"\u25e6 Developing user economy models, for the users to be compensated when their\ndata is used by profit-making entities."}),"\n",(0,i.jsx)(n.h2,{id:"join-the-movement",children:"Join the Movement"}),"\n",(0,i.jsx)(n.p,{children:"The future of our digital world depends on the actions we take today. By\nreclaiming control over our personal data, we can ensure privacy, security, and\nfairness for all. We call on developers to build innovative solutions that\nprioritize user-controlled data management. We urge individuals to take greater\ncare of their digital identity and privacy, advocating for a future where\npersonal data is respected and protected. Join us in creating a fair and secure\ndigital world. Let us rise to the challenge and create a digital environment\nwhere data sovereignty is the norm, not the exception. Because it is YOUR data,\nand YOU should control what happens to it!"})]})}function h(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>r});var i=t(758);const a={},s=i.createContext(a);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/713.443d55f9.js b/assets/js/713.443d55f9.js new file mode 100644 index 00000000..ae0446cd --- /dev/null +++ b/assets/js/713.443d55f9.js @@ -0,0 +1 @@ +(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[713],{7998:(e,t,n)=>{"use strict";n.d(t,{_:()=>r,u:()=>l});var s=n(758),a=n(6889),i=n(6070);const o=s.createContext(null);function r(e){let{children:t,content:n}=e;const a=function(e){return(0,s.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(n);return(0,i.jsx)(o.Provider,{value:a,children:t})}function l(){const e=(0,s.useContext)(o);if(null===e)throw new a.dV("DocProvider");return e}},2038:(e,t,n)=>{"use strict";n.d(t,{A:()=>y});n(758);var s=n(3526),a=n(8909),i=n(7998),o=n(2641),r=n(4475);const l={tag:"tag_k82B",tagRegular:"tagRegular_RKsa",tagWithCount:"tagWithCount_gd8b"};var c=n(6070);function d(e){let{permalink:t,label:n,count:a,description:i}=e;return(0,c.jsxs)(r.A,{href:t,title:i,className:(0,s.A)(l.tag,a?l.tagWithCount:l.tagRegular),children:[n,a&&(0,c.jsx)("span",{children:a})]})}const u={tags:"tags_hccf",tag:"tag_SEVC"};function m(e){let{tags:t}=e;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("b",{children:(0,c.jsx)(o.A,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list",children:"Tags:"})}),(0,c.jsx)("ul",{className:(0,s.A)(u.tags,"padding--none","margin-left--sm"),children:t.map((e=>(0,c.jsx)("li",{className:u.tag,children:(0,c.jsx)(d,{...e})},e.permalink)))})]})}const h={iconEdit:"iconEdit_TzD1"};function f(e){let{className:t,...n}=e;return(0,c.jsx)("svg",{fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,s.A)(h.iconEdit,t),"aria-hidden":"true",...n,children:(0,c.jsx)("g",{children:(0,c.jsx)("path",{d:"m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"})})})}function p(e){let{editUrl:t}=e;return(0,c.jsxs)(r.A,{to:t,className:a.G.common.editThisPage,children:[(0,c.jsx)(f,{}),(0,c.jsx)(o.A,{id:"theme.common.editThisPage",description:"The link label to edit the current page",children:"Edit this page"})]})}var b=n(1299);function x(e){void 0===e&&(e={});const{i18n:{currentLocale:t}}=(0,b.A)(),n=function(){const{i18n:{currentLocale:e,localeConfigs:t}}=(0,b.A)();return t[e].calendar}();return new Intl.DateTimeFormat(t,{calendar:n,...e})}function g(e){let{lastUpdatedAt:t}=e;const n=new Date(t),s=x({day:"numeric",month:"short",year:"numeric",timeZone:"UTC"}).format(n);return(0,c.jsx)(o.A,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:(0,c.jsx)("b",{children:(0,c.jsx)("time",{dateTime:n.toISOString(),itemProp:"dateModified",children:s})})},children:" on {date}"})}function v(e){let{lastUpdatedBy:t}=e;return(0,c.jsx)(o.A,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:(0,c.jsx)("b",{children:t})},children:" by {user}"})}function j(e){let{lastUpdatedAt:t,lastUpdatedBy:n}=e;return(0,c.jsxs)("span",{className:a.G.common.lastUpdated,children:[(0,c.jsx)(o.A,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t?(0,c.jsx)(g,{lastUpdatedAt:t}):"",byUser:n?(0,c.jsx)(v,{lastUpdatedBy:n}):""},children:"Last updated{atDate}{byUser}"}),!1]})}const k={lastUpdated:"lastUpdated_pFSY"};function N(e){let{className:t,editUrl:n,lastUpdatedAt:a,lastUpdatedBy:i}=e;return(0,c.jsxs)("div",{className:(0,s.A)("row",t),children:[(0,c.jsx)("div",{className:"col",children:n&&(0,c.jsx)(p,{editUrl:n})}),(0,c.jsx)("div",{className:(0,s.A)("col",k.lastUpdated),children:(a||i)&&(0,c.jsx)(j,{lastUpdatedAt:a,lastUpdatedBy:i})})]})}function y(){const{metadata:e}=(0,i.u)(),{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:o,tags:r}=e,l=r.length>0,d=!!(t||n||o);return l||d?(0,c.jsxs)("footer",{className:(0,s.A)(a.G.docs.docFooter,"docusaurus-mt-lg"),children:[l&&(0,c.jsx)("div",{className:(0,s.A)("row margin-top--sm",a.G.docs.docFooterTagsRow),children:(0,c.jsx)("div",{className:"col",children:(0,c.jsx)(m,{tags:r})})}),d&&(0,c.jsx)(N,{className:(0,s.A)("margin-top--sm",a.G.docs.docFooterEditMetaRow),editUrl:t,lastUpdatedAt:n,lastUpdatedBy:o})]}):null}},9846:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>Rt});var s=n(758),a=n(5212),i=n(7998),o=n(6070);function r(){const{metadata:e,frontMatter:t,assets:n}=(0,i.u)();return(0,o.jsx)(a.be,{title:e.title,description:e.description,keywords:t.keywords,image:n.image??t.image})}var l=n(3526),c=n(2823),d=n(2641),u=n(4475);function m(e){const{permalink:t,title:n,subLabel:s,isNext:a}=e;return(0,o.jsxs)(u.A,{className:(0,l.A)("pagination-nav__link",a?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t,children:[s&&(0,o.jsx)("div",{className:"pagination-nav__sublabel",children:s}),(0,o.jsx)("div",{className:"pagination-nav__label",children:n})]})}function h(e){const{previous:t,next:n}=e;return(0,o.jsxs)("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,d.T)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages",description:"The ARIA label for the docs pagination"}),children:[t&&(0,o.jsx)(m,{...t,subLabel:(0,o.jsx)(d.A,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc",children:"Previous"})}),n&&(0,o.jsx)(m,{...n,subLabel:(0,o.jsx)(d.A,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc",children:"Next"}),isNext:!0})]})}function f(){const{metadata:e}=(0,i.u)();return(0,o.jsx)(h,{previous:e.previous,next:e.next})}var p=n(1299),b=n(3841),x=n(8909),g=n(9758),v=n(2289);const j={unreleased:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,o.jsx)(d.A,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:(0,o.jsx)("b",{children:n.label})},children:"This is unreleased documentation for {siteTitle} {versionLabel} version."})},unmaintained:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,o.jsx)(d.A,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:(0,o.jsx)("b",{children:n.label})},children:"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained."})}};function k(e){const t=j[e.versionMetadata.banner];return(0,o.jsx)(t,{...e})}function N(e){let{versionLabel:t,to:n,onClick:s}=e;return(0,o.jsx)(d.A,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:(0,o.jsx)("b",{children:(0,o.jsx)(u.A,{to:n,onClick:s,children:(0,o.jsx)(d.A,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label",children:"latest version"})})})},children:"For up-to-date documentation, see the {latestVersionLink} ({versionLabel})."})}function y(e){let{className:t,versionMetadata:n}=e;const{siteConfig:{title:s}}=(0,p.A)(),{pluginId:a}=(0,b.vT)({failfast:!0}),{savePreferredVersionName:i}=(0,g.g1)(a),{latestDocSuggestion:r,latestVersionSuggestion:c}=(0,b.HW)(a),d=r??(u=c).docs.find((e=>e.id===u.mainDocId));var u;return(0,o.jsxs)("div",{className:(0,l.A)(t,x.G.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert",children:[(0,o.jsx)("div",{children:(0,o.jsx)(k,{siteTitle:s,versionMetadata:n})}),(0,o.jsx)("div",{className:"margin-top--md",children:(0,o.jsx)(N,{versionLabel:c.label,to:d.path,onClick:()=>i(c.name)})})]})}function C(e){let{className:t}=e;const n=(0,v.r)();return n.banner?(0,o.jsx)(y,{className:t,versionMetadata:n}):null}function w(e){let{className:t}=e;const n=(0,v.r)();return n.badge?(0,o.jsx)("span",{className:(0,l.A)(t,x.G.docs.docVersionBadge,"badge badge--secondary"),children:(0,o.jsx)(d.A,{id:"theme.docs.versionBadge.label",values:{versionLabel:n.label},children:"Version: {versionLabel}"})}):null}var A=n(8949),L=n(7464),E=n(588);function B(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const s=n.slice(2,e.level);e.parentIndex=Math.max(...s),n[e.level]=t}));const s=[];return t.forEach((e=>{const{parentIndex:n,...a}=e;n>=0?t[n].children.push(a):s.push(a)})),s}function T(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:s}=e;return t.flatMap((e=>{const t=T({toc:e.children,minHeadingLevel:n,maxHeadingLevel:s});return function(e){return e.level>=n&&e.level<=s}(e)?[{...e,children:t}]:t}))}function S(e){const t=e.getBoundingClientRect();return t.top===t.bottom?S(e.parentNode):t}function _(e,t){let{anchorTopOffset:n}=t;const s=e.find((e=>S(e).top>=n));if(s){return function(e){return e.top>0&&e.bottom<window.innerHeight/2}(S(s))?s:e[e.indexOf(s)-1]??null}return e[e.length-1]??null}function I(){const e=(0,s.useRef)(0),{navbar:{hideOnScroll:t}}=(0,E.p)();return(0,s.useEffect)((()=>{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function M(e){const t=(0,s.useRef)(void 0),n=I();(0,s.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:s,linkActiveClassName:a,minHeadingLevel:i,maxHeadingLevel:o}=e;function r(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(s),r=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const s=[];for(let a=t;a<=n;a+=1)s.push(`h${a}.anchor`);return Array.from(document.querySelectorAll(s.join()))}({minHeadingLevel:i,maxHeadingLevel:o}),l=_(r,{anchorTopOffset:n.current}),c=e.find((e=>l&&l.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,n){n?(t.current&&t.current!==e&&t.current.classList.remove(a),e.classList.add(a),t.current=e):e.classList.remove(a)}(e,e===c)}))}return document.addEventListener("scroll",r),document.addEventListener("resize",r),r(),()=>{document.removeEventListener("scroll",r),document.removeEventListener("resize",r)}}),[e,n])}function R(e){let{toc:t,className:n,linkClassName:s,isChild:a}=e;return t.length?(0,o.jsx)("ul",{className:a?void 0:n,children:t.map((e=>(0,o.jsxs)("li",{children:[(0,o.jsx)(u.A,{to:`#${e.id}`,className:s??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,o.jsx)(R,{isChild:!0,toc:e.children,className:n,linkClassName:s})]},e.id)))}):null}const H=s.memo(R);function U(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:a="table-of-contents__link",linkActiveClassName:i,minHeadingLevel:r,maxHeadingLevel:l,...c}=e;const d=(0,E.p)(),u=r??d.tableOfContents.minHeadingLevel,m=l??d.tableOfContents.maxHeadingLevel,h=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return(0,s.useMemo)((()=>T({toc:B(t),minHeadingLevel:n,maxHeadingLevel:a})),[t,n,a])}({toc:t,minHeadingLevel:u,maxHeadingLevel:m});return M((0,s.useMemo)((()=>{if(a&&i)return{linkClassName:a,linkActiveClassName:i,minHeadingLevel:u,maxHeadingLevel:m}}),[a,i,u,m])),(0,o.jsx)(H,{toc:h,className:n,linkClassName:a,...c})}const $={tocCollapsibleButton:"tocCollapsibleButton_ZlKc",tocCollapsibleButtonExpanded:"tocCollapsibleButtonExpanded_BLGs"};function z(e){let{collapsed:t,...n}=e;return(0,o.jsx)("button",{type:"button",...n,className:(0,l.A)("clean-btn",$.tocCollapsibleButton,!t&&$.tocCollapsibleButtonExpanded,n.className),children:(0,o.jsx)(d.A,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component",children:"On this page"})})}const V={tocCollapsible:"tocCollapsible_Iu5z",tocCollapsibleContent:"tocCollapsibleContent_WHwq",tocCollapsibleExpanded:"tocCollapsibleExpanded_Jf3p"};function O(e){let{toc:t,className:n,minHeadingLevel:s,maxHeadingLevel:a}=e;const{collapsed:i,toggleCollapsed:r}=(0,L.u)({initialState:!0});return(0,o.jsxs)("div",{className:(0,l.A)(V.tocCollapsible,!i&&V.tocCollapsibleExpanded,n),children:[(0,o.jsx)(z,{collapsed:i,onClick:r}),(0,o.jsx)(L.N,{lazy:!0,className:V.tocCollapsibleContent,collapsed:i,children:(0,o.jsx)(U,{toc:t,minHeadingLevel:s,maxHeadingLevel:a})})]})}const D={tocMobile:"tocMobile_c8ki"};function F(){const{toc:e,frontMatter:t}=(0,i.u)();return(0,o.jsx)(O,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,l.A)(x.G.docs.docTocMobile,D.tocMobile)})}const P={tableOfContents:"tableOfContents_L09I",docItemContainer:"docItemContainer_CWlt"},G="table-of-contents__link toc-highlight",q="table-of-contents__link--active";function W(e){let{className:t,...n}=e;return(0,o.jsx)("div",{className:(0,l.A)(P.tableOfContents,"thin-scrollbar",t),children:(0,o.jsx)(U,{...n,linkClassName:G,linkActiveClassName:q})})}function J(){const{toc:e,frontMatter:t}=(0,i.u)();return(0,o.jsx)(W,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:x.G.docs.docTocDesktop})}var Y=n(48),Z=n(8355),K=n(6705),X=n(7114),Q=n(5427);function ee(){const{prism:e}=(0,E.p)(),{colorMode:t}=(0,Q.G)(),n=e.theme,s=e.darkTheme||n;return"dark"===t?s:n}var te=n(4809),ne=n.n(te);const se=/title=(?<quote>["'])(?<title>.*?)\1/,ae=/\{(?<range>[\d,-]+)\}/,ie={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}},oe={...ie,lua:{start:"--",end:""},wasm:{start:"\\;\\;",end:""},tex:{start:"%",end:""},vb:{start:"['\u2018\u2019]",end:""},vbnet:{start:"(?:_\\s*)?['\u2018\u2019]",end:""},rem:{start:"[Rr][Ee][Mm]\\b",end:""},f90:{start:"!",end:""},ml:{start:"\\(\\*",end:"\\*\\)"},cobol:{start:"\\*>",end:""}},re=Object.keys(ie);function le(e,t){const n=e.map((e=>{const{start:n,end:s}=oe[e];return`(?:${n}\\s*(${t.flatMap((e=>[e.line,e.block?.start,e.block?.end].filter(Boolean))).join("|")})\\s*${s})`})).join("|");return new RegExp(`^\\s*(?:${n})\\s*$`)}function ce(e,t){let n=e.replace(/\n$/,"");const{language:s,magicComments:a,metastring:i}=t;if(i&&ae.test(i)){const e=i.match(ae).groups.range;if(0===a.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${i}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const t=a[0].className,s=ne()(e).filter((e=>e>0)).map((e=>[e-1,[t]]));return{lineClassNames:Object.fromEntries(s),code:n}}if(void 0===s)return{lineClassNames:{},code:n};const o=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return le(["js","jsBlock"],t);case"jsx":case"tsx":return le(["js","jsBlock","jsx"],t);case"html":return le(["js","jsBlock","html"],t);case"python":case"py":case"bash":return le(["bash"],t);case"markdown":case"md":return le(["html","jsx","bash"],t);case"tex":case"latex":case"matlab":return le(["tex"],t);case"lua":case"haskell":case"sql":return le(["lua"],t);case"wasm":return le(["wasm"],t);case"vb":case"vba":case"visual-basic":return le(["vb","rem"],t);case"vbnet":return le(["vbnet","rem"],t);case"batch":return le(["rem"],t);case"basic":return le(["rem","f90"],t);case"fsharp":return le(["js","ml"],t);case"ocaml":case"sml":return le(["ml"],t);case"fortran":return le(["f90"],t);case"cobol":return le(["cobol"],t);default:return le(re,t)}}(s,a),r=n.split("\n"),l=Object.fromEntries(a.map((e=>[e.className,{start:0,range:""}]))),c=Object.fromEntries(a.filter((e=>e.line)).map((e=>{let{className:t,line:n}=e;return[n,t]}))),d=Object.fromEntries(a.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.start,t]}))),u=Object.fromEntries(a.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.end,t]})));for(let h=0;h<r.length;){const e=r[h].match(o);if(!e){h+=1;continue}const t=e.slice(1).find((e=>void 0!==e));c[t]?l[c[t]].range+=`${h},`:d[t]?l[d[t]].start=h:u[t]&&(l[u[t]].range+=`${l[u[t]].start}-${h-1},`),r.splice(h,1)}n=r.join("\n");const m={};return Object.entries(l).forEach((e=>{let[t,{range:n}]=e;ne()(n).forEach((e=>{m[e]??=[],m[e].push(t)}))})),{lineClassNames:m,code:n}}const de={codeBlockContainer:"codeBlockContainer_CwxF"};function ue(e){let{as:t,...n}=e;const s=function(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach((e=>{let[s,a]=e;const i=t[s];i&&"string"==typeof a&&(n[i]=a)})),n}(ee());return(0,o.jsx)(t,{...n,style:s,className:(0,l.A)(n.className,de.codeBlockContainer,x.G.common.codeBlock)})}const me={codeBlockContent:"codeBlockContent_JR_y",codeBlockTitle:"codeBlockTitle_KZer",codeBlock:"codeBlock_MEXK",codeBlockStandalone:"codeBlockStandalone_YYsl",codeBlockLines:"codeBlockLines_hz4K",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_f03B",buttonGroup:"buttonGroup_ih1O"};function he(e){let{children:t,className:n}=e;return(0,o.jsx)(ue,{as:"pre",tabIndex:0,className:(0,l.A)(me.codeBlockStandalone,"thin-scrollbar",n),children:(0,o.jsx)("code",{className:me.codeBlockLines,children:t})})}var fe=n(6889);const pe={attributes:!0,characterData:!0,childList:!0,subtree:!0};function be(e,t){const[n,a]=(0,s.useState)(),i=(0,s.useCallback)((()=>{a(e.current?.closest("[role=tabpanel][hidden]"))}),[e,a]);(0,s.useEffect)((()=>{i()}),[i]),function(e,t,n){void 0===n&&(n=pe);const a=(0,fe._q)(t),i=(0,fe.Be)(n);(0,s.useEffect)((()=>{const t=new MutationObserver(a);return e&&t.observe(e,i),()=>t.disconnect()}),[e,a,i])}(n,(e=>{e.forEach((e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),i())}))}),{attributes:!0,characterData:!1,childList:!1,subtree:!1})}var xe=n(3477);const ge={codeLine:"codeLine_fqkp",codeLineNumber:"codeLineNumber_Czni",codeLineContent:"codeLineContent_Xi7h"};function ve(e){let{line:t,classNames:n,showLineNumbers:s,getLineProps:a,getTokenProps:i}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");const r=a({line:t,className:(0,l.A)(n,s&&ge.codeLine)}),c=t.map(((e,t)=>(0,o.jsx)("span",{...i({token:e})},t)));return(0,o.jsxs)("span",{...r,children:[s?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{className:ge.codeLineNumber}),(0,o.jsx)("span",{className:ge.codeLineContent,children:c})]}):c,(0,o.jsx)("br",{})]})}function je(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{fill:"currentColor",d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})})}function ke(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"})})}const Ne={copyButtonCopied:"copyButtonCopied_lh4q",copyButtonIcons:"copyButtonIcons_v6Sj",copyButtonIcon:"copyButtonIcon_FPWM",copyButtonSuccessIcon:"copyButtonSuccessIcon_Jve4"};function ye(e){let{code:t,className:n}=e;const[a,i]=(0,s.useState)(!1),r=(0,s.useRef)(void 0),c=(0,s.useCallback)((()=>{!function(e,t){let{target:n=document.body}=void 0===t?{}:t;if("string"!=typeof e)throw new TypeError(`Expected parameter \`text\` to be a \`string\`, got \`${typeof e}\`.`);const s=document.createElement("textarea"),a=document.activeElement;s.value=e,s.setAttribute("readonly",""),s.style.contain="strict",s.style.position="absolute",s.style.left="-9999px",s.style.fontSize="12pt";const i=document.getSelection(),o=i.rangeCount>0&&i.getRangeAt(0);n.append(s),s.select(),s.selectionStart=0,s.selectionEnd=e.length;let r=!1;try{r=document.execCommand("copy")}catch{}s.remove(),o&&(i.removeAllRanges(),i.addRange(o)),a&&a.focus()}(t),i(!0),r.current=window.setTimeout((()=>{i(!1)}),1e3)}),[t]);return(0,s.useEffect)((()=>()=>window.clearTimeout(r.current)),[]),(0,o.jsx)("button",{type:"button","aria-label":a?(0,d.T)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,d.T)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,d.T)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,l.A)("clean-btn",n,Ne.copyButton,a&&Ne.copyButtonCopied),onClick:c,children:(0,o.jsxs)("span",{className:Ne.copyButtonIcons,"aria-hidden":"true",children:[(0,o.jsx)(je,{className:Ne.copyButtonIcon}),(0,o.jsx)(ke,{className:Ne.copyButtonSuccessIcon})]})})}function Ce(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"})})}const we={wordWrapButtonIcon:"wordWrapButtonIcon_Y7KL",wordWrapButtonEnabled:"wordWrapButtonEnabled_G369"};function Ae(e){let{className:t,onClick:n,isEnabled:s}=e;const a=(0,d.T)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return(0,o.jsx)("button",{type:"button",onClick:n,className:(0,l.A)("clean-btn",t,s&&we.wordWrapButtonEnabled),"aria-label":a,title:a,children:(0,o.jsx)(Ce,{className:we.wordWrapButtonIcon,"aria-hidden":"true"})})}function Le(e){let{children:t,className:n="",metastring:a,title:i,showLineNumbers:r,language:c}=e;const{prism:{defaultLanguage:d,magicComments:u}}=(0,E.p)(),m=function(e){return e?.toLowerCase()}(c??function(e){const t=e.split(" ").find((e=>e.startsWith("language-")));return t?.replace(/language-/,"")}(n)??d),h=ee(),f=function(){const[e,t]=(0,s.useState)(!1),[n,a]=(0,s.useState)(!1),i=(0,s.useRef)(null),o=(0,s.useCallback)((()=>{const n=i.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t((e=>!e))}),[i,e]),r=(0,s.useCallback)((()=>{const{scrollWidth:e,clientWidth:t}=i.current,n=e>t||i.current.querySelector("code").hasAttribute("style");a(n)}),[i]);return be(i,r),(0,s.useEffect)((()=>{r()}),[e,r]),(0,s.useEffect)((()=>(window.addEventListener("resize",r,{passive:!0}),()=>{window.removeEventListener("resize",r)})),[r]),{codeBlockRef:i,isEnabled:e,isCodeScrollable:n,toggle:o}}(),p=function(e){return e?.match(se)?.groups.title??""}(a)||i,{lineClassNames:b,code:x}=ce(t,{metastring:a,language:m,magicComments:u}),g=r??function(e){return Boolean(e?.includes("showLineNumbers"))}(a);return(0,o.jsxs)(ue,{as:"div",className:(0,l.A)(n,m&&!n.includes(`language-${m}`)&&`language-${m}`),children:[p&&(0,o.jsx)("div",{className:me.codeBlockTitle,children:p}),(0,o.jsxs)("div",{className:me.codeBlockContent,children:[(0,o.jsx)(xe.f4,{theme:h,code:x,language:m??"text",children:e=>{let{className:t,style:n,tokens:s,getLineProps:a,getTokenProps:i}=e;return(0,o.jsx)("pre",{tabIndex:0,ref:f.codeBlockRef,className:(0,l.A)(t,me.codeBlock,"thin-scrollbar"),style:n,children:(0,o.jsx)("code",{className:(0,l.A)(me.codeBlockLines,g&&me.codeBlockLinesWithNumbering),children:s.map(((e,t)=>(0,o.jsx)(ve,{line:e,getLineProps:a,getTokenProps:i,classNames:b[t],showLineNumbers:g},t)))})})}}),(0,o.jsxs)("div",{className:me.buttonGroup,children:[(f.isEnabled||f.isCodeScrollable)&&(0,o.jsx)(Ae,{className:me.codeButton,onClick:()=>f.toggle(),isEnabled:f.isEnabled}),(0,o.jsx)(ye,{className:me.codeButton,code:x})]})]})]})}function Ee(e){let{children:t,...n}=e;const a=(0,X.A)(),i=function(e){return s.Children.toArray(e).some((e=>(0,s.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),r="string"==typeof i?Le:he;return(0,o.jsx)(r,{...n,children:i},String(a))}function Be(e){return(0,o.jsx)("code",{...e})}var Te=n(638);const Se={details:"details_tB_N",isBrowser:"isBrowser_H34u",collapsibleContent:"collapsibleContent_zY8v"};function _e(e){return!!e&&("SUMMARY"===e.tagName||_e(e.parentElement))}function Ie(e,t){return!!e&&(e===t||Ie(e.parentElement,t))}function Me(e){let{summary:t,children:n,...a}=e;(0,Te.A)().collectAnchor(a.id);const i=(0,X.A)(),r=(0,s.useRef)(null),{collapsed:c,setCollapsed:d}=(0,L.u)({initialState:!a.open}),[u,m]=(0,s.useState)(a.open),h=s.isValidElement(t)?t:(0,o.jsx)("summary",{children:t??"Details"});return(0,o.jsxs)("details",{...a,ref:r,open:u,"data-collapsed":c,className:(0,l.A)(Se.details,i&&Se.isBrowser,a.className),onMouseDown:e=>{_e(e.target)&&e.detail>1&&e.preventDefault()},onClick:e=>{e.stopPropagation();const t=e.target;_e(t)&&Ie(t,r.current)&&(e.preventDefault(),c?(d(!1),m(!0)):d(!0))},children:[h,(0,o.jsx)(L.N,{lazy:!1,collapsed:c,disableSSRStyle:!0,onCollapseTransitionEnd:e=>{d(e),m(!e)},children:(0,o.jsx)("div",{className:Se.collapsibleContent,children:n})})]})}const Re={details:"details_qVdL"},He="alert alert--info";function Ue(e){let{...t}=e;return(0,o.jsx)(Me,{...t,className:(0,l.A)(He,Re.details,t.className)})}function $e(e){const t=s.Children.toArray(e.children),n=t.find((e=>s.isValidElement(e)&&"summary"===e.type)),a=(0,o.jsx)(o.Fragment,{children:t.filter((e=>e!==n))});return(0,o.jsx)(Ue,{...e,summary:n,children:a})}function ze(e){return(0,o.jsx)(Y.A,{...e})}const Ve={containsTaskList:"containsTaskList_N817"};function Oe(e){if(void 0!==e)return(0,l.A)(e,e?.includes("contains-task-list")&&Ve.containsTaskList)}const De={img:"img_gJjv"};function Fe(e){const{mdxAdmonitionTitle:t,rest:n}=function(e){const t=s.Children.toArray(e),n=t.find((e=>s.isValidElement(e)&&"mdxAdmonitionTitle"===e.type)),a=t.filter((e=>e!==n)),i=n?.props.children;return{mdxAdmonitionTitle:i,rest:a.length>0?(0,o.jsx)(o.Fragment,{children:a}):null}}(e.children),a=e.title??t;return{...e,...a&&{title:a},children:n}}const Pe={admonition:"admonition_htFo",admonitionHeading:"admonitionHeading_oO7N",admonitionIcon:"admonitionIcon_mQHU",admonitionContent:"admonitionContent_F6Iy"};function Ge(e){let{type:t,className:n,children:s}=e;return(0,o.jsx)("div",{className:(0,l.A)(x.G.common.admonition,x.G.common.admonitionType(t),Pe.admonition,n),children:s})}function qe(e){let{icon:t,title:n}=e;return(0,o.jsxs)("div",{className:Pe.admonitionHeading,children:[(0,o.jsx)("span",{className:Pe.admonitionIcon,children:t}),n]})}function We(e){let{children:t}=e;return t?(0,o.jsx)("div",{className:Pe.admonitionContent,children:t}):null}function Je(e){const{type:t,icon:n,title:s,children:a,className:i}=e;return(0,o.jsxs)(Ge,{type:t,className:i,children:[s||n?(0,o.jsx)(qe,{title:s,icon:n}):null,(0,o.jsx)(We,{children:a})]})}function Ye(e){return(0,o.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"})})}const Ze={icon:(0,o.jsx)(Ye,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)",children:"note"})};function Ke(e){return(0,o.jsx)(Je,{...Ze,...e,className:(0,l.A)("alert alert--secondary",e.className),children:e.children})}function Xe(e){return(0,o.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"})})}const Qe={icon:(0,o.jsx)(Xe,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)",children:"tip"})};function et(e){return(0,o.jsx)(Je,{...Qe,...e,className:(0,l.A)("alert alert--success",e.className),children:e.children})}function tt(e){return(0,o.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"})})}const nt={icon:(0,o.jsx)(tt,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)",children:"info"})};function st(e){return(0,o.jsx)(Je,{...nt,...e,className:(0,l.A)("alert alert--info",e.className),children:e.children})}function at(e){return(0,o.jsx)("svg",{viewBox:"0 0 16 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"})})}const it={icon:(0,o.jsx)(at,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.warning",description:"The default label used for the Warning admonition (:::warning)",children:"warning"})};function ot(e){return(0,o.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",d:"M5.05.31c.81 2.17.41 3.38-.52 4.31C3.55 5.67 1.98 6.45.9 7.98c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.31 8.68 2.45 5.05.32L5.03.3l.02.01z"})})}const rt={icon:(0,o.jsx)(ot,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)",children:"danger"})};const lt={icon:(0,o.jsx)(at,{}),title:(0,o.jsx)(d.A,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)",children:"caution"})};const ct={...{note:Ke,tip:et,info:st,warning:function(e){return(0,o.jsx)(Je,{...it,...e,className:(0,l.A)("alert alert--warning",e.className),children:e.children})},danger:function(e){return(0,o.jsx)(Je,{...rt,...e,className:(0,l.A)("alert alert--danger",e.className),children:e.children})}},...{secondary:e=>(0,o.jsx)(Ke,{title:"secondary",...e}),important:e=>(0,o.jsx)(st,{title:"important",...e}),success:e=>(0,o.jsx)(et,{title:"success",...e}),caution:function(e){return(0,o.jsx)(Je,{...lt,...e,className:(0,l.A)("alert alert--warning",e.className),children:e.children})}}};function dt(e){const t=Fe(e),n=(s=t.type,ct[s]||(console.warn(`No admonition component found for admonition type "${s}". Using Info as fallback.`),ct.info));var s;return(0,o.jsx)(n,{...t})}const ut={Head:K.A,details:$e,Details:$e,code:function(e){return function(e){return void 0!==e.children&&s.Children.toArray(e.children).every((e=>"string"==typeof e&&!e.includes("\n")))}(e)?(0,o.jsx)(Be,{...e}):(0,o.jsx)(Ee,{...e})},a:function(e){return(0,o.jsx)(u.A,{...e})},pre:function(e){return(0,o.jsx)(o.Fragment,{children:e.children})},ul:function(e){return(0,o.jsx)("ul",{...e,className:Oe(e.className)})},li:function(e){return(0,Te.A)().collectAnchor(e.id),(0,o.jsx)("li",{...e})},img:function(e){return(0,o.jsx)("img",{decoding:"async",loading:"lazy",...e,className:(t=e.className,(0,l.A)(t,De.img))});var t},h1:e=>(0,o.jsx)(ze,{as:"h1",...e}),h2:e=>(0,o.jsx)(ze,{as:"h2",...e}),h3:e=>(0,o.jsx)(ze,{as:"h3",...e}),h4:e=>(0,o.jsx)(ze,{as:"h4",...e}),h5:e=>(0,o.jsx)(ze,{as:"h5",...e}),h6:e=>(0,o.jsx)(ze,{as:"h6",...e}),admonition:dt,mermaid:()=>null};function mt(e){let{children:t}=e;return(0,o.jsx)(Z.x,{components:ut,children:t})}function ht(e){let{children:t}=e;const n=function(){const{metadata:e,frontMatter:t,contentTitle:n}=(0,i.u)();return t.hide_title||void 0!==n?null:e.title}();return(0,o.jsxs)("div",{className:(0,l.A)(x.G.docs.docMarkdown,"markdown"),children:[n&&(0,o.jsx)("header",{children:(0,o.jsx)(Y.A,{as:"h1",children:n})}),(0,o.jsx)(mt,{children:t})]})}var ft=n(2186),pt=n(8819),bt=n(3016);function xt(e){return(0,o.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,o.jsx)("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"})})}const gt={breadcrumbHomeIcon:"breadcrumbHomeIcon_ElY6"};function vt(){const e=(0,bt.Ay)("/");return(0,o.jsx)("li",{className:"breadcrumbs__item",children:(0,o.jsx)(u.A,{"aria-label":(0,d.T)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:"breadcrumbs__link",href:e,children:(0,o.jsx)(xt,{className:gt.breadcrumbHomeIcon})})})}const jt={breadcrumbsContainer:"breadcrumbsContainer_LRow"};function kt(e){let{children:t,href:n,isLast:s}=e;const a="breadcrumbs__link";return s?(0,o.jsx)("span",{className:a,itemProp:"name",children:t}):n?(0,o.jsx)(u.A,{className:a,href:n,itemProp:"item",children:(0,o.jsx)("span",{itemProp:"name",children:t})}):(0,o.jsx)("span",{className:a,children:t})}function Nt(e){let{children:t,active:n,index:s,addMicrodata:a}=e;return(0,o.jsxs)("li",{...a&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},className:(0,l.A)("breadcrumbs__item",{"breadcrumbs__item--active":n}),children:[t,(0,o.jsx)("meta",{itemProp:"position",content:String(s+1)})]})}function yt(){const e=(0,ft.OF)(),t=(0,pt.Dt)();return e?(0,o.jsx)("nav",{className:(0,l.A)(x.G.docs.docBreadcrumbs,jt.breadcrumbsContainer),"aria-label":(0,d.T)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"}),children:(0,o.jsxs)("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList",children:[t&&(0,o.jsx)(vt,{}),e.map(((t,n)=>{const s=n===e.length-1,a="category"===t.type&&t.linkUnlisted?void 0:t.href;return(0,o.jsx)(Nt,{active:s,index:n,addMicrodata:!!a,children:(0,o.jsx)(kt,{href:a,isLast:s,children:t.label})},n)}))]})}):null}function Ct(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.unlistedBanner.title",description:"The unlisted content banner title",children:"Unlisted page"})}function wt(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.unlistedBanner.message",description:"The unlisted content banner message",children:"This page is unlisted. Search engines will not index it, and only users having a direct link can access it."})}function At(){return(0,o.jsx)(K.A,{children:(0,o.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})}function Lt(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.draftBanner.title",description:"The draft content banner title",children:"Draft page"})}function Et(){return(0,o.jsx)(d.A,{id:"theme.contentVisibility.draftBanner.message",description:"The draft content banner message",children:"This page is a draft. It will only be visible in dev and be excluded from the production build."})}function Bt(e){let{className:t}=e;return(0,o.jsx)(dt,{type:"caution",title:(0,o.jsx)(Lt,{}),className:(0,l.A)(t,x.G.common.draftBanner),children:(0,o.jsx)(Et,{})})}function Tt(e){let{className:t}=e;return(0,o.jsx)(dt,{type:"caution",title:(0,o.jsx)(Ct,{}),className:(0,l.A)(t,x.G.common.unlistedBanner),children:(0,o.jsx)(wt,{})})}function St(e){return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(At,{}),(0,o.jsx)(Tt,{...e})]})}function _t(e){let{metadata:t}=e;const{unlisted:n,frontMatter:s}=t;return(0,o.jsxs)(o.Fragment,{children:[(n||s.unlisted)&&(0,o.jsx)(St,{}),s.draft&&(0,o.jsx)(Bt,{})]})}const It={docItemContainer:"docItemContainer_qRF8",docItemCol:"docItemCol_XRsm"};function Mt(e){let{children:t}=e;const n=function(){const{frontMatter:e,toc:t}=(0,i.u)(),n=(0,c.l)(),s=e.hide_table_of_contents,a=!s&&t.length>0;return{hidden:s,mobile:a?(0,o.jsx)(F,{}):void 0,desktop:!a||"desktop"!==n&&"ssr"!==n?void 0:(0,o.jsx)(J,{})}}(),{metadata:s}=(0,i.u)();return(0,o.jsxs)("div",{className:"row",children:[(0,o.jsxs)("div",{className:(0,l.A)("col",!n.hidden&&It.docItemCol),children:[(0,o.jsx)(_t,{metadata:s}),(0,o.jsx)(C,{}),(0,o.jsxs)("div",{className:It.docItemContainer,children:[(0,o.jsxs)("article",{children:[(0,o.jsx)(yt,{}),(0,o.jsx)(w,{}),n.mobile,(0,o.jsx)(ht,{children:t}),(0,o.jsx)(A.A,{})]}),(0,o.jsx)(f,{})]})]}),n.desktop&&(0,o.jsx)("div",{className:"col col--3",children:n.desktop})]})}function Rt(e){const t=`docs-doc-id-${e.content.metadata.id}`,n=e.content;return(0,o.jsx)(i._,{content:e.content,children:(0,o.jsxs)(a.e3,{className:t,children:[(0,o.jsx)(r,{}),(0,o.jsx)(Mt,{children:(0,o.jsx)(n,{})})]})})}},4809:(e,t)=>{function n(e){let t,n=[];for(let s of e.split(",").map((e=>e.trim())))if(/^-?\d+$/.test(s))n.push(parseInt(s,10));else if(t=s.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,s,a,i]=t;if(s&&i){s=parseInt(s),i=parseInt(i);const e=s<i?1:-1;"-"!==a&&".."!==a&&"\u2025"!==a||(i+=e);for(let t=s;t!==i;t+=e)n.push(t)}}return n}t.default=n,e.exports=n},2041:(e,t,n)=>{"use strict";n.d(t,{D1:()=>P,MB:()=>G,l6:()=>$,vN:()=>_});var s=n(758),a=n(6070),i=n(8143);function o(e,t){if(!e||"$auto"===e)return t?.toString()||(typeof window<"u"?window.location.href:"/");if("$path"===e){"string"==typeof t&&(t=new URL(t));let e=t||(typeof window<"u"?window.location:void 0);return e?`${e.origin}${e.pathname}`:"/"}return e}var r="fbs-store";function l(e){return"contentId"in e?e.contentId:`${e.contentSetId}/${o(e.key)}`}var c,d,u=class{constructor(e){if(this.feelbacks=void 0,e??="local",typeof window>"u"&&(e="memory"),"local"===e)this.storage=window.localStorage;else if("session"===e)this.storage=window.sessionStorage;else{let e=()=>{};this.storage={getItem:e,setItem:e,removeItem:e,clear:e,key:e,length:0}}this.load()}add(e){let t=l(e.target),n=(this.feelbacks??=[]).findIndex((e=>e.key===t));n>=0&&this.feelbacks.splice(n,1),this.feelbacks.push({key:t,value:e.value,expire:e.expireIn&&e.expireIn>0?Math.floor(Date.now()/1e3)+e.expireIn:void 0,feelbackId:e.feelbackId,revokeToken:e.revokable?.token,revokeExpire:e.revokable?.expireAt&&Math.floor(new Date(e.revokable.expireAt).getTime()/1e3)||void 0}),this.save()}clear(){this.feelbacks?.splice(0,this.feelbacks.length),this.storage.removeItem(r)}remove(e){let t="string"==typeof e?this.feelbacks?.findIndex((t=>t.feelbackId===e)):(e=l(e),this.feelbacks?.findIndex((t=>t.key===e)));void 0!==t&&t>=0&&(this.feelbacks.splice(t,1),this.save())}getValue(e){return this.getFeelback(e)?.value}isRevokable(e){return!!this.getRevocable(e)}getRevocable(e){let t=this.getFeelback(e);if(t&&t.revokeToken&&!(t.revokeExpire&&t.revokeExpire<Date.now()/1e3))return{feelbackId:t.feelbackId,revokeToken:t.revokeToken}}load(e){if(this.feelbacks&&!e)return;let t;try{t=JSON.parse(this.storage.getItem(r))||[]}catch{t=[]}this.feelbacks=t.filter((e=>!e.expire||e.expire>Date.now()/1e3)),t.length!==this.feelbacks.length&&this.save()}save(){try{this.storage.setItem(r,JSON.stringify(this.feelbacks))}catch{}}getFeelback(e){let t="string"==typeof e?this.feelbacks?.find((t=>t.feelbackId===e)):(e=l(e),this.feelbacks?.find((t=>t.key===e)));if(!(t&&t.expire&&t.expire<Date.now()/1e3))return t;this.remove(t.feelbackId)}};function m(e){return e??=d||"local",c&&d===e?c:(d=e,c=new u(e))}async function h(e){if((e=await e).status>=400)throw new Error("[feelback] API error");if(204!==e.status)return await e.json()}var f={get:async function(e,...t){return t.length>0&&(e=`${e}?$p=${JSON.stringify(t)}`),await h(fetch(e,{method:"GET"}))},post:async function(e,...t){return await h(fetch(e,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(t)}))}},p="https://api.feelback.dev/v0";var b=(0,s.createContext)(void 0);function x(){return(0,s.useContext)(b)}var g=()=>{let e=(0,s.useRef)(!1);return(0,s.useEffect)((()=>(e.current=!0,()=>{e.current=!1})),[]),()=>e.current};function v(e=5e3,t,n){(0,s.useEffect)((()=>{if(t)return function(e,t){let n=setTimeout(t,e);return()=>clearTimeout(n)}(e,(()=>n(t)))}),[t])}function j(e=5e3,t=!1){let n=(0,s.useRef)(t),[a,i]=(0,s.useState)(),o=(0,s.useCallback)((()=>r(n.current)),[]),r=(0,s.useCallback)((e=>i(e??!0)),[]);return v(e,a,o),{value:a,set:r,reset:o}}function k(e,t){let n=(0,s.useRef)(null);return(0,s.useEffect)((()=>{if(e&&t){let e=e=>{(!e.target||!n.current?.contains(e.target))&&(t(),e.stopPropagation(),e.preventDefault())};return document.addEventListener("click",e,{capture:!0}),()=>document.removeEventListener("click",e,{capture:!0})}}),[e]),n}var N={data:void 0,isLoading:!1,isCompleted:!1,isSuccess:!1,isError:!1,error:void 0};function y(e,t,n){let a=(0,s.useRef)(0),i=g(),o=!!n?.paused,r=!!t&&!o,[l,c]=(0,s.useReducer)(C,r,(e=>({...N,isLoading:e})));async function d(...t){let n=++a.current;try{l.isLoading||c({type:"LOADING"});let s=await e(...t);return i()&&n===a.current&&c({type:"SUCCESS",data:s}),C(l,{type:"SUCCESS",data:s})}catch(s){return i()&&n===a.current&&c({type:"ERROR",error:s}),C(l,{type:"ERROR",error:s})}}return(0,s.useEffect)((()=>{!o&&t&&d()}),[o,...t||[]]),{...l,call:d,exec:async(...e)=>{let t=await d(...e);if(t.error)throw t.error;return t.data},reset:()=>{c({type:"RESET"})}}}function C(e,t){switch(t.type){case"LOADING":return{...N,isLoading:!0,data:e.data};case"SUCCESS":return{...N,isCompleted:!0,isSuccess:!0,data:t.data};case"ERROR":return{...N,isCompleted:!0,error:t.error,isError:!0};case"RESET":return{...N};default:throw new Error("unknown action")}}function w(){let e=(0,s.useRef)("");return e.current||(e.current="i"+Math.random().toString().substring(2)),e.current}function A(e){if("function"==typeof e)return(0,s.createElement)(e);if("object"==typeof e&&"text"in e)return(0,s.createElement)(s.Fragment,void 0,[e.text]);if((0,s.isValidElement)(e))return e;throw console.error("Invalid icon",e),new Error("Invalid icon")}function L(e,t){return e&&t?function(){e.apply(this,arguments),t.apply(this,arguments)}:e||t}function E(e){let{count:t=!1,isActive:n=!1,isDisabled:s=!1,label:i,title:o,icon:r,onClick:l}=e;return(0,a.jsxs)("button",{title:o,className:`feelback-btn ${s?"disabled":""} ${n?"active":""}`,onClick:l,children:[r&&(Array.isArray(r)?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"feelback-icon inactive",children:A(r[0])}),(0,a.jsx)("span",{className:"feelback-icon active",children:A(r[1])})]}):(0,a.jsx)("span",{className:"feelback-icon",children:A(r)})),i&&(0,a.jsx)("span",{className:"label",children:i}),!1!==t&&(0,a.jsx)("span",{className:"feelback-count",children:t})]})}function B(e){let{active:t,showCount:n=!1,showLabels:s=!1,showTitle:i=!s,hideZero:o=!1,hideZeroCount:r=!0,isDisabled:l=!1,items:c,counts:d,onClick:u}=e;return(0,a.jsx)("div",{className:"feelback-buttons"+(n&&c.length>1?" with-count":""),children:c.map((({value:e,icon:c,title:m},h)=>{let f=d?.[h]||(t===e?1:0);return o&&f<=0?null:(0,a.jsx)(E,{title:i&&m||void 0,label:s&&m||void 0,icon:c,count:n&&f||(r?void 0:0),isDisabled:l,isActive:t===e,onClick:()=>u?.(e)},e)}))})}function T(e){let{group:t,value:n,label:s,description:i,checked:o,onSelected:r}=e,l=`radio-${w()}`;return(0,a.jsxs)("div",{className:"feelback-radio-item",children:[(0,a.jsx)("input",{id:l,name:t,type:"radio",value:n,checked:o,onChange:e=>e.target.checked?r?.():void 0}),(0,a.jsxs)("div",{className:"feelback-radio-side",children:[s&&(0,a.jsx)("label",{htmlFor:l,children:s}),i&&(0,a.jsx)("span",{className:"feelback-text",children:i})]})]})}function S(e){let{active:t,isDisabled:n=!1,items:s,onRenderAddon:i,onSelected:o}=e,r=`rg-${w()}`;return(0,a.jsx)("fieldset",{className:"feelback-radio-group",children:s.map((e=>(0,a.jsxs)("div",{className:"feelback-radio-item-wrap",children:[(0,a.jsx)(T,{group:r,checked:t===e.value,value:e.value,label:e.title,description:e.description,onSelected:()=>o?.(e.value)}),i?.({item:e,isSelected:t===e.value,isDisabled:n})||null]},e.value)))})}function _(e){let{text:t,...n}=e;return(0,a.jsxs)("div",{className:"feelback-q",children:[t&&"string"==typeof t&&(0,a.jsx)("span",{className:"feelback-text",children:t}),t&&(0,s.isValidElement)(t)&&t,(0,a.jsx)(B,{...n})]})}function I(e){let{text:t}=e;return(0,a.jsx)("div",{className:"feelback-a",children:(0,a.jsx)("span",{className:"feelback-text",children:t})})}var M=(0,s.forwardRef)(((e,t)=>{let{className:n,layout:i,label:o="Send feedback",textAnswer:r="Thanks for your feedback",revokable:l=!0,onClose:c,onSuccess:d,children:u,...m}=e,{call:h,isSuccess:f}=V(m),{value:p,set:b}=j(1e3),x=({value:e,metadata:t})=>{b(!0),h(e,{metadata:t,revokable:l}).then((({isSuccess:t})=>{t&&d?.({...m,value:e})}))};return(0,a.jsxs)("div",{ref:t,className:"feelback-container"+(n?" "+n:""),style:{pointerEvents:p?"none":void 0},children:[!f&&(()=>{switch(i){case"button-switch":return(0,a.jsx)(R,{label:o,behavior:"remove-when-open",children:e=>(0,s.cloneElement)(u,{onSubmit:x,onCancel:e})});case"button-dialog":return(0,a.jsx)(R,{label:o,behavior:"disable-when-open",children:e=>(0,a.jsx)(H,{onClose:e,children:(0,s.cloneElement)(u,{onSubmit:x,onCancel:e})})});case"radio-group-dialog":return(0,a.jsx)(H,{onClose:c,children:(0,s.cloneElement)(u,{onSubmit:x,onCancel:L(u.props.onCancel,c)})});default:return(0,s.cloneElement)(u,{onSubmit:x})}})(),f&&(0,a.jsx)(I,{text:r})]})}));function R(e){let{label:t,behavior:n="remove-when-open",children:i}=e,[o,r]=(0,s.useState)(!1);return(0,a.jsxs)(a.Fragment,{children:[(!o||"remove-when-open"!==n)&&(0,a.jsx)("button",{className:"feelback-btn btn-action trigger-btn",disabled:o,onClick:()=>r(!0),children:t}),o&&i((()=>r(!1)))]})}function H(e){let{onClose:t,children:n}=e,o=k(!0,t);return(0,i.createPortal)((0,a.jsx)("div",{className:"feelback-style",children:(0,a.jsx)("div",{className:"dialog",children:(0,s.cloneElement)(n,{ref:o})})}),document.body)}var U=(0,s.forwardRef)(((e,t)=>{let{title:n="Send feedback",alignButton:s="right",showButton:i=!0,onCancel:o,onSubmit:r,onValidate:l,slots:c,children:d}=e;return(0,a.jsx)("div",{ref:t,className:"feelback-form",children:(0,a.jsxs)("div",{className:"content",children:[n&&(0,a.jsx)("span",{className:"feelback-text form-title",children:n}),d,i&&c?.BeforeFormButtons,i&&(0,a.jsxs)("div",{className:"form-buttons feelback-buttons "+("right"===s?"align-end":""),children:[(0,a.jsx)("button",{className:"feelback-btn btn-action",onClick:()=>{let e=l();void 0!==e&&r?.(e)},children:"Send"}),o&&(0,a.jsx)("button",{className:"feelback-btn btn-cancel",onClick:o,children:"Cancel"})]})]})})}));(0,s.forwardRef)(((e,t)=>{let{title:n="Send feedback",placeholder:i="Type your message",minLength:o,maxLength:r,withEmail:l,placeholderEmail:c="your@email.com"+(l&&"required"!==l?" (optional)":""),slots:d,onCancel:u,onSubmit:m}=e,h=(0,s.useRef)(null),f="required"===l,p=(0,s.useRef)(null);return(0,a.jsxs)(U,{slots:d,title:n,onCancel:u,onSubmit:m,ref:t,onValidate:()=>{let e=h.current?.value.trim()||void 0,t=p.current?.value?.trim()||void 0;if(e&&!(o&&o>0&&e.length<o)&&!(t&&!t.match(/^(.+)@(.+)$/)||f))return{value:e,metadata:t?{$user:t}:void 0}},children:[d?.BeforeMessage,(0,a.jsx)("textarea",{ref:h,required:!0,placeholder:i||void 0,minLength:o,maxLength:r}),l&&(0,a.jsxs)(a.Fragment,{children:[d?.BeforeEmail,(0,a.jsx)("input",{ref:p,type:"email",name:"email",required:f,placeholder:c||void 0})]})]})}));function $(e){let{layout:t="button-switch",label:n="Send feedback",revokable:s,preset:i,tags:o=i,active:r,title:l,placeholder:c,minLength:d,maxLength:u,textAnswer:m="Thanks for your feedback",showLabels:h=!1,style:f,withEmail:p,placeholderEmail:b,onCancel:x,onSuccess:g,slots:v,...j}=e;if(!o)return console.warn("Missing tags"),null;let k=f&&Array.isArray(f)?f.join(" "):f||void 0;return(0,a.jsx)(M,{className:`feelback-tagged-message layout-${t} ${k}`,layout:t,label:n,revokable:s,onSuccess:g,...j,children:(0,a.jsx)(z,{title:l,tags:o,showLabels:h,placeholder:c,minLength:d,maxLength:u,withEmail:p,placeholderEmail:b,onCancel:x,slots:v,layout:"reveal-message"===t?t:"radio-group"===t||"radio-group-dialog"===t?"radio-group":"form"})})}var z=(0,s.forwardRef)(((e,t)=>{let{layout:n,title:i="Send feedback",active:o,tags:r,showLabels:l=!0,placeholder:c="Type your message",minLength:d,maxLength:u,withEmail:m,placeholderEmail:h="your@email.com"+(m&&"required"!==m?" (optional)":""),slots:f,onCancel:p,onSubmit:b}=e,x=!!d&&d>0,g=(0,s.useRef)(null),v="required"===m,j=(0,s.useRef)(null),[k,N]=(0,s.useState)("$auto"===o?r[0].value:o),y=(0,a.jsxs)(a.Fragment,{children:[f?.BeforeMessage,(0,a.jsx)("textarea",{ref:g,required:x,placeholder:c||void 0,minLength:d,maxLength:u})]}),C=m&&(0,a.jsxs)(a.Fragment,{children:[f?.BeforeEmail,(0,a.jsx)("input",{ref:j,type:"email",name:"email",required:v,placeholder:h||void 0})]});return(0,a.jsxs)(U,{onCancel:p,onSubmit:b,ref:t,onValidate:()=>{let e=g.current?.value?.trim()||void 0,t=j.current?.value?.trim()||void 0;if(k&&(!x||e&&!(e.length<d))&&!(t&&!t.match(/^(.+)@(.+)$/)||v))return{value:{tag:k,message:e},metadata:t?{$user:t}:void 0}},title:"reveal-message"!==n&&i,showButton:"reveal-message"!==n||!!k,alignButton:"radio-group"===n?"left":"right",slots:f,children:["form"===n&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(B,{items:r,showLabels:l,active:k,onClick:N}),y,C]}),"radio-group"===n&&(0,a.jsx)(S,{items:r,active:k,onSelected:N,onRenderAddon:({isSelected:e})=>e&&(0,a.jsxs)(a.Fragment,{children:[y,C]})}),"reveal-message"===n&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(_,{text:i,items:r,showLabels:l,active:k,onClick:N}),k&&(0,a.jsxs)(a.Fragment,{children:[y,C]})]})]})}));function V(e){let t=x(),n=O(e);return y(((e,s)=>async function(e){let{endpoint:t=p,store:n="local",revokable:s=!0,value:a,metadata:i,expireIn:r=3600}=e,l="contentId"in e?{contentId:e.contentId}:{contentSetId:e.contentSetId,key:o(e.key)},c=n&&"none"!==n&&m(n)||void 0,d=s&&c?.getRevocable(l)||void 0,u=d?await f.post(`${t}/feelbacks/edit`,{...d,value:a}):await f.post(`${t}/feelbacks/create`,{...l,value:a,context:i,revokable:s});c?.add({...u,target:l,value:a,expireIn:r})}({endpoint:t?.endpoint,store:t?.store,...s,...n,value:e})))}function O(e){let t=(0,s.useRef)(e);return t.current!==e&&("contentId"in t.current&&"contentId"in e?t.current.contentId!==e.contentId&&t.current:"contentSetId"in t.current&&"contentSetId"in e?(t.current.contentSetId!==e.contentSetId||t.current.key!==e.key)&&(t.current=e):t.current=e),t.current}var D=e=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 500 500",fill:"currentColor",width:"1em",height:"1em",...e},s.createElement("g",null,s.createElement("path",{d:"M172.7,309.1c0-7.4-3-14.6-8.3-19.9s-12.4-8.3-19.9-8.3H74.4c-10.1,0-19.3,5.4-24.4,14.1c-5.1,8.7-5,19.5,0,28.1 s14.3,14.1,24.4,14.1h70.2c7.4,0,14.6-3,19.9-8.3S172.7,316.5,172.7,309.1L172.7,309.1z"}),s.createElement("path",{d:"M102.5,449.5h70.2c10.1,0,19.3-5.4,24.4-14.1c5-8.6,5-19.5,0-28.1s-14.3-14.1-24.4-14.1h-70.2c-10.1,0-19.3,5.4-24.4,14.1 c-5,8.6-5,19.5,0,28.1C83.2,444.1,92.5,449.5,102.5,449.5z"}),s.createElement("path",{d:"M53.2,224.9h83.3c18.8,0,36.4-9.4,46.8-24.9l95.7-143.6h5c11.6,0,22.5,5.7,29.2,15.1s8.6,21.6,5,32.5l-25.4,76.5 c-1.3,3.7-0.6,7.9,1.8,11.2c2.3,3.2,6.2,5.2,10.1,5.2h65.6c14.7-0.3,28.8,6.3,37.9,17.7c5.3,6.6,8.6,14.3,9.8,22.6 c1.3,8.3,0.3,16.7-2.7,24.5l-47.6,118.7c-1.5,3.9-4.3,7.2-7.6,9.5c-3.5,2.3-7.5,3.6-11.6,3.6h-61.8l0,0c-7.1-0.3-14.2,2.2-19.7,7 c-5.4,4.6-8.9,11.2-9.9,18.4c-0.8,7.9,1.9,15.8,7.1,21.7c5.4,5.9,12.9,9.2,20.9,9.2h63.3c15.5,0,30.5-4.6,43.2-13.3 c12.8-8.6,22.7-20.9,28.5-35.2l47.6-118.8c12.8-32.1,8.8-68.5-11-97c-19.7-28.5-52.1-45.3-86.8-44.6h-4.6l5.7-17 c5.2-14.8,6.7-30.6,4.3-46.2c-3.6-21.6-14.8-41.3-31.5-55.5s-37.9-22.1-60-22h-20c-9.4,0-18.2,4.6-23.3,12.5l-104,156H54.5 c-7.1-0.1-14.1,2.3-19.6,7c-5.5,4.7-8.9,11.2-9.8,18.3c-0.8,7.9,1.9,15.8,7.1,21.7C37.8,221.4,45.2,224.9,53.2,224.9L53.2,224.9z"}))),F=e=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 500 500",fill:"currentColor",width:"1em",height:"1em",...e},s.createElement("g",null,s.createElement("path",{d:"M327.3,190.8c0,7.3,2.9,14.6,8.3,19.8c5.3,5.3,12.4,8.3,19.8,8.3h70.2c10.1,0,19.4-5.4,24.4-14c5-8.6,5-19.5,0-28.1 c-5-8.6-14.3-14-24.4-14h-70.2c-7.3,0-14.6,2.9-19.8,8.3C330.3,176.3,327.3,183.4,327.3,190.8L327.3,190.8z"}),s.createElement("path",{d:"M397.5,50.4h-70.2c-10.1,0-19.4,5.4-24.4,14c-5,8.6-5,19.5,0,28.1c5,8.6,14.3,14,24.4,14h70.2c10.1,0,19.4-5.4,24.4-14 s5-19.5,0-28.1S407.6,50.4,397.5,50.4z"}),s.createElement("path",{d:"M446.8,275.1h-83.3c-18.8,0-36.3,9.5-46.8,25l-95.7,143.6h-5c-11.6,0-22.5-5.7-29.3-15.1c-6.8-9.4-8.6-21.6-5-32.5 l25.4-76.5c1.3-3.8,0.6-7.9-1.8-11.2c-2.3-3.2-6.2-5.1-10.1-5.1h-65.5c-14.7,0.3-28.7-6.3-38.1-17.7c-5.3-6.6-8.6-14.3-9.8-22.6 c-1.3-8.3-0.3-16.6,2.7-24.5l47.6-118.8c1.6-3.9,4.2-7.2,7.6-9.5c3.5-2.3,7.5-3.6,11.6-3.6h61.8l0,0c7.1,0.3,14.2-2.3,19.7-7 c5.4-4.7,8.9-11.3,9.9-18.4c0.7-7.9-1.9-15.8-7.1-21.7c-5.4-6-12.9-9.2-20.9-9.2h-63.3c-15.5,0-30.5,4.7-43.2,13.3 C95.7,72.4,85.8,84.7,80,99L32.4,217.8c-12.8,32.1-8.8,68.5,10.9,97.1c19.7,28.6,52.1,45.2,86.8,44.7h4.7l-5.7,17.1 c-5.1,14.9-6.7,30.6-4.2,46.2c3.6,21.6,14.9,41.3,31.5,55.4s37.9,21.8,59.8,21.7h20c9.5,0,18.2-4.7,23.3-12.5l104.1-156h82.1 c7.1,0.1,14-2.3,19.6-7c5.5-4.7,8.9-11.2,9.8-18.4c0.7-7.9-1.9-15.8-7.1-21.7C462.4,278.5,454.8,275.1,446.8,275.1L446.8,275.1z"}))),P=[{value:"y",icon:D,title:"Yes"},{value:"n",icon:F,title:"No"}],G=[{value:"idea",icon:{text:"\ud83d\udca1"},title:"Idea"},{value:"error",icon:{text:"\ud83d\udca5"},title:"Error"},{value:"other",icon:{text:"\ud83d\udcac"},title:"Other"}]},8355:(e,t,n)=>{"use strict";n.d(t,{R:()=>o,x:()=>r});var s=n(758);const a={},i=s.createContext(a);function o(e){const t=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:o(e.components),s.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/73ad1aec.ea7529f6.js b/assets/js/73ad1aec.4422a377.js similarity index 97% rename from assets/js/73ad1aec.ea7529f6.js rename to assets/js/73ad1aec.4422a377.js index 7427bc1c..9d2ecac0 100644 --- a/assets/js/73ad1aec.ea7529f6.js +++ b/assets/js/73ad1aec.4422a377.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7420],{3250:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var i=t(6070),o=t(5710);const a={id:"client-node",title:"Client Node"},r=void 0,s={id:"learn/core-concepts/node/client-node",title:"Client Node",description:"Runtime",source:"@site/docs/02-learn/03-core-concepts/02-node/01-client-node.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/client-node",permalink:"/learn/core-concepts/node/client-node",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"client-node",title:"Client Node"},sidebar:"tutorialSidebar",previous:{title:"Identity",permalink:"/learn/core-concepts/identity"},next:{title:"Runtime",permalink:"/learn/core-concepts/node/runtime"}},c={},l=[{value:"Runtime",id:"runtime",level:3},{value:"Recommendations for Developers: Thorough testing of applications in a controlled environment is advised before deploying them in production to ensure stability and security. Additionally, developers are encouraged to implement locked update rules to prevent unauthorized modifications to the application's behavior.",id:"recommendations-for-developers-thorough-testing-of-applications-in-a-controlled-environment-is-advised-before-deploying-them-in-production-to-ensure-stability-and-security-additionally-developers-are-encouraged-to-implement-locked-update-rules-to-prevent-unauthorized-modifications-to-the-applications-behavior",level:4},{value:"Storage",id:"storage",level:3},{value:"Encryption:",id:"encryption",level:3},{value:"Identity Management",id:"identity-management",level:3},{value:"Authentication",id:"authentication",level:3},{value:"Key Management",id:"key-management",level:3},{value:"Application Marketplace",id:"application-marketplace",level:3}];function d(e){const n={h3:"h3",h4:"h4",li:"li",p:"p",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h3,{id:"runtime",children:"Runtime"}),"\n",(0,i.jsx)(n.p,{children:"Overview: The runtime environment of a client node in the Calimero Network is\ncrucial for the execution of decentralized applications (DApps), particularly\nthose compiled to WebAssembly (WASM)."}),"\n",(0,i.jsx)(n.p,{children:"Functionality:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"State Synchronization: Each node can download and synchronize the state with\nexisting applications, ensuring that all nodes participating in a particular\napplication network are consistent and up-to-date."}),"\n",(0,i.jsx)(n.li,{children:"Application Settings: Nodes can be configured with specific settings for each\napplication, including which WASM modules to run, source URLs for fetching\nthese modules, encryption protocols to be used, and more."}),"\n",(0,i.jsx)(n.li,{children:"Network Topology & Update Rules: Defines the structure of the network and how\nnodes communicate and update each other. Proper update rules are crucial for\napplication security and integrity, particularly in a decentralized setting\nwhere trust is distributed."}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"recommendations-for-developers-thorough-testing-of-applications-in-a-controlled-environment-is-advised-before-deploying-them-in-production-to-ensure-stability-and-security-additionally-developers-are-encouraged-to-implement-locked-update-rules-to-prevent-unauthorized-modifications-to-the-applications-behavior",children:"Recommendations for Developers: Thorough testing of applications in a controlled environment is advised before deploying them in production to ensure stability and security. Additionally, developers are encouraged to implement locked update rules to prevent unauthorized modifications to the application's behavior."}),"\n",(0,i.jsx)(n.h3,{id:"storage",children:"Storage"}),"\n",(0,i.jsx)(n.p,{children:"Overview: Storage on client nodes involves maintaining the state and data\nrequired for the decentralized applications they support."}),"\n",(0,i.jsx)(n.p,{children:"Functionality:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Local Storage: Each node stores application data locally, contributing to the\noverall decentralized storage model of the network. This ensures that data is\ndistributed across the network, enhancing privacy and resilience against\ncentral points of failure."}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"encryption",children:"Encryption:"}),"\n",(0,i.jsx)(n.p,{children:"Data stored on client nodes can be encrypted, providing an additional layer of\nsecurity and privacy for user data."}),"\n",(0,i.jsx)(n.h3,{id:"identity-management",children:"Identity Management"}),"\n",(0,i.jsx)(n.p,{children:"Overview: Managing identities on the Calimero Network is fundamental for\nensuring secure and private interactions between nodes and applications.\nFunctionality:"}),"\n",(0,i.jsx)(n.h3,{id:"authentication",children:"Authentication"}),"\n",(0,i.jsx)(n.p,{children:"Nodes implement mechanisms for authenticating users and applications, ensuring\nthat interactions are secure and that entities are who they claim to be."}),"\n",(0,i.jsx)(n.h3,{id:"key-management",children:"Key Management"}),"\n",(0,i.jsx)(n.p,{children:"The management of cryptographic keys is an integral part of identity management,\nenabling secure communication and data encryption across the network."}),"\n",(0,i.jsx)(n.h3,{id:"application-marketplace",children:"Application Marketplace"}),"\n",(0,i.jsx)(n.p,{children:"Current State: The marketplace for decentralized applications within the\nCalimero Network is facilitated by a smart contract on the NEAR blockchain, with\napplication data and metadata hosted on IPFS. This setup serves as a temporary\nsolution while further community engagement and discussions are underway to\nrefine the marketplace's infrastructure and governance. The Calimero Network's\napproach to client nodes emphasizes security, decentralization, and privacy,\nwith a strong recommendation for users to engage with applications that have\nsecurely locked update mechanisms. These applications are more reliable for\ncritical use cases and are the only ones featured in the official marketplace,\nensuring a curated and trustworthy selection of DApps for users. This framework\ndemonstrates Calimero Network's commitment to building a secure and user-centric\ndecentralized ecosystem."})]})}function p(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>s});var i=t(758);const o={},a=i.createContext(o);function r(e){const n=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:r(e.components),i.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7420],{3250:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var i=t(6070),o=t(8355);const a={id:"client-node",title:"Client Node"},r=void 0,s={id:"learn/core-concepts/node/client-node",title:"Client Node",description:"Runtime",source:"@site/docs/02-learn/03-core-concepts/02-node/01-client-node.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/client-node",permalink:"/learn/core-concepts/node/client-node",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"client-node",title:"Client Node"},sidebar:"tutorialSidebar",previous:{title:"Identity",permalink:"/learn/core-concepts/identity"},next:{title:"Runtime",permalink:"/learn/core-concepts/node/runtime"}},c={},l=[{value:"Runtime",id:"runtime",level:3},{value:"Recommendations for Developers: Thorough testing of applications in a controlled environment is advised before deploying them in production to ensure stability and security. Additionally, developers are encouraged to implement locked update rules to prevent unauthorized modifications to the application's behavior.",id:"recommendations-for-developers-thorough-testing-of-applications-in-a-controlled-environment-is-advised-before-deploying-them-in-production-to-ensure-stability-and-security-additionally-developers-are-encouraged-to-implement-locked-update-rules-to-prevent-unauthorized-modifications-to-the-applications-behavior",level:4},{value:"Storage",id:"storage",level:3},{value:"Encryption:",id:"encryption",level:3},{value:"Identity Management",id:"identity-management",level:3},{value:"Authentication",id:"authentication",level:3},{value:"Key Management",id:"key-management",level:3},{value:"Application Marketplace",id:"application-marketplace",level:3}];function d(e){const n={h3:"h3",h4:"h4",li:"li",p:"p",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h3,{id:"runtime",children:"Runtime"}),"\n",(0,i.jsx)(n.p,{children:"Overview: The runtime environment of a client node in the Calimero Network is\ncrucial for the execution of decentralized applications (DApps), particularly\nthose compiled to WebAssembly (WASM)."}),"\n",(0,i.jsx)(n.p,{children:"Functionality:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"State Synchronization: Each node can download and synchronize the state with\nexisting applications, ensuring that all nodes participating in a particular\napplication network are consistent and up-to-date."}),"\n",(0,i.jsx)(n.li,{children:"Application Settings: Nodes can be configured with specific settings for each\napplication, including which WASM modules to run, source URLs for fetching\nthese modules, encryption protocols to be used, and more."}),"\n",(0,i.jsx)(n.li,{children:"Network Topology & Update Rules: Defines the structure of the network and how\nnodes communicate and update each other. Proper update rules are crucial for\napplication security and integrity, particularly in a decentralized setting\nwhere trust is distributed."}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"recommendations-for-developers-thorough-testing-of-applications-in-a-controlled-environment-is-advised-before-deploying-them-in-production-to-ensure-stability-and-security-additionally-developers-are-encouraged-to-implement-locked-update-rules-to-prevent-unauthorized-modifications-to-the-applications-behavior",children:"Recommendations for Developers: Thorough testing of applications in a controlled environment is advised before deploying them in production to ensure stability and security. Additionally, developers are encouraged to implement locked update rules to prevent unauthorized modifications to the application's behavior."}),"\n",(0,i.jsx)(n.h3,{id:"storage",children:"Storage"}),"\n",(0,i.jsx)(n.p,{children:"Overview: Storage on client nodes involves maintaining the state and data\nrequired for the decentralized applications they support."}),"\n",(0,i.jsx)(n.p,{children:"Functionality:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Local Storage: Each node stores application data locally, contributing to the\noverall decentralized storage model of the network. This ensures that data is\ndistributed across the network, enhancing privacy and resilience against\ncentral points of failure."}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"encryption",children:"Encryption:"}),"\n",(0,i.jsx)(n.p,{children:"Data stored on client nodes can be encrypted, providing an additional layer of\nsecurity and privacy for user data."}),"\n",(0,i.jsx)(n.h3,{id:"identity-management",children:"Identity Management"}),"\n",(0,i.jsx)(n.p,{children:"Overview: Managing identities on the Calimero Network is fundamental for\nensuring secure and private interactions between nodes and applications.\nFunctionality:"}),"\n",(0,i.jsx)(n.h3,{id:"authentication",children:"Authentication"}),"\n",(0,i.jsx)(n.p,{children:"Nodes implement mechanisms for authenticating users and applications, ensuring\nthat interactions are secure and that entities are who they claim to be."}),"\n",(0,i.jsx)(n.h3,{id:"key-management",children:"Key Management"}),"\n",(0,i.jsx)(n.p,{children:"The management of cryptographic keys is an integral part of identity management,\nenabling secure communication and data encryption across the network."}),"\n",(0,i.jsx)(n.h3,{id:"application-marketplace",children:"Application Marketplace"}),"\n",(0,i.jsx)(n.p,{children:"Current State: The marketplace for decentralized applications within the\nCalimero Network is facilitated by a smart contract on the NEAR blockchain, with\napplication data and metadata hosted on IPFS. This setup serves as a temporary\nsolution while further community engagement and discussions are underway to\nrefine the marketplace's infrastructure and governance. The Calimero Network's\napproach to client nodes emphasizes security, decentralization, and privacy,\nwith a strong recommendation for users to engage with applications that have\nsecurely locked update mechanisms. These applications are more reliable for\ncritical use cases and are the only ones featured in the official marketplace,\nensuring a curated and trustworthy selection of DApps for users. This framework\ndemonstrates Calimero Network's commitment to building a secure and user-centric\ndecentralized ecosystem."})]})}function p(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>s});var i=t(758);const o={},a=i.createContext(o);function r(e){const n=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:r(e.components),i.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7289.3944db81.js b/assets/js/793.5b9a4acc.js similarity index 62% rename from assets/js/7289.3944db81.js rename to assets/js/793.5b9a4acc.js index 3f97a2f2..572d857f 100644 --- a/assets/js/7289.3944db81.js +++ b/assets/js/793.5b9a4acc.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7289],{7289:(s,c,e)=>{e.r(c)}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[793],{793:(s,c,e)=>{e.r(c)}}]); \ No newline at end of file diff --git a/assets/js/7b9fe0bb.adff09ab.js b/assets/js/7b9fe0bb.600d48f2.js similarity index 89% rename from assets/js/7b9fe0bb.adff09ab.js rename to assets/js/7b9fe0bb.600d48f2.js index 054c9145..7a55c27c 100644 --- a/assets/js/7b9fe0bb.adff09ab.js +++ b/assets/js/7b9fe0bb.600d48f2.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2822],{9007:(e,t,s)=>{s.r(t),s.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>i,metadata:()=>a,toc:()=>l});var n=s(6070),r=s(5710);const i={id:"trustless-gaming",title:"Trustless Gaming"},o=void 0,a={id:"explore/use-cases/trustless-gaming",title:"Trustless Gaming",description:"Resolve the transparency and verification problems in games with turn mechanics",source:"@site/docs/01-explore/05-use-cases/05-trustless-gaming.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/trustless-gaming",permalink:"/explore/use-cases/trustless-gaming",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:5,frontMatter:{id:"trustless-gaming",title:"Trustless Gaming"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Gig Economy",permalink:"/explore/use-cases/decentralized-gig-economy"},next:{title:"Decentralized Edge Compute",permalink:"/explore/use-cases/decentralized-edge-compute"}},c={},l=[];function u(e){const t={p:"p",...(0,r.R)(),...e.components};return(0,n.jsx)(t.p,{children:"Resolve the transparency and verification problems in games with turn mechanics\n(i.e. Battleship), and in those where private data holds significant importance\n(i.e. poker)."})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(u,{...e})}):u(e)}},5710:(e,t,s)=>{s.d(t,{R:()=>o,x:()=>a});var n=s(758);const r={},i=n.createContext(r);function o(e){const t=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),n.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2822],{9007:(e,t,s)=>{s.r(t),s.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>i,metadata:()=>a,toc:()=>l});var n=s(6070),r=s(8355);const i={id:"trustless-gaming",title:"Trustless Gaming"},o=void 0,a={id:"explore/use-cases/trustless-gaming",title:"Trustless Gaming",description:"Resolve the transparency and verification problems in games with turn mechanics",source:"@site/docs/01-explore/05-use-cases/05-trustless-gaming.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/trustless-gaming",permalink:"/explore/use-cases/trustless-gaming",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:5,frontMatter:{id:"trustless-gaming",title:"Trustless Gaming"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Gig Economy",permalink:"/explore/use-cases/decentralized-gig-economy"},next:{title:"Decentralized Edge Compute",permalink:"/explore/use-cases/decentralized-edge-compute"}},c={},l=[];function u(e){const t={p:"p",...(0,r.R)(),...e.components};return(0,n.jsx)(t.p,{children:"Resolve the transparency and verification problems in games with turn mechanics\n(i.e. Battleship), and in those where private data holds significant importance\n(i.e. poker)."})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(u,{...e})}):u(e)}},8355:(e,t,s)=>{s.d(t,{R:()=>o,x:()=>a});var n=s(758);const r={},i=n.createContext(r);function o(e){const t=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),n.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/889f3b97.c64d3a1f.js b/assets/js/889f3b97.993df781.js similarity index 91% rename from assets/js/889f3b97.c64d3a1f.js rename to assets/js/889f3b97.993df781.js index b9fc6e88..6a74ab12 100644 --- a/assets/js/889f3b97.c64d3a1f.js +++ b/assets/js/889f3b97.993df781.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5101],{6093:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>d});var n=i(6070),r=i(5710);const a={id:"decentralized-identity-verification",title:"Decentralized Identity Verification"},o=void 0,s={id:"explore/use-cases/decentralized-identity-verification",title:"Decentralized Identity Verification",description:"Create a private Calimero application network which provides transparent and",source:"@site/docs/01-explore/05-use-cases/07-decentralized-identity-verification.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-identity-verification",permalink:"/explore/use-cases/decentralized-identity-verification",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:7,frontMatter:{id:"decentralized-identity-verification",title:"Decentralized Identity Verification"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Edge Compute",permalink:"/explore/use-cases/decentralized-edge-compute"},next:{title:"Decentralized Intellectual Property Management",permalink:"/explore/use-cases/decentralized-intellectual-property-management"}},c={},d=[];function l(e){const t={p:"p",...(0,r.R)(),...e.components};return(0,n.jsx)(t.p,{children:"Create a private Calimero application network which provides transparent and\ntrusted identity verification for service providers. With Calimero, sensitive\nprocedures such as opening a bank account or applying for Visas would not\nrequire service providers to host the data of their users at centralized\nentities any more."})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},5710:(e,t,i)=>{i.d(t,{R:()=>o,x:()=>s});var n=i(758);const r={},a=n.createContext(r);function o(e){const t=n.useContext(a);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),n.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5101],{6093:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>d});var n=i(6070),r=i(8355);const a={id:"decentralized-identity-verification",title:"Decentralized Identity Verification"},o=void 0,s={id:"explore/use-cases/decentralized-identity-verification",title:"Decentralized Identity Verification",description:"Create a private Calimero application network which provides transparent and",source:"@site/docs/01-explore/05-use-cases/07-decentralized-identity-verification.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-identity-verification",permalink:"/explore/use-cases/decentralized-identity-verification",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:7,frontMatter:{id:"decentralized-identity-verification",title:"Decentralized Identity Verification"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Edge Compute",permalink:"/explore/use-cases/decentralized-edge-compute"},next:{title:"Decentralized Intellectual Property Management",permalink:"/explore/use-cases/decentralized-intellectual-property-management"}},c={},d=[];function l(e){const t={p:"p",...(0,r.R)(),...e.components};return(0,n.jsx)(t.p,{children:"Create a private Calimero application network which provides transparent and\ntrusted identity verification for service providers. With Calimero, sensitive\nprocedures such as opening a bank account or applying for Visas would not\nrequire service providers to host the data of their users at centralized\nentities any more."})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},8355:(e,t,i)=>{i.d(t,{R:()=>o,x:()=>s});var n=i(758);const r={},a=n.createContext(r);function o(e){const t=n.useContext(a);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),n.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9471ce52.7528a2df.js b/assets/js/9471ce52.3baff8bd.js similarity index 97% rename from assets/js/9471ce52.7528a2df.js rename to assets/js/9471ce52.3baff8bd.js index b4bbd1c4..aaf6c7af 100644 --- a/assets/js/9471ce52.7528a2df.js +++ b/assets/js/9471ce52.3baff8bd.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9229],{6663:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>r,toc:()=>c});var s=i(6070),t=i(5710);const a={id:"applications",title:"Applications"},o=void 0,r={id:"learn/core-concepts/applications",title:"Applications",description:"Applications in Calimero define the core logic governing how peers interact",source:"@site/docs/02-learn/03-core-concepts/03-applications.mdx",sourceDirName:"02-learn/03-core-concepts",slug:"/learn/core-concepts/applications",permalink:"/learn/core-concepts/applications",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"applications",title:"Applications"},sidebar:"tutorialSidebar",previous:{title:"Admin Client API",permalink:"/learn/core-concepts/node/admin-client-api"},next:{title:"Contexts",permalink:"/learn/core-concepts/contexts"}},l={},c=[{value:"Examples of Applications",id:"examples-of-applications",level:3},{value:"Benefits of Decentralized Applications",id:"benefits-of-decentralized-applications",level:3},{value:"Security and Data Management",id:"security-and-data-management",level:3},{value:"Building Applications",id:"building-applications",level:3}];function d(e){const n={h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.p,{children:"Applications in Calimero define the core logic governing how peers interact\nwithin a decentralized network. Developers can programmatically augment the\nprotocol to create customized functionalities, supporting a wide range of\napplications tailored to various use cases, from direct messaging and\ncommunication channels to interactive games and collaborative editing."}),"\n",(0,s.jsx)(n.h3,{id:"examples-of-applications",children:"Examples of Applications"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Communication Platforms"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Direct Messages and Channels"}),": Support for private, encrypted messaging\nbetween users and group communications in shared, secure spaces. This setup\ncan scale from one-on-one conversations to large group discussions, similar\nto Slack channels or Discord communities."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Community Platforms"}),": Decentralized alternatives to platforms like\nReddit or Hacker News, enabling independent contexts for different\npurposes, fostering discussions, and sharing content securely."]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Interactive Games"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Privacy-Focused Games"}),": These games require the privacy of each player's\nmoves until both have played, ensuring fair play and maintaining the\nconfidentiality of strategies. Examples include:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Rock-Paper-Scissors"}),": Players' choices are revealed simultaneously\nafter both have made their moves."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Battleship"}),": The positions of ships are kept secret until revealed\nthrough gameplay."]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Non-Privacy Games"}),": These games do not require concealment of moves and\nallow all actions to be visible to both players. Examples include:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Chess"}),": A strategy game where all moves are visible to both players,\nwith game logic running locally."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Checkers"}),": Another strategy game where all moves are open and visible\nto both players."]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Collaborative Work"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Document Collaboration"}),": Real-time collaboration on documents, akin to\nGoogle Docs, but decentralized and secure."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Creative Projects"}),": Shared canvases or environments for drawing,\ndesigning, or working on various creative projects, where all contributions\nare securely encrypted."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"benefits-of-decentralized-applications",children:"Benefits of Decentralized Applications"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Resilience"}),": Distributed application logic ensures the system functions\nsmoothly even if some devices go offline."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Autonomy"}),": Users control their data and activities without relying on a\ncentral authority."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Scalability"}),": The system scales effectively as more users join due to\noptimistic execution, with state being conflict-free and eventually\nreconciled."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Privacy"}),": Keeping data local and encrypted prevents exposure to third\nparties, crucial for sensitive information."]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"security-and-data-management",children:"Security and Data Management"}),"\n",(0,s.jsx)(n.p,{children:"All non-state-transitional data, such as attached files in DMs, collaborative\ndocument assets, and game resources, inherit the same level of security as\nstate-transitional transactions. This ensures that all forms of data within the\nCalimero network are encrypted and secure."}),"\n",(0,s.jsx)(n.p,{children:"Calimero also functions as a decentralized filesystem for these\nnon-state-transitional, encrypted blobs of data. Similar to BitTorrent or IPFS,\nnodes can lazily share the data without needing any centralized storage options.\nThis decentralized approach allows for efficient and secure data distribution\nacross the network."}),"\n",(0,s.jsx)(n.h3,{id:"building-applications",children:"Building Applications"}),"\n",(0,s.jsx)(n.p,{children:"Developers can leverage Calimero's framework to programmatically build and\naugment a wide range of applications using provided tools and documentation.\nThis includes setting up the development environment and deploying applications\nwithin the network."}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Development Tools"})," Calimero offers the Rust SDK and intuitive APIs,\nenabling developers to create applications that integrate seamlessly with the\nnetwork."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Documentation and Support"})," Comprehensive documentation and community\nsupport assist developers in every step of the application development\nprocess, ensuring that they can build and deploy high-quality, secure\napplications efficiently."]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},5710:(e,n,i)=>{i.d(n,{R:()=>o,x:()=>r});var s=i(758);const t={},a=s.createContext(t);function o(e){const n=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:o(e.components),s.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9229],{6663:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>r,toc:()=>c});var s=i(6070),t=i(8355);const a={id:"applications",title:"Applications"},o=void 0,r={id:"learn/core-concepts/applications",title:"Applications",description:"Applications in Calimero define the core logic governing how peers interact",source:"@site/docs/02-learn/03-core-concepts/03-applications.mdx",sourceDirName:"02-learn/03-core-concepts",slug:"/learn/core-concepts/applications",permalink:"/learn/core-concepts/applications",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"applications",title:"Applications"},sidebar:"tutorialSidebar",previous:{title:"Admin Client API",permalink:"/learn/core-concepts/node/admin-client-api"},next:{title:"Contexts",permalink:"/learn/core-concepts/contexts"}},l={},c=[{value:"Examples of Applications",id:"examples-of-applications",level:3},{value:"Benefits of Decentralized Applications",id:"benefits-of-decentralized-applications",level:3},{value:"Security and Data Management",id:"security-and-data-management",level:3},{value:"Building Applications",id:"building-applications",level:3}];function d(e){const n={h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.p,{children:"Applications in Calimero define the core logic governing how peers interact\nwithin a decentralized network. Developers can programmatically augment the\nprotocol to create customized functionalities, supporting a wide range of\napplications tailored to various use cases, from direct messaging and\ncommunication channels to interactive games and collaborative editing."}),"\n",(0,s.jsx)(n.h3,{id:"examples-of-applications",children:"Examples of Applications"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Communication Platforms"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Direct Messages and Channels"}),": Support for private, encrypted messaging\nbetween users and group communications in shared, secure spaces. This setup\ncan scale from one-on-one conversations to large group discussions, similar\nto Slack channels or Discord communities."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Community Platforms"}),": Decentralized alternatives to platforms like\nReddit or Hacker News, enabling independent contexts for different\npurposes, fostering discussions, and sharing content securely."]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Interactive Games"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Privacy-Focused Games"}),": These games require the privacy of each player's\nmoves until both have played, ensuring fair play and maintaining the\nconfidentiality of strategies. Examples include:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Rock-Paper-Scissors"}),": Players' choices are revealed simultaneously\nafter both have made their moves."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Battleship"}),": The positions of ships are kept secret until revealed\nthrough gameplay."]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Non-Privacy Games"}),": These games do not require concealment of moves and\nallow all actions to be visible to both players. Examples include:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Chess"}),": A strategy game where all moves are visible to both players,\nwith game logic running locally."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Checkers"}),": Another strategy game where all moves are open and visible\nto both players."]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Collaborative Work"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Document Collaboration"}),": Real-time collaboration on documents, akin to\nGoogle Docs, but decentralized and secure."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Creative Projects"}),": Shared canvases or environments for drawing,\ndesigning, or working on various creative projects, where all contributions\nare securely encrypted."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"benefits-of-decentralized-applications",children:"Benefits of Decentralized Applications"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Resilience"}),": Distributed application logic ensures the system functions\nsmoothly even if some devices go offline."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Autonomy"}),": Users control their data and activities without relying on a\ncentral authority."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Scalability"}),": The system scales effectively as more users join due to\noptimistic execution, with state being conflict-free and eventually\nreconciled."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Privacy"}),": Keeping data local and encrypted prevents exposure to third\nparties, crucial for sensitive information."]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"security-and-data-management",children:"Security and Data Management"}),"\n",(0,s.jsx)(n.p,{children:"All non-state-transitional data, such as attached files in DMs, collaborative\ndocument assets, and game resources, inherit the same level of security as\nstate-transitional transactions. This ensures that all forms of data within the\nCalimero network are encrypted and secure."}),"\n",(0,s.jsx)(n.p,{children:"Calimero also functions as a decentralized filesystem for these\nnon-state-transitional, encrypted blobs of data. Similar to BitTorrent or IPFS,\nnodes can lazily share the data without needing any centralized storage options.\nThis decentralized approach allows for efficient and secure data distribution\nacross the network."}),"\n",(0,s.jsx)(n.h3,{id:"building-applications",children:"Building Applications"}),"\n",(0,s.jsx)(n.p,{children:"Developers can leverage Calimero's framework to programmatically build and\naugment a wide range of applications using provided tools and documentation.\nThis includes setting up the development environment and deploying applications\nwithin the network."}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Development Tools"})," Calimero offers the Rust SDK and intuitive APIs,\nenabling developers to create applications that integrate seamlessly with the\nnetwork."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Documentation and Support"})," Comprehensive documentation and community\nsupport assist developers in every step of the application development\nprocess, ensuring that they can build and deploy high-quality, secure\napplications efficiently."]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8355:(e,n,i)=>{i.d(n,{R:()=>o,x:()=>r});var s=i(758);const t={},a=s.createContext(t);function o(e){const n=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:o(e.components),s.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/94b34882.14a44c46.js b/assets/js/94b34882.c9a728c9.js similarity index 89% rename from assets/js/94b34882.14a44c46.js rename to assets/js/94b34882.c9a728c9.js index 2c082b9e..23a4f5ca 100644 --- a/assets/js/94b34882.14a44c46.js +++ b/assets/js/94b34882.c9a728c9.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3299],{4279:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>p,frontMatter:()=>o,metadata:()=>r,toc:()=>d});var a=n(6070),i=n(5710);const o={id:"private-daos-management",title:"Private DAOs Management"},s=void 0,r={id:"explore/use-cases/private-daos-management",title:"Private DAOs Management",description:"Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero",source:"@site/docs/01-explore/05-use-cases/00-private-dao-management.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/private-daos-management",permalink:"/explore/use-cases/private-daos-management",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:0,frontMatter:{id:"private-daos-management",title:"Private DAOs Management"},sidebar:"tutorialSidebar",previous:{title:"ZK",permalink:"/explore/why-not/zk"},next:{title:"Decentralized Voting Systems",permalink:"/explore/use-cases/decentralized-voting-systems"}},c={},d=[];function l(e){const t={p:"p",...(0,i.R)(),...e.components};return(0,a.jsx)(t.p,{children:"Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero\napplication, enabling you to interact with the base chain of the DAO. DAO\nmembers keep the core contract logic on-chain, while shielding all the sensitive\ndata."})}function p(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>r});var a=n(758);const i={},o=a.createContext(i);function s(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3299],{4279:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>p,frontMatter:()=>o,metadata:()=>r,toc:()=>d});var a=n(6070),i=n(8355);const o={id:"private-daos-management",title:"Private DAOs Management"},s=void 0,r={id:"explore/use-cases/private-daos-management",title:"Private DAOs Management",description:"Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero",source:"@site/docs/01-explore/05-use-cases/00-private-dao-management.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/private-daos-management",permalink:"/explore/use-cases/private-daos-management",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:0,frontMatter:{id:"private-daos-management",title:"Private DAOs Management"},sidebar:"tutorialSidebar",previous:{title:"ZK",permalink:"/explore/why-not/zk"},next:{title:"Decentralized Voting Systems",permalink:"/explore/use-cases/decentralized-voting-systems"}},c={},d=[];function l(e){const t={p:"p",...(0,i.R)(),...e.components};return(0,a.jsx)(t.p,{children:"Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero\napplication, enabling you to interact with the base chain of the DAO. DAO\nmembers keep the core contract logic on-chain, while shielding all the sensitive\ndata."})}function p(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>r});var a=n(758);const i={},o=a.createContext(i);function s(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/962e3ea7.0a8d9566.js b/assets/js/962e3ea7.034e1d17.js similarity index 98% rename from assets/js/962e3ea7.0a8d9566.js rename to assets/js/962e3ea7.034e1d17.js index 47883097..263bf670 100644 --- a/assets/js/962e3ea7.0a8d9566.js +++ b/assets/js/962e3ea7.034e1d17.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8077],{366:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>o,default:()=>h,frontMatter:()=>t,metadata:()=>l,toc:()=>c});var i=s(6070),r=s(5710);const t={id:"network",title:"Network"},o=void 0,l={id:"learn/core-concepts/node/network",title:"Network",description:"Overview",source:"@site/docs/02-learn/03-core-concepts/02-node/05-network.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/network",permalink:"/learn/core-concepts/node/network",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:5,frontMatter:{id:"network",title:"Network"},sidebar:"tutorialSidebar",previous:{title:"Storage",permalink:"/learn/core-concepts/node/storage"},next:{title:"Admin Client API",permalink:"/learn/core-concepts/node/admin-client-api"}},a={},c=[{value:"Overview",id:"overview",level:2},{value:"Node Types",id:"node-types",level:2},{value:"Client Node",id:"client-node",level:3},{value:"Boot Node",id:"boot-node",level:3},{value:"P2P protocols and techniques",id:"p2p-protocols-and-techniques",level:2},{value:"Protocol Descriptions",id:"protocol-descriptions",level:3},{value:"DCUtR (Direct Connection Upgrade through Relay)",id:"dcutr-direct-connection-upgrade-through-relay",level:4},{value:"Gossipsub",id:"gossipsub",level:4},{value:"Identify",id:"identify",level:4},{value:"Kademlia (Kad)",id:"kademlia-kad",level:4},{value:"mDNS (Multicast DNS)",id:"mdns-multicast-dns",level:4},{value:"Ping",id:"ping",level:4},{value:"Relay",id:"relay",level:4},{value:"Rendezvous",id:"rendezvous",level:4},{value:"NAT Traversal Techniques",id:"nat-traversal-techniques",level:3}];function d(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsxs)(n.p,{children:["This document provides an overview of the networking component of Calimero\nNetwork, which is implemented using the ",(0,i.jsx)(n.code,{children:"libp2p"})," library. The network consists\nof two types of peers: client nodes and boot nodes, each serving distinct roles\nand utilizing specific protocols to facilitate peer-to-peer communication.\nClient node is the component which hosts and runs client applications,\ncommunicates and shares data between other client nodes. Boot node is the\ncomponent used for the initial discovery of the peers in the network."]}),"\n",(0,i.jsx)(n.h2,{id:"node-types",children:"Node Types"}),"\n",(0,i.jsx)(n.h3,{id:"client-node",children:"Client Node"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Deployment:"})," Can run on any machine"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Protocols Utilized:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#dcutr-direct-connection-upgrade-through-relay",children:"dcutr"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#gossipsub",children:"gossipsub"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#identify",children:"identify"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#kademlia-kad",children:"kad"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#mdns-multicast-dns",children:"mdns"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#ping",children:"ping"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#rendezvous",children:"rendezvous"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#relay",children:"relay"})}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Behavior:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Configuration:"})," A client node can be configured to use zero boot nodes."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"External Address:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Direct Public External Address:"})," Nodes with a direct public external\naddress do not require reservation at the relay server. These nodes\npublish their public external address to the Kademlia DHT, making them\ndirectly accessible to other peers."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Relayed External Address:"})," Nodes that do not have a direct public\nexternal address, typically those behind a NAT or firewall, can obtain a\nrelayed external address by requesting a reservation at a relay server.\nOnce the reservation is accepted, the node publishes its new external\naddress to the rendezvous server. This allows other nodes to discover\nrelayed addresses of a peers in a certain rendezvous namespace. The relay\nserver can be used for the coordination of the hole punching between two\nnodes. If the hole punching attempt fails, the relay server will bridge\nthe traffic."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Discovery Protocols:"})," ",(0,i.jsx)(n.code,{children:"mDNS"}),", ",(0,i.jsx)(n.code,{children:"rendezvous"})," and ",(0,i.jsx)(n.code,{children:"Kademlia"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Connection Management:"})," A peer, identified via PeerId, can be discovered\neither via mDNS, rendezvous or Kademlia. mDNS discovery provides local\nnetwork addresses, rendezvous discovery provides relayed addresses, and\nKademlia discovery provides direct public external addresses. The node\nmaintains information about its connections to peers, including the\ndiscovery source. For a discovered external address, either relayed or\ndirect public, the node will only attempt to dial the peer if the same peer\nis not already connected via a discovered local address. This ensures that\nlocal connections have higher priority and that there are no unnecessary\nhole punching attempts."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Message Relaying:"})," The node participates in the ",(0,i.jsx)(n.code,{children:"gossipsub"})," protocol,\nrelaying messages to all connected peers that support it. This enables\nefficient and scalable message dissemination across the network."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"boot-node",children:"Boot Node"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Deployment:"})," Must run on a publicly available machine with a static IP\naddress."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Protocols Utilized:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#identify",children:"identify"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#kademlia-kad",children:"kad"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#ping",children:"ping"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#rendezvous",children:"rendezvous"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#relay",children:"relay"})}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Behavior:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Characteristics:"})," Boot nodes are publicly available, long-running nodes\nthat provide stable entry points to the network."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Functions:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Bootstrap Node:"})," Acts as a well-known peer for the Kademlia protocol,\nfacilitating peer discovery and network join operations."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Circuit Relay Server:"})," Serves as a generic relay that provides the\nmedium that facilitates the hole punching, enabling peers to establish\ndirect connections even when they are behind NAT or firewalls. The relay\nserver is used for the coordination of the hole punching between two\nnodes, and briding traffic if the hole punching attempt fails."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Rendezvous Server:"})," Facilitates peer discovery by allowing nodes to\nregister their presence and query for other peers within a shared\nrendezvous namespace. This enables dynamic and efficient peer-to-peer\nconnections without relying on a static list of peers."]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"p2p-protocols-and-techniques",children:"P2P protocols and techniques"}),"\n",(0,i.jsx)(n.h3,{id:"protocol-descriptions",children:"Protocol Descriptions"}),"\n",(0,i.jsx)(n.h4,{id:"dcutr-direct-connection-upgrade-through-relay",children:"DCUtR (Direct Connection Upgrade through Relay)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"DCUtR is used to upgrade connections through relay nodes, allowing peers to\nestablish direct connections even if they are behind NATs or firewalls. Peers\ninitially connect via a relay node, then use the DCUtR protocol to attempt a\ndirect connection, which reduces latency and bandwidth usage."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/blob/master/relay/DCUtR.md",children:"libp2p DCUtR Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"gossipsub",children:"Gossipsub"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Gossipsub is a scalable and efficient pub-sub protocol for message\ndissemination. It combines the best aspects of gossip protocols and\ntopic-based pub-sub systems. It minimizes bandwidth usage by only gossiping\nmetadata and ensuring that messages are only sent once per peer."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/pubsub/gossipsub",children:"libp2p Gossipsub Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"identify",children:"Identify"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Identify protocol allows peers to identify themselves and share their\ncapabilities with other peers. Peers exchange identification information such\nas supported protocols, listen addresses, and public keys. This helps peers\nmake informed decisions about connecting and interacting."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/blob/master/identify/README.md",children:"libp2p Identify Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"kademlia-kad",children:"Kademlia (Kad)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Kademlia is a distributed hash table (DHT) protocol used for peer discovery\nand data routing. It uses an XOR metric to ensure efficient and scalable peer\nlookup. Each node maintains a routing table with information about other\nnodes, facilitating quick lookups and robust network operation."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/kad-dht",children:"libp2p Kademlia DHT Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"mdns-multicast-dns",children:"mDNS (Multicast DNS)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"mDNS enables local network peer discovery without the need for a central\nserver. It uses multicast DNS to allow peers to find each other on the same\nlocal network by broadcasting their presence and listening for broadcasts from\nother peers."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/discovery/mdns",children:"libp2p mDNS Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"ping",children:"Ping"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Ping protocol measures the round-trip time (latency) between peers. It\nregularly pings connected peers and measures the time it takes for a response.\nThis helps in maintaining healthy connections and understanding network\nlatency."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/go-libp2p-ping",children:"libp2p Ping Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"relay",children:"Relay"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Relay protocol supports relay-based communication, allowing peers to\ncommunicate through intermediary nodes when direct connections are not\npossible. Nodes can use relay nodes to forward their traffic, which is\nespecially useful for nodes behind NATs or firewalls. The protocol includes\nmechanisms for reserving relay slots and managing relay connections."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/relay",children:"libp2p Relay Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"rendezvous",children:"Rendezvous"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Rendezvous protocol enables peers to discover each other by registering at\nand querying a shared rendezvous point. This is useful for dynamically finding\npeers without needing a central directory or pre-established list of peers.\nPeers register their presence at a rendezvous server and can also query the\nserver to find other peers."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/rendezvous",children:"libp2p Rendezvous Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"nat-traversal-techniques",children:"NAT Traversal Techniques"}),"\n",(0,i.jsxs)(n.p,{children:["One of the common techniques used for NAT traversal in P2P networks is ",(0,i.jsx)(n.strong,{children:"Hole\nPunching"}),". This technique allows two peers, each behind a NAT, to establish a\ndirect connection with each other. Here's a brief explanation:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Hole Punching:"})," This technique involves three steps:","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Step 1 - Connection to Public Server:"}),' Both peers initially connect to a\npublic server (in this case, the relay server). This creates a NAT mapping\n(a "hole") for outgoing packets to the server.']}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Step 2 - Exchange of Address Information:"})," The server shares the public\naddress information of each peer with the other. This information includes\nthe IP address and port number that the NAT has assigned for the connection\nto the server."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Step 3 - Direct Connection:"})," Each peer sends a packet to the other peer's\npublic address. Since a mapping for this address already exists in the NAT\n(from the connection to the server), the NAT forwards the packet to the\nappropriate internal address, and a direct connection is established."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"This technique is particularly useful in P2P networks, as it allows peers to\ncommunicate directly, reducing the load on relay servers and improving network\nefficiency. However, it's worth noting that hole punching may not work with all\ntypes of NATs, and success can depend on the specific NAT implementation and\nconfiguration."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://blog.ipfs.tech/2022-01-20-libp2p-hole-punching/",children:"Hole punching in libp2p"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://tailscale.com/blog/how-nat-traversal-works",children:"How NAT traversal works"})]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,s)=>{s.d(n,{R:()=>o,x:()=>l});var i=s(758);const r={},t=i.createContext(r);function o(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8077],{366:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>o,default:()=>h,frontMatter:()=>t,metadata:()=>l,toc:()=>c});var i=s(6070),r=s(8355);const t={id:"network",title:"Network"},o=void 0,l={id:"learn/core-concepts/node/network",title:"Network",description:"Overview",source:"@site/docs/02-learn/03-core-concepts/02-node/05-network.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/network",permalink:"/learn/core-concepts/node/network",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:5,frontMatter:{id:"network",title:"Network"},sidebar:"tutorialSidebar",previous:{title:"Storage",permalink:"/learn/core-concepts/node/storage"},next:{title:"Admin Client API",permalink:"/learn/core-concepts/node/admin-client-api"}},a={},c=[{value:"Overview",id:"overview",level:2},{value:"Node Types",id:"node-types",level:2},{value:"Client Node",id:"client-node",level:3},{value:"Boot Node",id:"boot-node",level:3},{value:"P2P protocols and techniques",id:"p2p-protocols-and-techniques",level:2},{value:"Protocol Descriptions",id:"protocol-descriptions",level:3},{value:"DCUtR (Direct Connection Upgrade through Relay)",id:"dcutr-direct-connection-upgrade-through-relay",level:4},{value:"Gossipsub",id:"gossipsub",level:4},{value:"Identify",id:"identify",level:4},{value:"Kademlia (Kad)",id:"kademlia-kad",level:4},{value:"mDNS (Multicast DNS)",id:"mdns-multicast-dns",level:4},{value:"Ping",id:"ping",level:4},{value:"Relay",id:"relay",level:4},{value:"Rendezvous",id:"rendezvous",level:4},{value:"NAT Traversal Techniques",id:"nat-traversal-techniques",level:3}];function d(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsxs)(n.p,{children:["This document provides an overview of the networking component of Calimero\nNetwork, which is implemented using the ",(0,i.jsx)(n.code,{children:"libp2p"})," library. The network consists\nof two types of peers: client nodes and boot nodes, each serving distinct roles\nand utilizing specific protocols to facilitate peer-to-peer communication.\nClient node is the component which hosts and runs client applications,\ncommunicates and shares data between other client nodes. Boot node is the\ncomponent used for the initial discovery of the peers in the network."]}),"\n",(0,i.jsx)(n.h2,{id:"node-types",children:"Node Types"}),"\n",(0,i.jsx)(n.h3,{id:"client-node",children:"Client Node"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Deployment:"})," Can run on any machine"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Protocols Utilized:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#dcutr-direct-connection-upgrade-through-relay",children:"dcutr"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#gossipsub",children:"gossipsub"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#identify",children:"identify"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#kademlia-kad",children:"kad"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#mdns-multicast-dns",children:"mdns"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#ping",children:"ping"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#rendezvous",children:"rendezvous"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#relay",children:"relay"})}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Behavior:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Configuration:"})," A client node can be configured to use zero boot nodes."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"External Address:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Direct Public External Address:"})," Nodes with a direct public external\naddress do not require reservation at the relay server. These nodes\npublish their public external address to the Kademlia DHT, making them\ndirectly accessible to other peers."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Relayed External Address:"})," Nodes that do not have a direct public\nexternal address, typically those behind a NAT or firewall, can obtain a\nrelayed external address by requesting a reservation at a relay server.\nOnce the reservation is accepted, the node publishes its new external\naddress to the rendezvous server. This allows other nodes to discover\nrelayed addresses of a peers in a certain rendezvous namespace. The relay\nserver can be used for the coordination of the hole punching between two\nnodes. If the hole punching attempt fails, the relay server will bridge\nthe traffic."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Discovery Protocols:"})," ",(0,i.jsx)(n.code,{children:"mDNS"}),", ",(0,i.jsx)(n.code,{children:"rendezvous"})," and ",(0,i.jsx)(n.code,{children:"Kademlia"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Connection Management:"})," A peer, identified via PeerId, can be discovered\neither via mDNS, rendezvous or Kademlia. mDNS discovery provides local\nnetwork addresses, rendezvous discovery provides relayed addresses, and\nKademlia discovery provides direct public external addresses. The node\nmaintains information about its connections to peers, including the\ndiscovery source. For a discovered external address, either relayed or\ndirect public, the node will only attempt to dial the peer if the same peer\nis not already connected via a discovered local address. This ensures that\nlocal connections have higher priority and that there are no unnecessary\nhole punching attempts."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Message Relaying:"})," The node participates in the ",(0,i.jsx)(n.code,{children:"gossipsub"})," protocol,\nrelaying messages to all connected peers that support it. This enables\nefficient and scalable message dissemination across the network."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"boot-node",children:"Boot Node"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Deployment:"})," Must run on a publicly available machine with a static IP\naddress."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Protocols Utilized:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#identify",children:"identify"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#kademlia-kad",children:"kad"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#ping",children:"ping"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#rendezvous",children:"rendezvous"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#relay",children:"relay"})}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Behavior:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Characteristics:"})," Boot nodes are publicly available, long-running nodes\nthat provide stable entry points to the network."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Functions:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Bootstrap Node:"})," Acts as a well-known peer for the Kademlia protocol,\nfacilitating peer discovery and network join operations."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Circuit Relay Server:"})," Serves as a generic relay that provides the\nmedium that facilitates the hole punching, enabling peers to establish\ndirect connections even when they are behind NAT or firewalls. The relay\nserver is used for the coordination of the hole punching between two\nnodes, and briding traffic if the hole punching attempt fails."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Rendezvous Server:"})," Facilitates peer discovery by allowing nodes to\nregister their presence and query for other peers within a shared\nrendezvous namespace. This enables dynamic and efficient peer-to-peer\nconnections without relying on a static list of peers."]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"p2p-protocols-and-techniques",children:"P2P protocols and techniques"}),"\n",(0,i.jsx)(n.h3,{id:"protocol-descriptions",children:"Protocol Descriptions"}),"\n",(0,i.jsx)(n.h4,{id:"dcutr-direct-connection-upgrade-through-relay",children:"DCUtR (Direct Connection Upgrade through Relay)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"DCUtR is used to upgrade connections through relay nodes, allowing peers to\nestablish direct connections even if they are behind NATs or firewalls. Peers\ninitially connect via a relay node, then use the DCUtR protocol to attempt a\ndirect connection, which reduces latency and bandwidth usage."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/blob/master/relay/DCUtR.md",children:"libp2p DCUtR Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"gossipsub",children:"Gossipsub"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Gossipsub is a scalable and efficient pub-sub protocol for message\ndissemination. It combines the best aspects of gossip protocols and\ntopic-based pub-sub systems. It minimizes bandwidth usage by only gossiping\nmetadata and ensuring that messages are only sent once per peer."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/pubsub/gossipsub",children:"libp2p Gossipsub Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"identify",children:"Identify"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Identify protocol allows peers to identify themselves and share their\ncapabilities with other peers. Peers exchange identification information such\nas supported protocols, listen addresses, and public keys. This helps peers\nmake informed decisions about connecting and interacting."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/blob/master/identify/README.md",children:"libp2p Identify Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"kademlia-kad",children:"Kademlia (Kad)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Kademlia is a distributed hash table (DHT) protocol used for peer discovery\nand data routing. It uses an XOR metric to ensure efficient and scalable peer\nlookup. Each node maintains a routing table with information about other\nnodes, facilitating quick lookups and robust network operation."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/kad-dht",children:"libp2p Kademlia DHT Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"mdns-multicast-dns",children:"mDNS (Multicast DNS)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"mDNS enables local network peer discovery without the need for a central\nserver. It uses multicast DNS to allow peers to find each other on the same\nlocal network by broadcasting their presence and listening for broadcasts from\nother peers."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/discovery/mdns",children:"libp2p mDNS Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"ping",children:"Ping"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Ping protocol measures the round-trip time (latency) between peers. It\nregularly pings connected peers and measures the time it takes for a response.\nThis helps in maintaining healthy connections and understanding network\nlatency."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/go-libp2p-ping",children:"libp2p Ping Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"relay",children:"Relay"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Relay protocol supports relay-based communication, allowing peers to\ncommunicate through intermediary nodes when direct connections are not\npossible. Nodes can use relay nodes to forward their traffic, which is\nespecially useful for nodes behind NATs or firewalls. The protocol includes\nmechanisms for reserving relay slots and managing relay connections."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/relay",children:"libp2p Relay Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"rendezvous",children:"Rendezvous"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The Rendezvous protocol enables peers to discover each other by registering at\nand querying a shared rendezvous point. This is useful for dynamically finding\npeers without needing a central directory or pre-established list of peers.\nPeers register their presence at a rendezvous server and can also query the\nserver to find other peers."}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://github.com/libp2p/specs/tree/master/rendezvous",children:"libp2p Rendezvous Documentation"})]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"nat-traversal-techniques",children:"NAT Traversal Techniques"}),"\n",(0,i.jsxs)(n.p,{children:["One of the common techniques used for NAT traversal in P2P networks is ",(0,i.jsx)(n.strong,{children:"Hole\nPunching"}),". This technique allows two peers, each behind a NAT, to establish a\ndirect connection with each other. Here's a brief explanation:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Hole Punching:"})," This technique involves three steps:","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Step 1 - Connection to Public Server:"}),' Both peers initially connect to a\npublic server (in this case, the relay server). This creates a NAT mapping\n(a "hole") for outgoing packets to the server.']}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Step 2 - Exchange of Address Information:"})," The server shares the public\naddress information of each peer with the other. This information includes\nthe IP address and port number that the NAT has assigned for the connection\nto the server."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Step 3 - Direct Connection:"})," Each peer sends a packet to the other peer's\npublic address. Since a mapping for this address already exists in the NAT\n(from the connection to the server), the NAT forwards the packet to the\nappropriate internal address, and a direct connection is established."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"This technique is particularly useful in P2P networks, as it allows peers to\ncommunicate directly, reducing the load on relay servers and improving network\nefficiency. However, it's worth noting that hole punching may not work with all\ntypes of NATs, and success can depend on the specific NAT implementation and\nconfiguration."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://blog.ipfs.tech/2022-01-20-libp2p-hole-punching/",children:"Hole punching in libp2p"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Reference:"}),"\n",(0,i.jsx)(n.a,{href:"https://tailscale.com/blog/how-nat-traversal-works",children:"How NAT traversal works"})]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,s)=>{s.d(n,{R:()=>o,x:()=>l});var i=s(758);const r={},t=i.createContext(r);function o(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/96f6c727.1ffa8e3d.js b/assets/js/96f6c727.58d6b655.js similarity index 91% rename from assets/js/96f6c727.1ffa8e3d.js rename to assets/js/96f6c727.58d6b655.js index f39e45ea..1142484c 100644 --- a/assets/js/96f6c727.1ffa8e3d.js +++ b/assets/js/96f6c727.58d6b655.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6373],{999:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>s,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var o=t(6070),i=t(5710);const r={id:"zk",title:"ZK"},s=void 0,a={id:"explore/why-not/zk",title:"ZK",description:"Why not ZK?",source:"@site/docs/01-explore/04-why-not/03-zk.mdx",sourceDirName:"01-explore/04-why-not",slug:"/explore/why-not/zk",permalink:"/explore/why-not/zk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"zk",title:"ZK"},sidebar:"tutorialSidebar",previous:{title:"IPFS",permalink:"/explore/why-not/ipfs"},next:{title:"Private DAOs Management",permalink:"/explore/use-cases/private-daos-management"}},l={},c=[{value:"Why not ZK?",id:"why-not-zk",level:2},{value:"Calimero vs ZK",id:"calimero-vs-zk",level:2}];function d(e){const n={h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h2,{id:"why-not-zk",children:"Why not ZK?"}),"\n",(0,o.jsx)(n.p,{children:"Zero-Knowledge (ZK) solutions focus on enhancing privacy and reducing the need\nto reveal data during synchronization, but they don't eliminate the need for\nsynchronization itself."}),"\n",(0,o.jsx)(n.h2,{id:"calimero-vs-zk",children:"Calimero vs ZK"}),"\n",(0,o.jsx)(n.p,{children:"Calimero offers a fundamentally different approach with local-first execution\nand eventual consistency, minimizing synchronization overhead. Additionally, ZK\nsolutions can complement Calimero by providing enhanced privacy features within\nits framework, offering the best of both worlds without inheriting the\nsynchronization complexities of traditional ZK implementations."})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>a});var o=t(758);const i={},r=o.createContext(i);function s(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[6373],{999:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>s,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var o=t(6070),i=t(8355);const r={id:"zk",title:"ZK"},s=void 0,a={id:"explore/why-not/zk",title:"ZK",description:"Why not ZK?",source:"@site/docs/01-explore/04-why-not/03-zk.mdx",sourceDirName:"01-explore/04-why-not",slug:"/explore/why-not/zk",permalink:"/explore/why-not/zk",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"zk",title:"ZK"},sidebar:"tutorialSidebar",previous:{title:"IPFS",permalink:"/explore/why-not/ipfs"},next:{title:"Private DAOs Management",permalink:"/explore/use-cases/private-daos-management"}},l={},c=[{value:"Why not ZK?",id:"why-not-zk",level:2},{value:"Calimero vs ZK",id:"calimero-vs-zk",level:2}];function d(e){const n={h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h2,{id:"why-not-zk",children:"Why not ZK?"}),"\n",(0,o.jsx)(n.p,{children:"Zero-Knowledge (ZK) solutions focus on enhancing privacy and reducing the need\nto reveal data during synchronization, but they don't eliminate the need for\nsynchronization itself."}),"\n",(0,o.jsx)(n.h2,{id:"calimero-vs-zk",children:"Calimero vs ZK"}),"\n",(0,o.jsx)(n.p,{children:"Calimero offers a fundamentally different approach with local-first execution\nand eventual consistency, minimizing synchronization overhead. Additionally, ZK\nsolutions can complement Calimero by providing enhanced privacy features within\nits framework, offering the best of both worlds without inheriting the\nsynchronization complexities of traditional ZK implementations."})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>a});var o=t(758);const i={},r=o.createContext(i);function s(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9bc1354f.aa5f4388.js b/assets/js/9bc1354f.d706c1f7.js similarity index 93% rename from assets/js/9bc1354f.aa5f4388.js rename to assets/js/9bc1354f.d706c1f7.js index 93b7db3b..ae861240 100644 --- a/assets/js/9bc1354f.aa5f4388.js +++ b/assets/js/9bc1354f.d706c1f7.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3208],{603:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>r,default:()=>u,frontMatter:()=>s,metadata:()=>i,toc:()=>d});var o=n(6070),a=n(5710);const s={id:"decentralized-edge-compute",title:"Decentralized Edge Compute"},r=void 0,i={id:"explore/use-cases/decentralized-edge-compute",title:"Decentralized Edge Compute",description:"Most of the general compute today happens on cloud service because that is where",source:"@site/docs/01-explore/05-use-cases/06-decentralized-edge-compute.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-edge-compute",permalink:"/explore/use-cases/decentralized-edge-compute",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:6,frontMatter:{id:"decentralized-edge-compute",title:"Decentralized Edge Compute"},sidebar:"tutorialSidebar",previous:{title:"Trustless Gaming",permalink:"/explore/use-cases/trustless-gaming"},next:{title:"Decentralized Identity Verification",permalink:"/explore/use-cases/decentralized-identity-verification"}},c={},d=[];function l(e){const t={p:"p",...(0,a.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.p,{children:"Most of the general compute today happens on cloud service because that is where\nmost of the data lives. With Calimero, all the applications data is stored\nlocally, whereas Calimero enables edge compute on that data. Combined with the\nuse of decentralized AI and Edge Inference LLMs, there are numerous use cases\nhow Calimero can enhance user experience: Edge AI on users data for social spam\nfiltering, e-commerce shopping recommendations across channels, to name a few.\nThis would allow users to finally maximize the endless possibilities from their\ndata, on their own rules."}),"\n",(0,o.jsx)(t.p,{children:"For example, when you used to purchase from a certain merchant, the data was\nfully controlled by that merchant or the platform where the data was hosted,\nwhich would yield to your recommendations being exclusively tied to that\nmerchant. But if the data would have lived on your device, your data\nrecommendations would have been across various market channels, and not\nexclusively tied to that specific merchant."})]})}function u(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(l,{...e})}):l(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>i});var o=n(758);const a={},s=o.createContext(a);function r(e){const t=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:r(e.components),o.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3208],{603:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>r,default:()=>u,frontMatter:()=>s,metadata:()=>i,toc:()=>d});var o=n(6070),a=n(8355);const s={id:"decentralized-edge-compute",title:"Decentralized Edge Compute"},r=void 0,i={id:"explore/use-cases/decentralized-edge-compute",title:"Decentralized Edge Compute",description:"Most of the general compute today happens on cloud service because that is where",source:"@site/docs/01-explore/05-use-cases/06-decentralized-edge-compute.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-edge-compute",permalink:"/explore/use-cases/decentralized-edge-compute",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:6,frontMatter:{id:"decentralized-edge-compute",title:"Decentralized Edge Compute"},sidebar:"tutorialSidebar",previous:{title:"Trustless Gaming",permalink:"/explore/use-cases/trustless-gaming"},next:{title:"Decentralized Identity Verification",permalink:"/explore/use-cases/decentralized-identity-verification"}},c={},d=[];function l(e){const t={p:"p",...(0,a.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.p,{children:"Most of the general compute today happens on cloud service because that is where\nmost of the data lives. With Calimero, all the applications data is stored\nlocally, whereas Calimero enables edge compute on that data. Combined with the\nuse of decentralized AI and Edge Inference LLMs, there are numerous use cases\nhow Calimero can enhance user experience: Edge AI on users data for social spam\nfiltering, e-commerce shopping recommendations across channels, to name a few.\nThis would allow users to finally maximize the endless possibilities from their\ndata, on their own rules."}),"\n",(0,o.jsx)(t.p,{children:"For example, when you used to purchase from a certain merchant, the data was\nfully controlled by that merchant or the platform where the data was hosted,\nwhich would yield to your recommendations being exclusively tied to that\nmerchant. But if the data would have lived on your device, your data\nrecommendations would have been across various market channels, and not\nexclusively tied to that specific merchant."})]})}function u(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(l,{...e})}):l(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>i});var o=n(758);const a={},s=o.createContext(a);function r(e){const t=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:r(e.components),o.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a7bd4aaa.435b6820.js b/assets/js/a7bd4aaa.69b329de.js similarity index 81% rename from assets/js/a7bd4aaa.435b6820.js rename to assets/js/a7bd4aaa.69b329de.js index 148fab12..e993ae48 100644 --- a/assets/js/a7bd4aaa.435b6820.js +++ b/assets/js/a7bd4aaa.69b329de.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7098],{8659:(n,e,s)=>{s.r(e),s.d(e,{default:()=>d});s(758);var r=s(4804),o=s(6392),t=s(6518),c=s(1977),i=s(8040),u=s(6070);function a(n){const{version:e}=n;return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(i.A,{version:e.version,tag:(0,o.k)(e.pluginId,e.version)}),(0,u.jsx)(r.be,{children:e.noIndex&&(0,u.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})]})}function l(n){const{version:e,route:s}=n;return(0,u.jsx)(r.e3,{className:e.className,children:(0,u.jsx)(t.n,{version:e,children:(0,c.v)(s.routes)})})}function d(n){return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(a,{...n}),(0,u.jsx)(l,{...n})]})}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7098],{4047:(n,e,s)=>{s.r(e),s.d(e,{default:()=>d});s(758);var r=s(5212),o=s(2581),t=s(2289),c=s(1977),i=s(8796),u=s(6070);function a(n){const{version:e}=n;return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(i.A,{version:e.version,tag:(0,o.k)(e.pluginId,e.version)}),(0,u.jsx)(r.be,{children:e.noIndex&&(0,u.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})]})}function l(n){const{version:e,route:s}=n;return(0,u.jsx)(r.e3,{className:e.className,children:(0,u.jsx)(t.n,{version:e,children:(0,c.v)(s.routes)})})}function d(n){return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(a,{...n}),(0,u.jsx)(l,{...n})]})}}}]); \ No newline at end of file diff --git a/assets/js/a9154f55.0a472ab8.js b/assets/js/a9154f55.0943742d.js similarity index 91% rename from assets/js/a9154f55.0a472ab8.js rename to assets/js/a9154f55.0943742d.js index f34133d8..12f76dec 100644 --- a/assets/js/a9154f55.0a472ab8.js +++ b/assets/js/a9154f55.0943742d.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1259],{2082:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>d,frontMatter:()=>l,metadata:()=>i,toc:()=>c});var r=n(6070),a=n(5710);const l={id:"decentralized-intellectual-property-management",title:"Decentralized Intellectual Property Management"},o=void 0,i={id:"explore/use-cases/decentralized-intellectual-property-management",title:"Decentralized Intellectual Property Management",description:"The traditional platforms for managing and enforcing intellectual property",source:"@site/docs/01-explore/05-use-cases/08-decentralized-intellectual-property-management.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-intellectual-property-management",permalink:"/explore/use-cases/decentralized-intellectual-property-management",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:8,frontMatter:{id:"decentralized-intellectual-property-management",title:"Decentralized Intellectual Property Management"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Identity Verification",permalink:"/explore/use-cases/decentralized-identity-verification"},next:{title:"Only Peers",permalink:"/explore/awesome-projects/only-peers"}},s={},c=[];function p(e){const t={p:"p",...(0,a.R)(),...e.components};return(0,r.jsx)(t.p,{children:"The traditional platforms for managing and enforcing intellectual property\nrights are not fully transparent, resulting in creators not being able to\nmaximize the utility of their work. Developing a decentralized IP management\nplatform would result in a fairer compensation system for all creators."})}function d(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(p,{...e})}):p(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>i});var r=n(758);const a={},l=r.createContext(a);function o(e){const t=r.useContext(l);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:o(e.components),r.createElement(l.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1259],{2082:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>d,frontMatter:()=>l,metadata:()=>i,toc:()=>c});var r=n(6070),a=n(8355);const l={id:"decentralized-intellectual-property-management",title:"Decentralized Intellectual Property Management"},o=void 0,i={id:"explore/use-cases/decentralized-intellectual-property-management",title:"Decentralized Intellectual Property Management",description:"The traditional platforms for managing and enforcing intellectual property",source:"@site/docs/01-explore/05-use-cases/08-decentralized-intellectual-property-management.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-intellectual-property-management",permalink:"/explore/use-cases/decentralized-intellectual-property-management",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:8,frontMatter:{id:"decentralized-intellectual-property-management",title:"Decentralized Intellectual Property Management"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Identity Verification",permalink:"/explore/use-cases/decentralized-identity-verification"},next:{title:"Only Peers",permalink:"/explore/awesome-projects/only-peers"}},s={},c=[];function p(e){const t={p:"p",...(0,a.R)(),...e.components};return(0,r.jsx)(t.p,{children:"The traditional platforms for managing and enforcing intellectual property\nrights are not fully transparent, resulting in creators not being able to\nmaximize the utility of their work. Developing a decentralized IP management\nplatform would result in a fairer compensation system for all creators."})}function d(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(p,{...e})}):p(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>i});var r=n(758);const a={},l=r.createContext(a);function o(e){const t=r.useContext(l);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:o(e.components),r.createElement(l.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a94703ab.0d684b8d.js b/assets/js/a94703ab.0d684b8d.js new file mode 100644 index 00000000..98e7ee1f --- /dev/null +++ b/assets/js/a94703ab.0d684b8d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9048],{9530:(e,t,n)=>{n.r(t),n.d(t,{default:()=>be});var a=n(758),o=n(3526),i=n(5212),s=n(8909),l=n(2186),r=n(7713),c=n(2641),d=n(3926),u=n(1352);const m={backToTopButton:"backToTopButton_D3xs",backToTopButtonShow:"backToTopButtonShow_turi"};var b=n(6070);function h(){const{shown:e,scrollToTop:t}=function(e){let{threshold:t}=e;const[n,o]=(0,a.useState)(!1),i=(0,a.useRef)(!1),{startScroll:s,cancelScroll:l}=(0,d.gk)();return(0,d.Mq)(((e,n)=>{let{scrollY:a}=e;const s=n?.scrollY;s&&(i.current?i.current=!1:a>=s?(l(),o(!1)):a<t?o(!1):a+window.innerHeight<document.documentElement.scrollHeight&&o(!0))})),(0,u.$)((e=>{e.location.hash&&(i.current=!0,o(!1))})),{shown:n,scrollToTop:()=>s(0)}}({threshold:300});return(0,b.jsx)("button",{"aria-label":(0,c.T)({id:"theme.BackToTopButton.buttonAriaLabel",message:"Scroll back to top",description:"The ARIA label for the back to top button"}),className:(0,o.A)("clean-btn",s.G.common.backToTopButton,m.backToTopButton,e&&m.backToTopButtonShow),type:"button",onClick:t})}var p=n(8907),x=n(5557),f=n(2823),j=n(588),_=n(3318);function v(e){return(0,b.jsx)("svg",{width:"20",height:"20","aria-hidden":"true",...e,children:(0,b.jsxs)("g",{fill:"#7a7a7a",children:[(0,b.jsx)("path",{d:"M9.992 10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.55 0-1-.453-1-1 0-.2.059-.403.168-.551l4.629-6.942L.168 3.078A.939.939 0 010 2.528c0-.548.45-.997 1-.997h2.996c.352 0 .649.18.828.45L9.82 9.472c.11.148.172.347.172.55zm0 0"}),(0,b.jsx)("path",{d:"M19.98 10.023c0 .2-.058.399-.168.547l-4.996 7.492a.987.987 0 01-.828.454h-3c-.547 0-.996-.453-.996-1 0-.2.059-.403.168-.551l4.625-6.942-4.625-6.945a.939.939 0 01-.168-.55 1 1 0 01.996-.997h3c.348 0 .649.18.828.45l4.996 7.492c.11.148.168.347.168.55zm0 0"})]})})}const A={collapseSidebarButton:"collapseSidebarButton_P8bN",collapseSidebarButtonIcon:"collapseSidebarButtonIcon_KlEu"};function g(e){let{onClick:t}=e;return(0,b.jsx)("button",{type:"button",title:(0,c.T)({id:"theme.docs.sidebar.collapseButtonTitle",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),"aria-label":(0,c.T)({id:"theme.docs.sidebar.collapseButtonAriaLabel",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),className:(0,o.A)("button button--secondary button--outline",A.collapseSidebarButton),onClick:t,children:(0,b.jsx)(v,{className:A.collapseSidebarButtonIcon})})}var C=n(3243),S=n(6889);const k=Symbol("EmptyContext"),T=a.createContext(k);function N(e){let{children:t}=e;const[n,o]=(0,a.useState)(null),i=(0,a.useMemo)((()=>({expandedItem:n,setExpandedItem:o})),[n]);return(0,b.jsx)(T.Provider,{value:i,children:t})}var I=n(7464),B=n(8819),y=n(4475),L=n(7114);function w(e){let{collapsed:t,categoryLabel:n,onClick:a}=e;return(0,b.jsx)("button",{"aria-label":t?(0,c.T)({id:"theme.DocSidebarItem.expandCategoryAriaLabel",message:"Expand sidebar category '{label}'",description:"The ARIA label to expand the sidebar category"},{label:n}):(0,c.T)({id:"theme.DocSidebarItem.collapseCategoryAriaLabel",message:"Collapse sidebar category '{label}'",description:"The ARIA label to collapse the sidebar category"},{label:n}),"aria-expanded":!t,type:"button",className:"clean-btn menu__caret",onClick:a})}function E(e){let{item:t,onItemClick:n,activePath:i,level:r,index:c,...d}=e;const{items:u,label:m,collapsible:h,className:p,href:x}=t,{docs:{sidebar:{autoCollapseCategories:f}}}=(0,j.p)(),_=function(e){const t=(0,L.A)();return(0,a.useMemo)((()=>e.href&&!e.linkUnlisted?e.href:!t&&e.collapsible?(0,l.Nr)(e):void 0),[e,t])}(t),v=(0,l.w8)(t,i),A=(0,B.ys)(x,i),{collapsed:g,setCollapsed:C}=(0,I.u)({initialState:()=>!!h&&(!v&&t.collapsed)}),{expandedItem:N,setExpandedItem:E}=function(){const e=(0,a.useContext)(T);if(e===k)throw new S.dV("DocSidebarItemsExpandedStateProvider");return e}(),M=function(e){void 0===e&&(e=!g),E(e?null:c),C(e)};return function(e){let{isActive:t,collapsed:n,updateCollapsed:o}=e;const i=(0,S.ZC)(t);(0,a.useEffect)((()=>{t&&!i&&n&&o(!1)}),[t,i,n,o])}({isActive:v,collapsed:g,updateCollapsed:M}),(0,a.useEffect)((()=>{h&&null!=N&&N!==c&&f&&C(!0)}),[h,N,c,C,f]),(0,b.jsxs)("li",{className:(0,o.A)(s.G.docs.docSidebarItemCategory,s.G.docs.docSidebarItemCategoryLevel(r),"menu__list-item",{"menu__list-item--collapsed":g},p),children:[(0,b.jsxs)("div",{className:(0,o.A)("menu__list-item-collapsible",{"menu__list-item-collapsible--active":A}),children:[(0,b.jsx)(y.A,{className:(0,o.A)("menu__link",{"menu__link--sublist":h,"menu__link--sublist-caret":!x&&h,"menu__link--active":v}),onClick:h?e=>{n?.(t),x?M(!1):(e.preventDefault(),M())}:()=>{n?.(t)},"aria-current":A?"page":void 0,role:h&&!x?"button":void 0,"aria-expanded":h&&!x?!g:void 0,href:h?_??"#":_,...d,children:m}),x&&h&&(0,b.jsx)(w,{collapsed:g,categoryLabel:m,onClick:e=>{e.preventDefault(),M()}})]}),(0,b.jsx)(I.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:g,children:(0,b.jsx)(F,{items:u,tabIndex:g?-1:0,onItemClick:n,activePath:i,level:r+1})})]})}var M=n(1593),H=n(6841);const G={menuExternalLink:"menuExternalLink_eT5t"};function R(e){let{item:t,onItemClick:n,activePath:a,level:i,index:r,...c}=e;const{href:d,label:u,className:m,autoAddBaseUrl:h}=t,p=(0,l.w8)(t,a),x=(0,M.A)(d);return(0,b.jsx)("li",{className:(0,o.A)(s.G.docs.docSidebarItemLink,s.G.docs.docSidebarItemLinkLevel(i),"menu__list-item",m),children:(0,b.jsxs)(y.A,{className:(0,o.A)("menu__link",!x&&G.menuExternalLink,{"menu__link--active":p}),autoAddBaseUrl:h,"aria-current":p?"page":void 0,to:d,...x&&{onClick:n?()=>n(t):void 0},...c,children:[u,!x&&(0,b.jsx)(H.A,{})]})},u)}const W={menuHtmlItem:"menuHtmlItem_pJHL"};function P(e){let{item:t,level:n,index:a}=e;const{value:i,defaultStyle:l,className:r}=t;return(0,b.jsx)("li",{className:(0,o.A)(s.G.docs.docSidebarItemLink,s.G.docs.docSidebarItemLinkLevel(n),l&&[W.menuHtmlItem,"menu__list-item"],r),dangerouslySetInnerHTML:{__html:i}},a)}function D(e){let{item:t,...n}=e;switch(t.type){case"category":return(0,b.jsx)(E,{item:t,...n});case"html":return(0,b.jsx)(P,{item:t,...n});default:return(0,b.jsx)(R,{item:t,...n})}}function Y(e){let{items:t,...n}=e;const a=(0,l.Y)(t,n.activePath);return(0,b.jsx)(N,{children:a.map(((e,t)=>(0,b.jsx)(D,{item:e,index:t,...n},t)))})}const F=(0,a.memo)(Y),V={menu:"menu_oMvt",menuWithAnnouncementBar:"menuWithAnnouncementBar__b0W"};function z(e){let{path:t,sidebar:n,className:i}=e;const l=function(){const{isActive:e}=(0,C.M)(),[t,n]=(0,a.useState)(e);return(0,d.Mq)((t=>{let{scrollY:a}=t;e&&n(0===a)}),[e]),e&&t}();return(0,b.jsx)("nav",{"aria-label":(0,c.T)({id:"theme.docs.sidebar.navAriaLabel",message:"Docs sidebar",description:"The ARIA label for the sidebar navigation"}),className:(0,o.A)("menu thin-scrollbar",V.menu,l&&V.menuWithAnnouncementBar,i),children:(0,b.jsx)("ul",{className:(0,o.A)(s.G.docs.docSidebarMenu,"menu__list"),children:(0,b.jsx)(F,{items:n,activePath:t,level:1})})})}const U="sidebar_zRsu",K="sidebarWithHideableNavbar_R1fS",Z="sidebarHidden_nLoz",q="sidebarLogo_N92F";function O(e){let{path:t,sidebar:n,onCollapse:a,isHidden:i}=e;const{navbar:{hideOnScroll:s},docs:{sidebar:{hideable:l}}}=(0,j.p)();return(0,b.jsxs)("div",{className:(0,o.A)(U,s&&K,i&&Z),children:[s&&(0,b.jsx)(_.A,{tabIndex:-1,className:q}),(0,b.jsx)(z,{path:t,sidebar:n}),l&&(0,b.jsx)(g,{onClick:a})]})}const Q=a.memo(O);var J=n(9014),X=n(235);const $=e=>{let{sidebar:t,path:n}=e;const a=(0,X.M)();return(0,b.jsx)("ul",{className:(0,o.A)(s.G.docs.docSidebarMenu,"menu__list"),children:(0,b.jsx)(F,{items:t,activePath:n,onItemClick:e=>{"category"===e.type&&e.href&&a.toggle(),"link"===e.type&&a.toggle()},level:1})})};function ee(e){return(0,b.jsx)(J.GX,{component:$,props:e})}const te=a.memo(ee);function ne(e){const t=(0,f.l)(),n="desktop"===t||"ssr"===t,a="mobile"===t;return(0,b.jsxs)(b.Fragment,{children:[n&&(0,b.jsx)(Q,{...e}),a&&(0,b.jsx)(te,{...e})]})}const ae={expandButton:"expandButton_GQD9",expandButtonIcon:"expandButtonIcon_Zdxk"};function oe(e){let{toggleSidebar:t}=e;return(0,b.jsx)("div",{className:ae.expandButton,title:(0,c.T)({id:"theme.docs.sidebar.expandButtonTitle",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),"aria-label":(0,c.T)({id:"theme.docs.sidebar.expandButtonAriaLabel",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),tabIndex:0,role:"button",onKeyDown:t,onClick:t,children:(0,b.jsx)(v,{className:ae.expandButtonIcon})})}const ie={docSidebarContainer:"docSidebarContainer_YiSe",docSidebarContainerHidden:"docSidebarContainerHidden_K0Yj",sidebarViewport:"sidebarViewport_GSYG"};function se(e){let{children:t}=e;const n=(0,r.t)();return(0,b.jsx)(a.Fragment,{children:t},n?.name??"noSidebar")}function le(e){let{sidebar:t,hiddenSidebarContainer:n,setHiddenSidebarContainer:i}=e;const{pathname:l}=(0,x.zy)(),[r,c]=(0,a.useState)(!1),d=(0,a.useCallback)((()=>{r&&c(!1),!r&&(0,p.O)()&&c(!0),i((e=>!e))}),[i,r]);return(0,b.jsx)("aside",{className:(0,o.A)(s.G.docs.docSidebarContainer,ie.docSidebarContainer,n&&ie.docSidebarContainerHidden),onTransitionEnd:e=>{e.currentTarget.classList.contains(ie.docSidebarContainer)&&n&&c(!0)},children:(0,b.jsx)(se,{children:(0,b.jsxs)("div",{className:(0,o.A)(ie.sidebarViewport,r&&ie.sidebarViewportHidden),children:[(0,b.jsx)(ne,{sidebar:t,path:l,onCollapse:d,isHidden:r}),r&&(0,b.jsx)(oe,{toggleSidebar:d})]})})})}const re={docMainContainer:"docMainContainer_V8YA",docMainContainerEnhanced:"docMainContainerEnhanced__Qfe",docItemWrapperEnhanced:"docItemWrapperEnhanced_v_MZ"};function ce(e){let{hiddenSidebarContainer:t,children:n}=e;const a=(0,r.t)();return(0,b.jsx)("main",{className:(0,o.A)(re.docMainContainer,(t||!a)&&re.docMainContainerEnhanced),children:(0,b.jsx)("div",{className:(0,o.A)("container padding-top--md padding-bottom--lg",re.docItemWrapper,t&&re.docItemWrapperEnhanced),children:n})})}const de={docRoot:"docRoot_Mm_o",docsWrapper:"docsWrapper_kprj"};function ue(e){let{children:t}=e;const n=(0,r.t)(),[o,i]=(0,a.useState)(!1);return(0,b.jsxs)("div",{className:de.docsWrapper,children:[(0,b.jsx)(h,{}),(0,b.jsxs)("div",{className:de.docRoot,children:[n&&(0,b.jsx)(le,{sidebar:n.items,hiddenSidebarContainer:o,setHiddenSidebarContainer:i}),(0,b.jsx)(ce,{hiddenSidebarContainer:o,children:t})]})]})}var me=n(9476);function be(e){const t=(0,l.B5)(e);if(!t)return(0,b.jsx)(me.A,{});const{docElement:n,sidebarName:a,sidebarItems:c}=t;return(0,b.jsx)(i.e3,{className:(0,o.A)(s.G.page.docsDocPage),children:(0,b.jsx)(r.V,{name:a,items:c,children:(0,b.jsx)(ue,{children:n})})})}},9476:(e,t,n)=>{n.d(t,{A:()=>l});n(758);var a=n(3526),o=n(2641),i=n(48),s=n(6070);function l(e){let{className:t}=e;return(0,s.jsx)("main",{className:(0,a.A)("container margin-vert--xl",t),children:(0,s.jsx)("div",{className:"row",children:(0,s.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,s.jsx)(i.A,{as:"h1",className:"hero__title",children:(0,s.jsx)(o.A,{id:"theme.NotFound.title",description:"The title of the 404 page",children:"Page Not Found"})}),(0,s.jsx)("p",{children:(0,s.jsx)(o.A,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page",children:"We could not find what you were looking for."})}),(0,s.jsx)("p",{children:(0,s.jsx)(o.A,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page",children:"Please contact the owner of the site that linked you to the original URL and let them know their link is broken."})})]})})})}}}]); \ No newline at end of file diff --git a/assets/js/a94703ab.1e700a87.js b/assets/js/a94703ab.1e700a87.js deleted file mode 100644 index 8154c9eb..00000000 --- a/assets/js/a94703ab.1e700a87.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9048],{1417:(e,t,n)=>{n.r(t),n.d(t,{default:()=>be});var a=n(758),o=n(3526),i=n(4804),s=n(2382),l=n(2847),r=n(6),c=n(427),d=n(2589),u=n(7259);const m={backToTopButton:"backToTopButton_bu1J",backToTopButtonShow:"backToTopButtonShow_UGO2"};var b=n(6070);function h(){const{shown:e,scrollToTop:t}=function(e){let{threshold:t}=e;const[n,o]=(0,a.useState)(!1),i=(0,a.useRef)(!1),{startScroll:s,cancelScroll:l}=(0,d.gk)();return(0,d.Mq)(((e,n)=>{let{scrollY:a}=e;const s=n?.scrollY;s&&(i.current?i.current=!1:a>=s?(l(),o(!1)):a<t?o(!1):a+window.innerHeight<document.documentElement.scrollHeight&&o(!0))})),(0,u.$)((e=>{e.location.hash&&(i.current=!0,o(!1))})),{shown:n,scrollToTop:()=>s(0)}}({threshold:300});return(0,b.jsx)("button",{"aria-label":(0,c.T)({id:"theme.BackToTopButton.buttonAriaLabel",message:"Scroll back to top",description:"The ARIA label for the back to top button"}),className:(0,o.A)("clean-btn",s.G.common.backToTopButton,m.backToTopButton,e&&m.backToTopButtonShow),type:"button",onClick:t})}var p=n(3606),x=n(5557),f=n(3216),j=n(1781),v=n(5842);function A(e){return(0,b.jsx)("svg",{width:"20",height:"20","aria-hidden":"true",...e,children:(0,b.jsxs)("g",{fill:"#7a7a7a",children:[(0,b.jsx)("path",{d:"M9.992 10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.55 0-1-.453-1-1 0-.2.059-.403.168-.551l4.629-6.942L.168 3.078A.939.939 0 010 2.528c0-.548.45-.997 1-.997h2.996c.352 0 .649.18.828.45L9.82 9.472c.11.148.172.347.172.55zm0 0"}),(0,b.jsx)("path",{d:"M19.98 10.023c0 .2-.058.399-.168.547l-4.996 7.492a.987.987 0 01-.828.454h-3c-.547 0-.996-.453-.996-1 0-.2.059-.403.168-.551l4.625-6.942-4.625-6.945a.939.939 0 01-.168-.55 1 1 0 01.996-.997h3c.348 0 .649.18.828.45l4.996 7.492c.11.148.168.347.168.55zm0 0"})]})})}const _={collapseSidebarButton:"collapseSidebarButton_Ad0v",collapseSidebarButtonIcon:"collapseSidebarButtonIcon_wcVP"};function g(e){let{onClick:t}=e;return(0,b.jsx)("button",{type:"button",title:(0,c.T)({id:"theme.docs.sidebar.collapseButtonTitle",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),"aria-label":(0,c.T)({id:"theme.docs.sidebar.collapseButtonAriaLabel",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),className:(0,o.A)("button button--secondary button--outline",_.collapseSidebarButton),onClick:t,children:(0,b.jsx)(A,{className:_.collapseSidebarButtonIcon})})}var C=n(4794),S=n(1367);const k=Symbol("EmptyContext"),T=a.createContext(k);function I(e){let{children:t}=e;const[n,o]=(0,a.useState)(null),i=(0,a.useMemo)((()=>({expandedItem:n,setExpandedItem:o})),[n]);return(0,b.jsx)(T.Provider,{value:i,children:t})}var N=n(6925),y=n(8988),B=n(9410),w=n(2195);function L(e){let{collapsed:t,categoryLabel:n,onClick:a}=e;return(0,b.jsx)("button",{"aria-label":t?(0,c.T)({id:"theme.DocSidebarItem.expandCategoryAriaLabel",message:"Expand sidebar category '{label}'",description:"The ARIA label to expand the sidebar category"},{label:n}):(0,c.T)({id:"theme.DocSidebarItem.collapseCategoryAriaLabel",message:"Collapse sidebar category '{label}'",description:"The ARIA label to collapse the sidebar category"},{label:n}),"aria-expanded":!t,type:"button",className:"clean-btn menu__caret",onClick:a})}function E(e){let{item:t,onItemClick:n,activePath:i,level:r,index:c,...d}=e;const{items:u,label:m,collapsible:h,className:p,href:x}=t,{docs:{sidebar:{autoCollapseCategories:f}}}=(0,j.p)(),v=function(e){const t=(0,w.A)();return(0,a.useMemo)((()=>e.href&&!e.linkUnlisted?e.href:!t&&e.collapsible?(0,l.Nr)(e):void 0),[e,t])}(t),A=(0,l.w8)(t,i),_=(0,y.ys)(x,i),{collapsed:g,setCollapsed:C}=(0,N.u)({initialState:()=>!!h&&(!A&&t.collapsed)}),{expandedItem:I,setExpandedItem:E}=function(){const e=(0,a.useContext)(T);if(e===k)throw new S.dV("DocSidebarItemsExpandedStateProvider");return e}(),H=function(e){void 0===e&&(e=!g),E(e?null:c),C(e)};return function(e){let{isActive:t,collapsed:n,updateCollapsed:o}=e;const i=(0,S.ZC)(t);(0,a.useEffect)((()=>{t&&!i&&n&&o(!1)}),[t,i,n,o])}({isActive:A,collapsed:g,updateCollapsed:H}),(0,a.useEffect)((()=>{h&&null!=I&&I!==c&&f&&C(!0)}),[h,I,c,C,f]),(0,b.jsxs)("li",{className:(0,o.A)(s.G.docs.docSidebarItemCategory,s.G.docs.docSidebarItemCategoryLevel(r),"menu__list-item",{"menu__list-item--collapsed":g},p),children:[(0,b.jsxs)("div",{className:(0,o.A)("menu__list-item-collapsible",{"menu__list-item-collapsible--active":_}),children:[(0,b.jsx)(B.A,{className:(0,o.A)("menu__link",{"menu__link--sublist":h,"menu__link--sublist-caret":!x&&h,"menu__link--active":A}),onClick:h?e=>{n?.(t),x?H(!1):(e.preventDefault(),H())}:()=>{n?.(t)},"aria-current":_?"page":void 0,role:h&&!x?"button":void 0,"aria-expanded":h&&!x?!g:void 0,href:h?v??"#":v,...d,children:m}),x&&h&&(0,b.jsx)(L,{collapsed:g,categoryLabel:m,onClick:e=>{e.preventDefault(),H()}})]}),(0,b.jsx)(N.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:g,children:(0,b.jsx)(F,{items:u,tabIndex:g?-1:0,onItemClick:n,activePath:i,level:r+1})})]})}var H=n(2154),M=n(4065);const G={menuExternalLink:"menuExternalLink_zeTO"};function P(e){let{item:t,onItemClick:n,activePath:a,level:i,index:r,...c}=e;const{href:d,label:u,className:m,autoAddBaseUrl:h}=t,p=(0,l.w8)(t,a),x=(0,H.A)(d);return(0,b.jsx)("li",{className:(0,o.A)(s.G.docs.docSidebarItemLink,s.G.docs.docSidebarItemLinkLevel(i),"menu__list-item",m),children:(0,b.jsxs)(B.A,{className:(0,o.A)("menu__link",!x&&G.menuExternalLink,{"menu__link--active":p}),autoAddBaseUrl:h,"aria-current":p?"page":void 0,to:d,...x&&{onClick:n?()=>n(t):void 0},...c,children:[u,!x&&(0,b.jsx)(M.A,{})]})},u)}const R={menuHtmlItem:"menuHtmlItem_ddm0"};function W(e){let{item:t,level:n,index:a}=e;const{value:i,defaultStyle:l,className:r}=t;return(0,b.jsx)("li",{className:(0,o.A)(s.G.docs.docSidebarItemLink,s.G.docs.docSidebarItemLinkLevel(n),l&&[R.menuHtmlItem,"menu__list-item"],r),dangerouslySetInnerHTML:{__html:i}},a)}function D(e){let{item:t,...n}=e;switch(t.type){case"category":return(0,b.jsx)(E,{item:t,...n});case"html":return(0,b.jsx)(W,{item:t,...n});default:return(0,b.jsx)(P,{item:t,...n})}}function z(e){let{items:t,...n}=e;const a=(0,l.Y)(t,n.activePath);return(0,b.jsx)(I,{children:a.map(((e,t)=>(0,b.jsx)(D,{item:e,index:t,...n},t)))})}const F=(0,a.memo)(z),V={menu:"menu_iqPl",menuWithAnnouncementBar:"menuWithAnnouncementBar_iXs4"};function U(e){let{path:t,sidebar:n,className:i}=e;const l=function(){const{isActive:e}=(0,C.M)(),[t,n]=(0,a.useState)(e);return(0,d.Mq)((t=>{let{scrollY:a}=t;e&&n(0===a)}),[e]),e&&t}();return(0,b.jsx)("nav",{"aria-label":(0,c.T)({id:"theme.docs.sidebar.navAriaLabel",message:"Docs sidebar",description:"The ARIA label for the sidebar navigation"}),className:(0,o.A)("menu thin-scrollbar",V.menu,l&&V.menuWithAnnouncementBar,i),children:(0,b.jsx)("ul",{className:(0,o.A)(s.G.docs.docSidebarMenu,"menu__list"),children:(0,b.jsx)(F,{items:n,activePath:t,level:1})})})}const O="sidebar_Ktp6",q="sidebarWithHideableNavbar_kfuy",J="sidebarHidden_J7I3",K="sidebarLogo_R67I";function Y(e){let{path:t,sidebar:n,onCollapse:a,isHidden:i}=e;const{navbar:{hideOnScroll:s},docs:{sidebar:{hideable:l}}}=(0,j.p)();return(0,b.jsxs)("div",{className:(0,o.A)(O,s&&q,i&&J),children:[s&&(0,b.jsx)(v.A,{tabIndex:-1,className:K}),(0,b.jsx)(U,{path:t,sidebar:n}),l&&(0,b.jsx)(g,{onClick:a})]})}const X=a.memo(Y);var Z=n(6195),$=n(6346);const Q=e=>{let{sidebar:t,path:n}=e;const a=(0,$.M)();return(0,b.jsx)("ul",{className:(0,o.A)(s.G.docs.docSidebarMenu,"menu__list"),children:(0,b.jsx)(F,{items:t,activePath:n,onItemClick:e=>{"category"===e.type&&e.href&&a.toggle(),"link"===e.type&&a.toggle()},level:1})})};function ee(e){return(0,b.jsx)(Z.GX,{component:Q,props:e})}const te=a.memo(ee);function ne(e){const t=(0,f.l)(),n="desktop"===t||"ssr"===t,a="mobile"===t;return(0,b.jsxs)(b.Fragment,{children:[n&&(0,b.jsx)(X,{...e}),a&&(0,b.jsx)(te,{...e})]})}const ae={expandButton:"expandButton_S3yh",expandButtonIcon:"expandButtonIcon_zf6i"};function oe(e){let{toggleSidebar:t}=e;return(0,b.jsx)("div",{className:ae.expandButton,title:(0,c.T)({id:"theme.docs.sidebar.expandButtonTitle",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),"aria-label":(0,c.T)({id:"theme.docs.sidebar.expandButtonAriaLabel",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),tabIndex:0,role:"button",onKeyDown:t,onClick:t,children:(0,b.jsx)(A,{className:ae.expandButtonIcon})})}const ie={docSidebarContainer:"docSidebarContainer_qGJz",docSidebarContainerHidden:"docSidebarContainerHidden_UOoK",sidebarViewport:"sidebarViewport_d72u"};function se(e){let{children:t}=e;const n=(0,r.t)();return(0,b.jsx)(a.Fragment,{children:t},n?.name??"noSidebar")}function le(e){let{sidebar:t,hiddenSidebarContainer:n,setHiddenSidebarContainer:i}=e;const{pathname:l}=(0,x.zy)(),[r,c]=(0,a.useState)(!1),d=(0,a.useCallback)((()=>{r&&c(!1),!r&&(0,p.O)()&&c(!0),i((e=>!e))}),[i,r]);return(0,b.jsx)("aside",{className:(0,o.A)(s.G.docs.docSidebarContainer,ie.docSidebarContainer,n&&ie.docSidebarContainerHidden),onTransitionEnd:e=>{e.currentTarget.classList.contains(ie.docSidebarContainer)&&n&&c(!0)},children:(0,b.jsx)(se,{children:(0,b.jsxs)("div",{className:(0,o.A)(ie.sidebarViewport,r&&ie.sidebarViewportHidden),children:[(0,b.jsx)(ne,{sidebar:t,path:l,onCollapse:d,isHidden:r}),r&&(0,b.jsx)(oe,{toggleSidebar:d})]})})})}const re={docMainContainer:"docMainContainer_pwdE",docMainContainerEnhanced:"docMainContainerEnhanced_K22F",docItemWrapperEnhanced:"docItemWrapperEnhanced_ae35"};function ce(e){let{hiddenSidebarContainer:t,children:n}=e;const a=(0,r.t)();return(0,b.jsx)("main",{className:(0,o.A)(re.docMainContainer,(t||!a)&&re.docMainContainerEnhanced),children:(0,b.jsx)("div",{className:(0,o.A)("container padding-top--md padding-bottom--lg",re.docItemWrapper,t&&re.docItemWrapperEnhanced),children:n})})}const de={docRoot:"docRoot_n5mG",docsWrapper:"docsWrapper_JvSA"};function ue(e){let{children:t}=e;const n=(0,r.t)(),[o,i]=(0,a.useState)(!1);return(0,b.jsxs)("div",{className:de.docsWrapper,children:[(0,b.jsx)(h,{}),(0,b.jsxs)("div",{className:de.docRoot,children:[n&&(0,b.jsx)(le,{sidebar:n.items,hiddenSidebarContainer:o,setHiddenSidebarContainer:i}),(0,b.jsx)(ce,{hiddenSidebarContainer:o,children:t})]})]})}var me=n(2824);function be(e){const t=(0,l.B5)(e);if(!t)return(0,b.jsx)(me.A,{});const{docElement:n,sidebarName:a,sidebarItems:c}=t;return(0,b.jsx)(i.e3,{className:(0,o.A)(s.G.page.docsDocPage),children:(0,b.jsx)(r.V,{name:a,items:c,children:(0,b.jsx)(ue,{children:n})})})}},2824:(e,t,n)=>{n.d(t,{A:()=>l});n(758);var a=n(3526),o=n(427),i=n(9849),s=n(6070);function l(e){let{className:t}=e;return(0,s.jsx)("main",{className:(0,a.A)("container margin-vert--xl",t),children:(0,s.jsx)("div",{className:"row",children:(0,s.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,s.jsx)(i.A,{as:"h1",className:"hero__title",children:(0,s.jsx)(o.A,{id:"theme.NotFound.title",description:"The title of the 404 page",children:"Page Not Found"})}),(0,s.jsx)("p",{children:(0,s.jsx)(o.A,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page",children:"We could not find what you were looking for."})}),(0,s.jsx)("p",{children:(0,s.jsx)(o.A,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page",children:"Please contact the owner of the site that linked you to the original URL and let them know their link is broken."})})]})})})}}}]); \ No newline at end of file diff --git a/assets/js/b9be9bb6.751f3db2.js b/assets/js/b9be9bb6.5ce70fb1.js similarity index 91% rename from assets/js/b9be9bb6.751f3db2.js rename to assets/js/b9be9bb6.5ce70fb1.js index 1892350a..d643fc6a 100644 --- a/assets/js/b9be9bb6.751f3db2.js +++ b/assets/js/b9be9bb6.5ce70fb1.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8086],{729:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var s=n(6070),r=n(5710);const o={id:"decentralized-voting-systems",title:"Decentralized Voting Systems"},i=void 0,a={id:"explore/use-cases/decentralized-voting-systems",title:"Decentralized Voting Systems",description:"Enhance trust in voting by creating a secure and tamper-proof voting process",source:"@site/docs/01-explore/05-use-cases/01-decentralized-voting-systems.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-voting-systems",permalink:"/explore/use-cases/decentralized-voting-systems",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"decentralized-voting-systems",title:"Decentralized Voting Systems"},sidebar:"tutorialSidebar",previous:{title:"Private DAOs Management",permalink:"/explore/use-cases/private-daos-management"},next:{title:"Decentralized Social Platforms",permalink:"/explore/use-cases/decentralized-social-platforms"}},c={},d=[];function l(e){const t={p:"p",...(0,r.R)(),...e.components};return(0,s.jsx)(t.p,{children:"Enhance trust in voting by creating a secure and tamper-proof voting process\napplication, ensuring each vote is counted accurately and cannot be altered.\nThis technology enhances trust in voting by providing verifiable and immutable\nrecords while protecting voter privacy. It empowers voters, reduces the risk of\nfraud, and promotes democratic participation through a transparent and secure\nvoting platform."})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(l,{...e})}):l(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>a});var s=n(758);const r={},o=s.createContext(r);function i(e){const t=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),s.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8086],{729:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var s=n(6070),r=n(8355);const o={id:"decentralized-voting-systems",title:"Decentralized Voting Systems"},i=void 0,a={id:"explore/use-cases/decentralized-voting-systems",title:"Decentralized Voting Systems",description:"Enhance trust in voting by creating a secure and tamper-proof voting process",source:"@site/docs/01-explore/05-use-cases/01-decentralized-voting-systems.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-voting-systems",permalink:"/explore/use-cases/decentralized-voting-systems",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"decentralized-voting-systems",title:"Decentralized Voting Systems"},sidebar:"tutorialSidebar",previous:{title:"Private DAOs Management",permalink:"/explore/use-cases/private-daos-management"},next:{title:"Decentralized Social Platforms",permalink:"/explore/use-cases/decentralized-social-platforms"}},c={},d=[];function l(e){const t={p:"p",...(0,r.R)(),...e.components};return(0,s.jsx)(t.p,{children:"Enhance trust in voting by creating a secure and tamper-proof voting process\napplication, ensuring each vote is counted accurately and cannot be altered.\nThis technology enhances trust in voting by providing verifiable and immutable\nrecords while protecting voter privacy. It empowers voters, reduces the risk of\nfraud, and promotes democratic participation through a transparent and secure\nvoting platform."})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(l,{...e})}):l(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>a});var s=n(758);const r={},o=s.createContext(r);function i(e){const t=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),s.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/bc9a0017.7132163f.js b/assets/js/bc9a0017.c19bdde1.js similarity index 90% rename from assets/js/bc9a0017.7132163f.js rename to assets/js/bc9a0017.c19bdde1.js index 47993b7a..6380082a 100644 --- a/assets/js/bc9a0017.7132163f.js +++ b/assets/js/bc9a0017.c19bdde1.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[772],{7418:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>d,contentTitle:()=>i,default:()=>u,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var r=o(6070),n=o(5710);const s={id:"deprod",title:"Decentralized Productivity (DeProd) SaaS"},i=void 0,a={id:"explore/use-cases/deprod",title:"Decentralized Productivity (DeProd) SaaS",description:"Create a decentralized productivity tools suite by self hosting your data on",source:"@site/docs/01-explore/05-use-cases/03-deprod.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/deprod",permalink:"/explore/use-cases/deprod",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"deprod",title:"Decentralized Productivity (DeProd) SaaS"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Social Platforms",permalink:"/explore/use-cases/decentralized-social-platforms"},next:{title:"Decentralized Gig Economy",permalink:"/explore/use-cases/decentralized-gig-economy"}},d={},c=[];function l(e){const t={p:"p",...(0,n.R)(),...e.components};return(0,r.jsx)(t.p,{children:"Create a decentralized productivity tools suite by self hosting your data on\nCalimero\u2019s private applications and move away from the control of centralized\nentities. The new platform would mitigate the burden of lifetime deals and hard\nmigration processes for the current users of Productivity SaaS solutions."})}function u(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},5710:(e,t,o)=>{o.d(t,{R:()=>i,x:()=>a});var r=o(758);const n={},s=r.createContext(n);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[772],{7418:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>d,contentTitle:()=>i,default:()=>u,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var r=o(6070),n=o(8355);const s={id:"deprod",title:"Decentralized Productivity (DeProd) SaaS"},i=void 0,a={id:"explore/use-cases/deprod",title:"Decentralized Productivity (DeProd) SaaS",description:"Create a decentralized productivity tools suite by self hosting your data on",source:"@site/docs/01-explore/05-use-cases/03-deprod.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/deprod",permalink:"/explore/use-cases/deprod",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"deprod",title:"Decentralized Productivity (DeProd) SaaS"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Social Platforms",permalink:"/explore/use-cases/decentralized-social-platforms"},next:{title:"Decentralized Gig Economy",permalink:"/explore/use-cases/decentralized-gig-economy"}},d={},c=[];function l(e){const t={p:"p",...(0,n.R)(),...e.components};return(0,r.jsx)(t.p,{children:"Create a decentralized productivity tools suite by self hosting your data on\nCalimero\u2019s private applications and move away from the control of centralized\nentities. The new platform would mitigate the burden of lifetime deals and hard\nmigration processes for the current users of Productivity SaaS solutions."})}function u(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},8355:(e,t,o)=>{o.d(t,{R:()=>i,x:()=>a});var r=o(758);const n={},s=r.createContext(n);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/bd9c48a9.c9866f5d.js b/assets/js/bd9c48a9.31a2cba1.js similarity index 95% rename from assets/js/bd9c48a9.c9866f5d.js rename to assets/js/bd9c48a9.31a2cba1.js index a666a99d..b7cacc60 100644 --- a/assets/js/bd9c48a9.c9866f5d.js +++ b/assets/js/bd9c48a9.31a2cba1.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2039],{9376:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>s,default:()=>d,frontMatter:()=>i,metadata:()=>a,toc:()=>l});var o=t(6070),r=t(5710);const i={id:"bounty-program",title:"Bounty Program"},s="Bounty Program",a={id:"contribute/bounty-program",title:"Bounty Program",description:"We're excited to announce that Calimero will soon be launching a bounty program!",source:"@site/docs/05-contribute/03-bounty-program.mdx",sourceDirName:"05-contribute",slug:"/contribute/bounty-program",permalink:"/contribute/bounty-program",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"bounty-program",title:"Bounty Program"},sidebar:"tutorialSidebar",previous:{title:"Hackathons",permalink:"/contribute/hackathons"},next:{title:"Community and Support",permalink:"/resources/community-and-support"}},u={},l=[{value:"What is a Bounty Program?",id:"what-is-a-bounty-program",level:2},{value:"How it Works",id:"how-it-works",level:2},{value:"Exceptional Contributions",id:"exceptional-contributions",level:3},{value:"Stay Tuned",id:"stay-tuned",level:2}];function c(e){const n={a:"a",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",...(0,r.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.header,{children:(0,o.jsx)(n.h1,{id:"bounty-program",children:"Bounty Program"})}),"\n",(0,o.jsx)(n.p,{children:"We're excited to announce that Calimero will soon be launching a bounty program!\nThis program is designed to reward contributors who help us tackle various\nissues and enhance our project."}),"\n",(0,o.jsx)(n.h2,{id:"what-is-a-bounty-program",children:"What is a Bounty Program?"}),"\n",(0,o.jsx)(n.p,{children:"A bounty program is an initiative where contributors can earn rewards for\ncompleting specific tasks or resolving issues. These tasks can range from fixing\nbugs to adding new features, improving documentation, or optimizing performance.\nThe rewards can vary and may include monetary compensation, swag, exclusive\naccess to new features, or public recognition."}),"\n",(0,o.jsx)(n.h2,{id:"how-it-works",children:"How it Works"}),"\n",(0,o.jsx)(n.p,{children:"While we are still in the process of finalizing the details of our bounty\nprogram, here\u2019s an overview of how it will function:"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Identify Bounty Issues:"})," We will mark specific\n",(0,o.jsx)(n.a,{href:"https://github.com/calimero-network/core/issues",children:"issues"}),' in our repository\nwith a "bounty" label. These issues will be eligible for rewards.']}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Contribute:"})," Choose a bounty-labeled issue that interests you, solve it,\nand submit a pull request."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Review:"})," Our team will review your contribution. If your solution meets\nthe requirements and quality standards, it will be merged."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Reward:"})," Once the issue is resolved and your contribution is accepted, you\nwill receive a reward. The exact nature of the reward will be specified in\nthe issue description."]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"exceptional-contributions",children:"Exceptional Contributions"}),"\n",(0,o.jsx)(n.p,{children:"While not all issues may be marked with a bounty label, we recognize that\nexceptional solutions deserve recognition. If you provide a particularly\noutstanding solution to an issue not marked as a bounty, we may still decide to\nreward your contribution."}),"\n",(0,o.jsx)(n.h2,{id:"stay-tuned",children:"Stay Tuned"}),"\n",(0,o.jsx)(n.p,{children:"We are currently refining the details of our bounty program, including the\nreward system. Follow us on social media and keep an eye on our announcements to\nbe the first to know when the bounty program goes live."}),"\n",(0,o.jsx)(n.p,{children:"Thank you for your patience and continued support. We look forward to\ncollaborating with you and rewarding your valuable contributions!"})]})}function d(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>a});var o=t(758);const r={},i=o.createContext(r);function s(e){const n=o.useContext(i);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),o.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2039],{9376:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>s,default:()=>d,frontMatter:()=>i,metadata:()=>a,toc:()=>l});var o=t(6070),r=t(8355);const i={id:"bounty-program",title:"Bounty Program"},s="Bounty Program",a={id:"contribute/bounty-program",title:"Bounty Program",description:"We're excited to announce that Calimero will soon be launching a bounty program!",source:"@site/docs/05-contribute/03-bounty-program.mdx",sourceDirName:"05-contribute",slug:"/contribute/bounty-program",permalink:"/contribute/bounty-program",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"bounty-program",title:"Bounty Program"},sidebar:"tutorialSidebar",previous:{title:"Hackathons",permalink:"/contribute/hackathons"},next:{title:"Community and Support",permalink:"/resources/community-and-support"}},u={},l=[{value:"What is a Bounty Program?",id:"what-is-a-bounty-program",level:2},{value:"How it Works",id:"how-it-works",level:2},{value:"Exceptional Contributions",id:"exceptional-contributions",level:3},{value:"Stay Tuned",id:"stay-tuned",level:2}];function c(e){const n={a:"a",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",...(0,r.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.header,{children:(0,o.jsx)(n.h1,{id:"bounty-program",children:"Bounty Program"})}),"\n",(0,o.jsx)(n.p,{children:"We're excited to announce that Calimero will soon be launching a bounty program!\nThis program is designed to reward contributors who help us tackle various\nissues and enhance our project."}),"\n",(0,o.jsx)(n.h2,{id:"what-is-a-bounty-program",children:"What is a Bounty Program?"}),"\n",(0,o.jsx)(n.p,{children:"A bounty program is an initiative where contributors can earn rewards for\ncompleting specific tasks or resolving issues. These tasks can range from fixing\nbugs to adding new features, improving documentation, or optimizing performance.\nThe rewards can vary and may include monetary compensation, swag, exclusive\naccess to new features, or public recognition."}),"\n",(0,o.jsx)(n.h2,{id:"how-it-works",children:"How it Works"}),"\n",(0,o.jsx)(n.p,{children:"While we are still in the process of finalizing the details of our bounty\nprogram, here\u2019s an overview of how it will function:"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Identify Bounty Issues:"})," We will mark specific\n",(0,o.jsx)(n.a,{href:"https://github.com/calimero-network/core/issues",children:"issues"}),' in our repository\nwith a "bounty" label. These issues will be eligible for rewards.']}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Contribute:"})," Choose a bounty-labeled issue that interests you, solve it,\nand submit a pull request."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Review:"})," Our team will review your contribution. If your solution meets\nthe requirements and quality standards, it will be merged."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Reward:"})," Once the issue is resolved and your contribution is accepted, you\nwill receive a reward. The exact nature of the reward will be specified in\nthe issue description."]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"exceptional-contributions",children:"Exceptional Contributions"}),"\n",(0,o.jsx)(n.p,{children:"While not all issues may be marked with a bounty label, we recognize that\nexceptional solutions deserve recognition. If you provide a particularly\noutstanding solution to an issue not marked as a bounty, we may still decide to\nreward your contribution."}),"\n",(0,o.jsx)(n.h2,{id:"stay-tuned",children:"Stay Tuned"}),"\n",(0,o.jsx)(n.p,{children:"We are currently refining the details of our bounty program, including the\nreward system. Follow us on social media and keep an eye on our announcements to\nbe the first to know when the bounty program goes live."}),"\n",(0,o.jsx)(n.p,{children:"Thank you for your patience and continued support. We look forward to\ncollaborating with you and rewarding your valuable contributions!"})]})}function d(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>a});var o=t(758);const r={},i=o.createContext(r);function s(e){const n=o.useContext(i);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),o.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/bf6ec8e5.bb211fa5.js b/assets/js/bf6ec8e5.e37e58e3.js similarity index 97% rename from assets/js/bf6ec8e5.bb211fa5.js rename to assets/js/bf6ec8e5.e37e58e3.js index 30e61bf4..48e47804 100644 --- a/assets/js/bf6ec8e5.bb211fa5.js +++ b/assets/js/bf6ec8e5.e37e58e3.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7607],{1610:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>d,toc:()=>l});var i=t(6070),r=t(5710);const s={id:"identity",title:"Identity"},o=void 0,d={id:"learn/core-concepts/identity",title:"Identity",description:"Calimero Decentralized Identity",source:"@site/docs/02-learn/03-core-concepts/01-identity (DID).mdx",sourceDirName:"02-learn/03-core-concepts",slug:"/learn/core-concepts/identity",permalink:"/learn/core-concepts/identity",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"identity",title:"Identity"},sidebar:"tutorialSidebar",previous:{title:"Architecture",permalink:"/learn/architecture"},next:{title:"Client Node",permalink:"/learn/core-concepts/node/client-node"}},c={},l=[{value:"Calimero Decentralized Identity",id:"calimero-decentralized-identity",level:2},{value:"Network identity",id:"network-identity",level:3},{value:"Network Keys",id:"network-keys",level:4},{value:"Context identity",id:"context-identity",level:3},{value:"Decentralized Identity (DID) document",id:"decentralized-identity-did-document",level:3},{value:"Root keys",id:"root-keys",level:4},{value:"Client keys",id:"client-keys",level:4},{value:"Runtime keys",id:"runtime-keys",level:4},{value:"Encryption keys",id:"encryption-keys",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"calimero-decentralized-identity",children:"Calimero Decentralized Identity"}),"\n",(0,i.jsx)(n.p,{children:"Calimero\u2019s decentralized identity framework is designed to provide secure,\nanonymous, and decentralized control across the network. It leverages multiple\ntypes of cryptographic keys to manage identities and ensure the integrity of\noperations within the network."}),"\n",(0,i.jsx)(n.h3,{id:"network-identity",children:"Network identity"}),"\n",(0,i.jsxs)(n.p,{children:["Network identity is defined within the configuration file on each node. This\nidentity is derived from ",(0,i.jsx)(n.a,{href:"#network-keys",children:"network keys"}),", which generate a unique\n",(0,i.jsx)(n.code,{children:"Peer ID"})," for each node, allowing peers to identify themselves to other peers in\nthe network."]}),"\n",(0,i.jsx)(n.h4,{id:"network-keys",children:"Network Keys"}),"\n",(0,i.jsxs)(n.p,{children:["Network keys are used to authenticate nodes within the network, with each node\nhaving a unique private-public key pair that it uses to verify its identity to\nother nodes. During connection setup, nodes exchange public keys to ensure they\nare communicating with the intended parties. More in\n",(0,i.jsx)(n.a,{href:"./node/network#identify",children:"Learn - Network"})]}),"\n",(0,i.jsx)(n.h3,{id:"context-identity",children:"Context identity"}),"\n",(0,i.jsxs)(n.p,{children:["Context identity allows users to identify themselves within a specific context.\nUsers can have arbitrary number of identities within a specific context which\nremains encapsulated within the context. These identities are linked to\n",(0,i.jsx)(n.a,{href:"#runtime-keys",children:"runtime keys"}),", with each context identity connected to one\nruntime key."]}),"\n",(0,i.jsx)(n.h3,{id:"decentralized-identity-did-document",children:"Decentralized Identity (DID) document"}),"\n",(0,i.jsx)(n.p,{children:"All context-specific identities and node keys are managed through a\nDecentralized Identity (DID) document stored on the node. This document\nincludes:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#root-keys",children:"Root Keys"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#client-keys",children:"Client Keys"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#runtime-keys",children:"Runtime Keys"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#encryption-keys",children:"Encryption Keys"})}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Calimero's key management utilizes multiple keys for various purposes, ensuring\nsecure, anonymous, and decentralized control across the network. This structure\nunderpins secure and efficient operations within the Calimero Network,\nfacilitating both node and application functionalities."}),"\n",(0,i.jsx)(n.h4,{id:"root-keys",children:"Root keys"}),"\n",(0,i.jsx)(n.p,{children:"Root keys provide full access for node operations, including managing root keys,\nlisting identifiers, and generating new client keys. Web3 wallets can be used as\nfundamental for root keys, simplifying the setup process."}),"\n",(0,i.jsx)(n.h4,{id:"client-keys",children:"Client keys"}),"\n",(0,i.jsx)(n.p,{children:"Client keys are generated on login and used by the frontend. Stored in browser\nlocal storage, these keys initiate applications and server as permissioned\naccess to the node."}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Client Key Usage"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Key Creation"}),": Users generate a new keypair in their browser."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Verification"}),":","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"A Verifiable Presentation Request is sent to the node, which responds with\na challenge."}),"\n",(0,i.jsx)(n.li,{children:"The challenge and public key are signed using the root key."}),"\n",(0,i.jsx)(n.li,{children:"Upon node verification of the request and signature, the new key is cleared\nfor JSONRPC API communication from the browser to the node."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Calimero's TypeScript SDK supports developers in building browser and CLI\napplications by simplifying interaction with the network."}),"\n",(0,i.jsx)(n.h4,{id:"runtime-keys",children:"Runtime keys"}),"\n",(0,i.jsx)(n.p,{children:"Runtime keys are used for signing transactions within a context, with the\nappropriate key selected based on the context identity."}),"\n",(0,i.jsx)(n.h4,{id:"encryption-keys",children:"Encryption keys"}),"\n",(0,i.jsxs)(n.p,{children:["Keys used for encrypting and decrypting messages between peers in the context.\nEach context has its own encryption key. More in\n",(0,i.jsx)(n.a,{href:"./../advanced-concepts/encryption",children:"Learn - Encryption"})]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>d});var i=t(758);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7607],{1610:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>h,frontMatter:()=>s,metadata:()=>d,toc:()=>l});var i=t(6070),r=t(8355);const s={id:"identity",title:"Identity"},o=void 0,d={id:"learn/core-concepts/identity",title:"Identity",description:"Calimero Decentralized Identity",source:"@site/docs/02-learn/03-core-concepts/01-identity (DID).mdx",sourceDirName:"02-learn/03-core-concepts",slug:"/learn/core-concepts/identity",permalink:"/learn/core-concepts/identity",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"identity",title:"Identity"},sidebar:"tutorialSidebar",previous:{title:"Architecture",permalink:"/learn/architecture"},next:{title:"Client Node",permalink:"/learn/core-concepts/node/client-node"}},c={},l=[{value:"Calimero Decentralized Identity",id:"calimero-decentralized-identity",level:2},{value:"Network identity",id:"network-identity",level:3},{value:"Network Keys",id:"network-keys",level:4},{value:"Context identity",id:"context-identity",level:3},{value:"Decentralized Identity (DID) document",id:"decentralized-identity-did-document",level:3},{value:"Root keys",id:"root-keys",level:4},{value:"Client keys",id:"client-keys",level:4},{value:"Runtime keys",id:"runtime-keys",level:4},{value:"Encryption keys",id:"encryption-keys",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"calimero-decentralized-identity",children:"Calimero Decentralized Identity"}),"\n",(0,i.jsx)(n.p,{children:"Calimero\u2019s decentralized identity framework is designed to provide secure,\nanonymous, and decentralized control across the network. It leverages multiple\ntypes of cryptographic keys to manage identities and ensure the integrity of\noperations within the network."}),"\n",(0,i.jsx)(n.h3,{id:"network-identity",children:"Network identity"}),"\n",(0,i.jsxs)(n.p,{children:["Network identity is defined within the configuration file on each node. This\nidentity is derived from ",(0,i.jsx)(n.a,{href:"#network-keys",children:"network keys"}),", which generate a unique\n",(0,i.jsx)(n.code,{children:"Peer ID"})," for each node, allowing peers to identify themselves to other peers in\nthe network."]}),"\n",(0,i.jsx)(n.h4,{id:"network-keys",children:"Network Keys"}),"\n",(0,i.jsxs)(n.p,{children:["Network keys are used to authenticate nodes within the network, with each node\nhaving a unique private-public key pair that it uses to verify its identity to\nother nodes. During connection setup, nodes exchange public keys to ensure they\nare communicating with the intended parties. More in\n",(0,i.jsx)(n.a,{href:"./node/network#identify",children:"Learn - Network"})]}),"\n",(0,i.jsx)(n.h3,{id:"context-identity",children:"Context identity"}),"\n",(0,i.jsxs)(n.p,{children:["Context identity allows users to identify themselves within a specific context.\nUsers can have arbitrary number of identities within a specific context which\nremains encapsulated within the context. These identities are linked to\n",(0,i.jsx)(n.a,{href:"#runtime-keys",children:"runtime keys"}),", with each context identity connected to one\nruntime key."]}),"\n",(0,i.jsx)(n.h3,{id:"decentralized-identity-did-document",children:"Decentralized Identity (DID) document"}),"\n",(0,i.jsx)(n.p,{children:"All context-specific identities and node keys are managed through a\nDecentralized Identity (DID) document stored on the node. This document\nincludes:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#root-keys",children:"Root Keys"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#client-keys",children:"Client Keys"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#runtime-keys",children:"Runtime Keys"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"#encryption-keys",children:"Encryption Keys"})}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Calimero's key management utilizes multiple keys for various purposes, ensuring\nsecure, anonymous, and decentralized control across the network. This structure\nunderpins secure and efficient operations within the Calimero Network,\nfacilitating both node and application functionalities."}),"\n",(0,i.jsx)(n.h4,{id:"root-keys",children:"Root keys"}),"\n",(0,i.jsx)(n.p,{children:"Root keys provide full access for node operations, including managing root keys,\nlisting identifiers, and generating new client keys. Web3 wallets can be used as\nfundamental for root keys, simplifying the setup process."}),"\n",(0,i.jsx)(n.h4,{id:"client-keys",children:"Client keys"}),"\n",(0,i.jsx)(n.p,{children:"Client keys are generated on login and used by the frontend. Stored in browser\nlocal storage, these keys initiate applications and server as permissioned\naccess to the node."}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Client Key Usage"}),":"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Key Creation"}),": Users generate a new keypair in their browser."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Verification"}),":","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"A Verifiable Presentation Request is sent to the node, which responds with\na challenge."}),"\n",(0,i.jsx)(n.li,{children:"The challenge and public key are signed using the root key."}),"\n",(0,i.jsx)(n.li,{children:"Upon node verification of the request and signature, the new key is cleared\nfor JSONRPC API communication from the browser to the node."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Calimero's TypeScript SDK supports developers in building browser and CLI\napplications by simplifying interaction with the network."}),"\n",(0,i.jsx)(n.h4,{id:"runtime-keys",children:"Runtime keys"}),"\n",(0,i.jsx)(n.p,{children:"Runtime keys are used for signing transactions within a context, with the\nappropriate key selected based on the context identity."}),"\n",(0,i.jsx)(n.h4,{id:"encryption-keys",children:"Encryption keys"}),"\n",(0,i.jsxs)(n.p,{children:["Keys used for encrypting and decrypting messages between peers in the context.\nEach context has its own encryption key. More in\n",(0,i.jsx)(n.a,{href:"./../advanced-concepts/encryption",children:"Learn - Encryption"})]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>d});var i=t(758);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/c022fa4c.830e251e.js b/assets/js/c022fa4c.0e710a8d.js similarity index 94% rename from assets/js/c022fa4c.830e251e.js rename to assets/js/c022fa4c.0e710a8d.js index fad21723..c4df7424 100644 --- a/assets/js/c022fa4c.830e251e.js +++ b/assets/js/c022fa4c.0e710a8d.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7074],{7702:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>r,default:()=>d,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var o=t(6070),i=t(5710);const a={id:"blockchain",title:"Blockchain"},r=void 0,c={id:"explore/why-not/blockchain",title:"Blockchain",description:"Why not Blockchain?",source:"@site/docs/01-explore/04-why-not/01-blockchain.mdx",sourceDirName:"01-explore/04-why-not",slug:"/explore/why-not/blockchain",permalink:"/explore/why-not/blockchain",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"blockchain",title:"Blockchain"},sidebar:"tutorialSidebar",previous:{title:"The Data Sovereignty Manifesto",permalink:"/explore/manifesto"},next:{title:"IPFS",permalink:"/explore/why-not/ipfs"}},s={},l=[{value:"Why not Blockchain?",id:"why-not-blockchain",level:2},{value:"Calimero vs Blockchain",id:"calimero-vs-blockchain",level:2}];function h(e){const n={h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h2,{id:"why-not-blockchain",children:"Why not Blockchain?"}),"\n",(0,o.jsx)(n.p,{children:"By virtue of blockchain principles, there's a couple of issues that arise. The\nmajor one being that everyone has to agree on the state of the canonical chain,\nand therefore there can be only one network actor at any given time. Different\nchains implement different strategies for electing this actor to alleviate the\nrisk of compromise, but the fundamental issue remains, and hence, the\nlong-standing problem of scalability."}),"\n",(0,o.jsx)(n.h2,{id:"calimero-vs-blockchain",children:"Calimero vs Blockchain"}),"\n",(0,o.jsx)(n.p,{children:"Calimero fundamentally rethinks the problem and offers an alternative approach,\nlocal-first execution with eventual consistency. This means that each actor can\nindependently drive their own local state, and the network will eventually\nreconcile to the same state. Essentially pegging the scalability threshold to\nthe number of actors in the network, and executions are practically\ninstantaneous."}),"\n",(0,o.jsx)(n.p,{children:"State reconciliation is context-aware, meaning that all activity revolves around\nan instance of an app. This means that participants of a context only have to\nsynchronize with each other, and not the entire network. This is in stark\ncontrast to blockchains, where everyone is forced to synchronize with everyone\nelse and this competition is reflected in gas fees. Calimero doesn't have gas\nfees, and the cost of execution is directly borne by the actor."}),"\n",(0,o.jsx)(n.p,{children:"Blockchains achieve integrity through transparency, which is a double-edged\nsword, essentially precluding you from using it in private environments.\nCalimero however, leverages the direct-actor relationship to encrypt all network\ntraffic between them, and therefore, the network is inherently private."}),"\n",(0,o.jsx)(n.p,{children:"Calimero is also designed to be embeddable, meaning that client apps themselves\nbecome the network actors, and the network is the app itself. This is in stark\ncontrast to blockchains, where the network is a separate entity from the client\napps."})]})}function d(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(h,{...e})}):h(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>c});var o=t(758);const i={},a=o.createContext(i);function r(e){const n=o.useContext(a);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),o.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[7074],{7702:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>r,default:()=>d,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var o=t(6070),i=t(8355);const a={id:"blockchain",title:"Blockchain"},r=void 0,c={id:"explore/why-not/blockchain",title:"Blockchain",description:"Why not Blockchain?",source:"@site/docs/01-explore/04-why-not/01-blockchain.mdx",sourceDirName:"01-explore/04-why-not",slug:"/explore/why-not/blockchain",permalink:"/explore/why-not/blockchain",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"blockchain",title:"Blockchain"},sidebar:"tutorialSidebar",previous:{title:"The Data Sovereignty Manifesto",permalink:"/explore/manifesto"},next:{title:"IPFS",permalink:"/explore/why-not/ipfs"}},s={},l=[{value:"Why not Blockchain?",id:"why-not-blockchain",level:2},{value:"Calimero vs Blockchain",id:"calimero-vs-blockchain",level:2}];function h(e){const n={h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h2,{id:"why-not-blockchain",children:"Why not Blockchain?"}),"\n",(0,o.jsx)(n.p,{children:"By virtue of blockchain principles, there's a couple of issues that arise. The\nmajor one being that everyone has to agree on the state of the canonical chain,\nand therefore there can be only one network actor at any given time. Different\nchains implement different strategies for electing this actor to alleviate the\nrisk of compromise, but the fundamental issue remains, and hence, the\nlong-standing problem of scalability."}),"\n",(0,o.jsx)(n.h2,{id:"calimero-vs-blockchain",children:"Calimero vs Blockchain"}),"\n",(0,o.jsx)(n.p,{children:"Calimero fundamentally rethinks the problem and offers an alternative approach,\nlocal-first execution with eventual consistency. This means that each actor can\nindependently drive their own local state, and the network will eventually\nreconcile to the same state. Essentially pegging the scalability threshold to\nthe number of actors in the network, and executions are practically\ninstantaneous."}),"\n",(0,o.jsx)(n.p,{children:"State reconciliation is context-aware, meaning that all activity revolves around\nan instance of an app. This means that participants of a context only have to\nsynchronize with each other, and not the entire network. This is in stark\ncontrast to blockchains, where everyone is forced to synchronize with everyone\nelse and this competition is reflected in gas fees. Calimero doesn't have gas\nfees, and the cost of execution is directly borne by the actor."}),"\n",(0,o.jsx)(n.p,{children:"Blockchains achieve integrity through transparency, which is a double-edged\nsword, essentially precluding you from using it in private environments.\nCalimero however, leverages the direct-actor relationship to encrypt all network\ntraffic between them, and therefore, the network is inherently private."}),"\n",(0,o.jsx)(n.p,{children:"Calimero is also designed to be embeddable, meaning that client apps themselves\nbecome the network actors, and the network is the app itself. This is in stark\ncontrast to blockchains, where the network is a separate entity from the client\napps."})]})}function d(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(h,{...e})}):h(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>c});var o=t(758);const i={},a=o.createContext(i);function r(e){const n=o.useContext(a);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),o.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/cc56a0d6.505fed7d.js b/assets/js/cc56a0d6.765a52f0.js similarity index 95% rename from assets/js/cc56a0d6.505fed7d.js rename to assets/js/cc56a0d6.765a52f0.js index 101febf7..9845fcb4 100644 --- a/assets/js/cc56a0d6.505fed7d.js +++ b/assets/js/cc56a0d6.765a52f0.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3021],{4434:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>i,default:()=>l,frontMatter:()=>s,metadata:()=>a,toc:()=>d});var o=t(6070),r=t(5710);const s={id:"community-and-support",title:"Community and Support"},i="Community and Support",a={id:"resources/community-and-support",title:"Community and Support",description:"We value our community and are here to support you. Here are the best ways to",source:"@site/docs/06-resources/01-community-and-support.mdx",sourceDirName:"06-resources",slug:"/resources/community-and-support",permalink:"/resources/community-and-support",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:1,frontMatter:{id:"community-and-support",title:"Community and Support"},sidebar:"tutorialSidebar",previous:{title:"Bounty Program",permalink:"/contribute/bounty-program"},next:{title:"Learning",permalink:"/resources/learning"}},u={},d=[{value:"GitHub",id:"github",level:2},{value:"Discord",id:"discord",level:2},{value:"Social Media",id:"social-media",level:2}];function c(e){const n={a:"a",h1:"h1",h2:"h2",header:"header",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.header,{children:(0,o.jsx)(n.h1,{id:"community-and-support",children:"Community and Support"})}),"\n",(0,o.jsx)(n.p,{children:"We value our community and are here to support you. Here are the best ways to\nget in touch and find help:"}),"\n",(0,o.jsx)(n.h2,{id:"github",children:"GitHub"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Issues:"})," For development-related queries, bug reports, and feature\nrequests, please use our\n",(0,o.jsx)(n.a,{href:"https://github.com/calimero-network/core/issues",children:"GitHub Issues"}),"."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Discussions:"})," For more extensive discussions on various topics, join our\n",(0,o.jsx)(n.a,{href:"https://github.com/orgs/calimero-network/discussions",children:"GitHub Discussions"}),"."]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"discord",children:"Discord"}),"\n",(0,o.jsxs)(n.p,{children:["For news, casual conversations, and random questions, join our\n",(0,o.jsx)(n.a,{href:"https://discord.gg/jxAeJd2E",children:"Discord Server"}),". It\u2019s a great place to connect\nwith other contributors, share ideas, and stay informed about the latest\nupdates."]}),"\n",(0,o.jsx)(n.h2,{id:"social-media",children:"Social Media"}),"\n",(0,o.jsx)(n.p,{children:"Stay connected and get the latest news and updates by following us on social\nmedia:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"LinkedIn:"})," Follow us on\n",(0,o.jsx)(n.a,{href:"https://www.linkedin.com/company/calimero-network/",children:"LinkedIn"})," for\nprofessional updates and networking opportunities."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Twitter:"})," Stay up-to-date with our latest tweets by following us on\n",(0,o.jsx)(n.a,{href:"https://twitter.com/CalimeroNetwork",children:"Twitter"}),"."]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"Thank you for being a part of the Calimero community. Your contributions and\nengagement help us grow and improve!"})]})}function l(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>a});var o=t(758);const r={},s=o.createContext(r);function i(e){const n=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),o.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[3021],{4434:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>i,default:()=>l,frontMatter:()=>s,metadata:()=>a,toc:()=>d});var o=t(6070),r=t(8355);const s={id:"community-and-support",title:"Community and Support"},i="Community and Support",a={id:"resources/community-and-support",title:"Community and Support",description:"We value our community and are here to support you. Here are the best ways to",source:"@site/docs/06-resources/01-community-and-support.mdx",sourceDirName:"06-resources",slug:"/resources/community-and-support",permalink:"/resources/community-and-support",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:1,frontMatter:{id:"community-and-support",title:"Community and Support"},sidebar:"tutorialSidebar",previous:{title:"Bounty Program",permalink:"/contribute/bounty-program"},next:{title:"Learning",permalink:"/resources/learning"}},u={},d=[{value:"GitHub",id:"github",level:2},{value:"Discord",id:"discord",level:2},{value:"Social Media",id:"social-media",level:2}];function c(e){const n={a:"a",h1:"h1",h2:"h2",header:"header",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.header,{children:(0,o.jsx)(n.h1,{id:"community-and-support",children:"Community and Support"})}),"\n",(0,o.jsx)(n.p,{children:"We value our community and are here to support you. Here are the best ways to\nget in touch and find help:"}),"\n",(0,o.jsx)(n.h2,{id:"github",children:"GitHub"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Issues:"})," For development-related queries, bug reports, and feature\nrequests, please use our\n",(0,o.jsx)(n.a,{href:"https://github.com/calimero-network/core/issues",children:"GitHub Issues"}),"."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Discussions:"})," For more extensive discussions on various topics, join our\n",(0,o.jsx)(n.a,{href:"https://github.com/orgs/calimero-network/discussions",children:"GitHub Discussions"}),"."]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"discord",children:"Discord"}),"\n",(0,o.jsxs)(n.p,{children:["For news, casual conversations, and random questions, join our\n",(0,o.jsx)(n.a,{href:"https://discord.gg/jxAeJd2E",children:"Discord Server"}),". It\u2019s a great place to connect\nwith other contributors, share ideas, and stay informed about the latest\nupdates."]}),"\n",(0,o.jsx)(n.h2,{id:"social-media",children:"Social Media"}),"\n",(0,o.jsx)(n.p,{children:"Stay connected and get the latest news and updates by following us on social\nmedia:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"LinkedIn:"})," Follow us on\n",(0,o.jsx)(n.a,{href:"https://www.linkedin.com/company/calimero-network/",children:"LinkedIn"})," for\nprofessional updates and networking opportunities."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Twitter:"})," Stay up-to-date with our latest tweets by following us on\n",(0,o.jsx)(n.a,{href:"https://twitter.com/CalimeroNetwork",children:"Twitter"}),"."]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"Thank you for being a part of the Calimero community. Your contributions and\nengagement help us grow and improve!"})]})}function l(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>a});var o=t(758);const r={},s=o.createContext(r);function i(e){const n=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),o.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d94758ba.4ed85883.js b/assets/js/d94758ba.9c09c20d.js similarity index 91% rename from assets/js/d94758ba.4ed85883.js rename to assets/js/d94758ba.9c09c20d.js index ef2c88a3..45045ec8 100644 --- a/assets/js/d94758ba.4ed85883.js +++ b/assets/js/d94758ba.9c09c20d.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[21],{3630:(e,t,s)=>{s.r(t),s.d(t,{assets:()=>r,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>c,toc:()=>l});var a=s(6070),n=s(5710);const o={id:"decentralized-social-platforms",title:"Decentralized Social Platforms"},i=void 0,c={id:"explore/use-cases/decentralized-social-platforms",title:"Decentralized Social Platforms",description:"Build social experiences which need scalable but private data like social",source:"@site/docs/01-explore/05-use-cases/02-decentralized-social-platforms.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-social-platforms",permalink:"/explore/use-cases/decentralized-social-platforms",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"decentralized-social-platforms",title:"Decentralized Social Platforms"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Voting Systems",permalink:"/explore/use-cases/decentralized-voting-systems"},next:{title:"Decentralized Productivity (DeProd) SaaS",permalink:"/explore/use-cases/deprod"}},r={},l=[];function d(e){const t={p:"p",...(0,n.R)(),...e.components};return(0,a.jsx)(t.p,{children:"Build social experiences which need scalable but private data like social\ngroups, direct messages and others, while eliminating high transaction costs\n(gas fees associated with blockchains). This can include exclusive groups and\ngated communities based on ownership of NFTs or token payments which would allow\nparticipation and decryption of the community data content."})}function p(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}},5710:(e,t,s)=>{s.d(t,{R:()=>i,x:()=>c});var a=s(758);const n={},o=a.createContext(n);function i(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:i(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[21],{3630:(e,t,s)=>{s.r(t),s.d(t,{assets:()=>r,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>c,toc:()=>l});var a=s(6070),n=s(8355);const o={id:"decentralized-social-platforms",title:"Decentralized Social Platforms"},i=void 0,c={id:"explore/use-cases/decentralized-social-platforms",title:"Decentralized Social Platforms",description:"Build social experiences which need scalable but private data like social",source:"@site/docs/01-explore/05-use-cases/02-decentralized-social-platforms.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-social-platforms",permalink:"/explore/use-cases/decentralized-social-platforms",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"decentralized-social-platforms",title:"Decentralized Social Platforms"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Voting Systems",permalink:"/explore/use-cases/decentralized-voting-systems"},next:{title:"Decentralized Productivity (DeProd) SaaS",permalink:"/explore/use-cases/deprod"}},r={},l=[];function d(e){const t={p:"p",...(0,n.R)(),...e.components};return(0,a.jsx)(t.p,{children:"Build social experiences which need scalable but private data like social\ngroups, direct messages and others, while eliminating high transaction costs\n(gas fees associated with blockchains). This can include exclusive groups and\ngated communities based on ownership of NFTs or token payments which would allow\nparticipation and decryption of the community data content."})}function p(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}},8355:(e,t,s)=>{s.d(t,{R:()=>i,x:()=>c});var a=s(758);const n={},o=a.createContext(n);function i(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:i(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e6fe25da.29298f64.js b/assets/js/e6fe25da.282eaeb8.js similarity index 95% rename from assets/js/e6fe25da.29298f64.js rename to assets/js/e6fe25da.282eaeb8.js index 2d6f147e..81cc8a83 100644 --- a/assets/js/e6fe25da.29298f64.js +++ b/assets/js/e6fe25da.282eaeb8.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9667],{1777:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var r=t(6070),i=t(5710);const o={id:"server",title:"Server"},s=void 0,a={id:"learn/core-concepts/node/server",title:"Server",description:"The server is a core component for interacting with a Calimero node. Calimero",source:"@site/docs/02-learn/03-core-concepts/02-node/03-server.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/server",permalink:"/learn/core-concepts/node/server",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"server",title:"Server"},sidebar:"tutorialSidebar",previous:{title:"Runtime",permalink:"/learn/core-concepts/node/runtime"},next:{title:"Storage",permalink:"/learn/core-concepts/node/storage"}},c={},l=[{value:"Core Capabilities",id:"core-capabilities",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.p,{children:"The server is a core component for interacting with a Calimero node. Calimero\ncan be embedded with your client to make it a self-contained node, or it can run\nas a remote node that multiple clients can connect to, allowing centralized\nstate management."}),"\n",(0,r.jsx)(n.h3,{id:"core-capabilities",children:"Core Capabilities"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"JSON-RPC API"}),": Provides a standardized way for clients to query or mutate\nthe state of their counterpart applications on the node, ensuring seamless\nintegration and communication."]}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"WebSocket Interface"}),": Allows clients to subscribe to events emitted from\napplications, enabling real-time reactions to activity triggered by other\npeers in the network."]}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"Admin API"}),": Manages various aspects of the node, including:"]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Context Administration"}),": Create, delete, invite others to contexts, and\naccept invitations."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Storage Management"}),": Track usage, view raw state storage for each\ncontext, and view encrypted blobs."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"State Management"}),": Manually garbage collect state-transitional\ntransactions."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Network Management"}),": Manually connect to peers and manage blocklists."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Application Management"}),": Manage installed applications, create contexts\nfrom applications, delete applications if no contexts are associated, and\nmanually sideload applications."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Peer Identity Management"}),": Rotate peer identities without affecting\ncontext identities."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Node Metrics"}),": Track network bandwidth usage, both total and by context,\nto manage resource usage effectively."]}),"\n"]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>a});var r=t(758);const i={},o=r.createContext(i);function s(e){const n=r.useContext(o);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),r.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[9667],{1777:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var r=t(6070),i=t(8355);const o={id:"server",title:"Server"},s=void 0,a={id:"learn/core-concepts/node/server",title:"Server",description:"The server is a core component for interacting with a Calimero node. Calimero",source:"@site/docs/02-learn/03-core-concepts/02-node/03-server.mdx",sourceDirName:"02-learn/03-core-concepts/02-node",slug:"/learn/core-concepts/node/server",permalink:"/learn/core-concepts/node/server",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"server",title:"Server"},sidebar:"tutorialSidebar",previous:{title:"Runtime",permalink:"/learn/core-concepts/node/runtime"},next:{title:"Storage",permalink:"/learn/core-concepts/node/storage"}},c={},l=[{value:"Core Capabilities",id:"core-capabilities",level:3}];function d(e){const n={h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.p,{children:"The server is a core component for interacting with a Calimero node. Calimero\ncan be embedded with your client to make it a self-contained node, or it can run\nas a remote node that multiple clients can connect to, allowing centralized\nstate management."}),"\n",(0,r.jsx)(n.h3,{id:"core-capabilities",children:"Core Capabilities"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"JSON-RPC API"}),": Provides a standardized way for clients to query or mutate\nthe state of their counterpart applications on the node, ensuring seamless\nintegration and communication."]}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"WebSocket Interface"}),": Allows clients to subscribe to events emitted from\napplications, enabling real-time reactions to activity triggered by other\npeers in the network."]}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"Admin API"}),": Manages various aspects of the node, including:"]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Context Administration"}),": Create, delete, invite others to contexts, and\naccept invitations."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Storage Management"}),": Track usage, view raw state storage for each\ncontext, and view encrypted blobs."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"State Management"}),": Manually garbage collect state-transitional\ntransactions."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Network Management"}),": Manually connect to peers and manage blocklists."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Application Management"}),": Manage installed applications, create contexts\nfrom applications, delete applications if no contexts are associated, and\nmanually sideload applications."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Peer Identity Management"}),": Rotate peer identities without affecting\ncontext identities."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.strong,{children:"Node Metrics"}),": Track network bandwidth usage, both total and by context,\nto manage resource usage effectively."]}),"\n"]}),"\n"]}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>a});var r=t(758);const i={},o=r.createContext(i);function s(e){const n=r.useContext(o);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),r.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e97a01d9.96d12ab1.js b/assets/js/e97a01d9.293f2b1f.js similarity index 92% rename from assets/js/e97a01d9.96d12ab1.js rename to assets/js/e97a01d9.293f2b1f.js index f81f55ee..59292319 100644 --- a/assets/js/e97a01d9.96d12ab1.js +++ b/assets/js/e97a01d9.293f2b1f.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[449],{3280:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>l,contentTitle:()=>i,default:()=>d,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var t=r(6070),o=r(5710);const s={id:"learning",title:"Learning"},i="Learning",a={id:"resources/learning",title:"Learning",description:"Expand your knowledge and stay informed by exploring the following resources:",source:"@site/docs/06-resources/02-learning.mdx",sourceDirName:"06-resources",slug:"/resources/learning",permalink:"/resources/learning",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"learning",title:"Learning"},sidebar:"tutorialSidebar",previous:{title:"Community and Support",permalink:"/resources/community-and-support"}},l={},c=[{value:"Learn More",id:"learn-more",level:2}];function u(e){const n={a:"a",h1:"h1",h2:"h2",header:"header",li:"li",p:"p",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.header,{children:(0,t.jsx)(n.h1,{id:"learning",children:"Learning"})}),"\n",(0,t.jsx)(n.p,{children:"Expand your knowledge and stay informed by exploring the following resources:"}),"\n",(0,t.jsx)(n.h2,{id:"learn-more",children:"Learn More"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Website:"})," Visit our ",(0,t.jsx)(n.a,{href:"https://www.calimero.network/",children:"website"})," for\ncomprehensive information about the project, including features and\ndocumentation."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Blog:"})," Check out our ",(0,t.jsx)(n.a,{href:"https://www.calimero.network/blogs",children:"blog"})," for\ninsightful articles, tutorials, and the latest news about our project."]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:"We provide a variety of resources to help you learn more about our project and\nstay up-to-date with the latest developments. Dive into our documentation, read\nour blog, and explore our website to get the most out of our project."})]})}function d(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(u,{...e})}):u(e)}},5710:(e,n,r)=>{r.d(n,{R:()=>i,x:()=>a});var t=r(758);const o={},s=t.createContext(o);function i(e){const n=t.useContext(s);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),t.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[449],{3280:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>l,contentTitle:()=>i,default:()=>d,frontMatter:()=>s,metadata:()=>a,toc:()=>c});var t=r(6070),o=r(8355);const s={id:"learning",title:"Learning"},i="Learning",a={id:"resources/learning",title:"Learning",description:"Expand your knowledge and stay informed by exploring the following resources:",source:"@site/docs/06-resources/02-learning.mdx",sourceDirName:"06-resources",slug:"/resources/learning",permalink:"/resources/learning",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"learning",title:"Learning"},sidebar:"tutorialSidebar",previous:{title:"Community and Support",permalink:"/resources/community-and-support"}},l={},c=[{value:"Learn More",id:"learn-more",level:2}];function u(e){const n={a:"a",h1:"h1",h2:"h2",header:"header",li:"li",p:"p",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.header,{children:(0,t.jsx)(n.h1,{id:"learning",children:"Learning"})}),"\n",(0,t.jsx)(n.p,{children:"Expand your knowledge and stay informed by exploring the following resources:"}),"\n",(0,t.jsx)(n.h2,{id:"learn-more",children:"Learn More"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Website:"})," Visit our ",(0,t.jsx)(n.a,{href:"https://www.calimero.network/",children:"website"})," for\ncomprehensive information about the project, including features and\ndocumentation."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Blog:"})," Check out our ",(0,t.jsx)(n.a,{href:"https://www.calimero.network/blogs",children:"blog"})," for\ninsightful articles, tutorials, and the latest news about our project."]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:"We provide a variety of resources to help you learn more about our project and\nstay up-to-date with the latest developments. Dive into our documentation, read\nour blog, and explore our website to get the most out of our project."})]})}function d(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(u,{...e})}):u(e)}},8355:(e,n,r)=>{r.d(n,{R:()=>i,x:()=>a});var t=r(758);const o={},s=t.createContext(o);function i(e){const n=t.useContext(s);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),t.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f1cd7b65.f49663b9.js b/assets/js/f1cd7b65.e69bb676.js similarity index 91% rename from assets/js/f1cd7b65.f49663b9.js rename to assets/js/f1cd7b65.e69bb676.js index 0701deb9..bd080d4e 100644 --- a/assets/js/f1cd7b65.f49663b9.js +++ b/assets/js/f1cd7b65.e69bb676.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[4389],{1937:(e,i,t)=>{t.r(i),t.d(i,{assets:()=>o,contentTitle:()=>s,default:()=>d,frontMatter:()=>p,metadata:()=>l,toc:()=>r});var n=t(6070),a=t(5710);const p={id:"publish-app",title:"Publish App"},s=void 0,l={id:"build/publish-app",title:"Publish App",description:"After you have built your application, you can publish it to the network. This",source:"@site/docs/04-build/03-publish-app.mdx",sourceDirName:"04-build",slug:"/build/publish-app",permalink:"/build/publish-app",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:3,frontMatter:{id:"publish-app",title:"Publish App"},sidebar:"tutorialSidebar",previous:{title:"TypeScript Client SDK",permalink:"/build/client-sdks/client-ts-sdk"},next:{title:"Dev Mode",permalink:"/build/dev-mode"}},o={},r=[{value:"Publishing application",id:"publishing-application",level:2},{value:"Application preview",id:"application-preview",level:2},{value:"Example app preview",id:"example-app-preview",level:2}];function c(e){const i={a:"a",code:"code",h2:"h2",img:"img",p:"p",...(0,a.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.p,{children:"After you have built your application, you can publish it to the network. This\nwill make it available for users to interact with."}),"\n",(0,n.jsx)(i.h2,{id:"publishing-application",children:"Publishing application"}),"\n",(0,n.jsxs)(i.p,{children:["Navigate to ",(0,n.jsx)(i.a,{href:"../getting-started/admin-dashboard",children:"Admin Dashboard"})," and select\n",(0,n.jsx)(i.code,{children:"Applications"})," tab."]}),"\n",(0,n.jsx)(i.p,{children:(0,n.jsx)(i.img,{alt:"Publish application",src:t(1049).A+"",width:"1968",height:"1562"})}),"\n",(0,n.jsx)(i.p,{children:"Enter the required data and publish the application. After publishing, your\napplication will be available for users to interact with in new contexts."}),"\n",(0,n.jsx)(i.h2,{id:"application-preview",children:"Application preview"}),"\n",(0,n.jsx)(i.p,{children:"Good practice allows users to try an app before they decide to use it. You can\ndeploy an app to any host provider."}),"\n",(0,n.jsxs)(i.p,{children:["We have used GitHub Pages to preview our\n",(0,n.jsx)(i.a,{href:"../getting-started/example-app",children:"example app"}),". You can do the same by following\nthe steps below."]}),"\n",(0,n.jsx)(i.h2,{id:"example-app-preview",children:"Example app preview"}),"\n",(0,n.jsxs)(i.p,{children:["First you need to enable GitHub Pages by following\n",(0,n.jsx)(i.a,{href:"https://docs.github.com/en/pages/getting-started-with-github-pages/creating-a-github-pages-site",children:"Creating a GitHub Pages"})]}),"\n",(0,n.jsxs)(i.p,{children:["Our example app is written in next.js and code is available in\n",(0,n.jsx)(i.a,{href:"https://github.com/calimero-network/only-peers-client",children:"only-peers-client"})," After\nenabling GitHub Pages, a few changes are required in your next.js app.\n",(0,n.jsx)(i.code,{children:"next.config.mjs"}),' should contain output: "export" field']}),"\n",(0,n.jsxs)(i.p,{children:["GitHub Actions is a platform used to automate the deployment process. You can\nfind example in\n",(0,n.jsx)(i.a,{href:"https://github.com/calimero-network/only-peers-client/tree/master/.github/workflows",children:"github workflow"})]})]})}function d(e={}){const{wrapper:i}={...(0,a.R)(),...e.components};return i?(0,n.jsx)(i,{...e,children:(0,n.jsx)(c,{...e})}):c(e)}},1049:(e,i,t)=>{t.d(i,{A:()=>n});const n=t.p+"assets/images/publish-new-application-f4493f9baa5b1dc59d62ab483b52bb65.png"},5710:(e,i,t)=>{t.d(i,{R:()=>s,x:()=>l});var n=t(758);const a={},p=n.createContext(a);function s(e){const i=n.useContext(p);return n.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function l(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:s(e.components),n.createElement(p.Provider,{value:i},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[4389],{1937:(e,i,t)=>{t.r(i),t.d(i,{assets:()=>o,contentTitle:()=>s,default:()=>d,frontMatter:()=>p,metadata:()=>l,toc:()=>r});var n=t(6070),a=t(8355);const p={id:"publish-app",title:"Publish App"},s=void 0,l={id:"build/publish-app",title:"Publish App",description:"After you have built your application, you can publish it to the network. This",source:"@site/docs/04-build/03-publish-app.mdx",sourceDirName:"04-build",slug:"/build/publish-app",permalink:"/build/publish-app",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:3,frontMatter:{id:"publish-app",title:"Publish App"},sidebar:"tutorialSidebar",previous:{title:"TypeScript Client SDK",permalink:"/build/client-sdks/client-ts-sdk"},next:{title:"Dev Mode",permalink:"/build/dev-mode"}},o={},r=[{value:"Publishing application",id:"publishing-application",level:2},{value:"Application preview",id:"application-preview",level:2},{value:"Example app preview",id:"example-app-preview",level:2}];function c(e){const i={a:"a",code:"code",h2:"h2",img:"img",p:"p",...(0,a.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.p,{children:"After you have built your application, you can publish it to the network. This\nwill make it available for users to interact with."}),"\n",(0,n.jsx)(i.h2,{id:"publishing-application",children:"Publishing application"}),"\n",(0,n.jsxs)(i.p,{children:["Navigate to ",(0,n.jsx)(i.a,{href:"../getting-started/admin-dashboard",children:"Admin Dashboard"})," and select\n",(0,n.jsx)(i.code,{children:"Applications"})," tab."]}),"\n",(0,n.jsx)(i.p,{children:(0,n.jsx)(i.img,{alt:"Publish application",src:t(2247).A+"",width:"1968",height:"1562"})}),"\n",(0,n.jsx)(i.p,{children:"Enter the required data and publish the application. After publishing, your\napplication will be available for users to interact with in new contexts."}),"\n",(0,n.jsx)(i.h2,{id:"application-preview",children:"Application preview"}),"\n",(0,n.jsx)(i.p,{children:"Good practice allows users to try an app before they decide to use it. You can\ndeploy an app to any host provider."}),"\n",(0,n.jsxs)(i.p,{children:["We have used GitHub Pages to preview our\n",(0,n.jsx)(i.a,{href:"../getting-started/example-app",children:"example app"}),". You can do the same by following\nthe steps below."]}),"\n",(0,n.jsx)(i.h2,{id:"example-app-preview",children:"Example app preview"}),"\n",(0,n.jsxs)(i.p,{children:["First you need to enable GitHub Pages by following\n",(0,n.jsx)(i.a,{href:"https://docs.github.com/en/pages/getting-started-with-github-pages/creating-a-github-pages-site",children:"Creating a GitHub Pages"})]}),"\n",(0,n.jsxs)(i.p,{children:["Our example app is written in next.js and code is available in\n",(0,n.jsx)(i.a,{href:"https://github.com/calimero-network/only-peers-client",children:"only-peers-client"})," After\nenabling GitHub Pages, a few changes are required in your next.js app.\n",(0,n.jsx)(i.code,{children:"next.config.mjs"}),' should contain output: "export" field']}),"\n",(0,n.jsxs)(i.p,{children:["GitHub Actions is a platform used to automate the deployment process. You can\nfind example in\n",(0,n.jsx)(i.a,{href:"https://github.com/calimero-network/only-peers-client/tree/master/.github/workflows",children:"github workflow"})]})]})}function d(e={}){const{wrapper:i}={...(0,a.R)(),...e.components};return i?(0,n.jsx)(i,{...e,children:(0,n.jsx)(c,{...e})}):c(e)}},2247:(e,i,t)=>{t.d(i,{A:()=>n});const n=t.p+"assets/images/publish-new-application-f4493f9baa5b1dc59d62ab483b52bb65.png"},8355:(e,i,t)=>{t.d(i,{R:()=>s,x:()=>l});var n=t(758);const a={},p=n.createContext(a);function s(e){const i=n.useContext(p);return n.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function l(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:s(e.components),n.createElement(p.Provider,{value:i},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f4e7e388.a586a66d.js b/assets/js/f4e7e388.57eba9b7.js similarity index 91% rename from assets/js/f4e7e388.a586a66d.js rename to assets/js/f4e7e388.57eba9b7.js index 1fe250e9..daf0baab 100644 --- a/assets/js/f4e7e388.a586a66d.js +++ b/assets/js/f4e7e388.57eba9b7.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1249],{1038:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var i=n(6070),r=n(5710);const a={id:"architecture",title:"Architecture"},o=void 0,s={id:"learn/architecture",title:"Architecture",description:"Calimero Network offers a robust framework for developing and running",source:"@site/docs/02-learn/02-architecture.mdx",sourceDirName:"02-learn",slug:"/learn/architecture",permalink:"/learn/architecture",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"architecture",title:"Architecture"},sidebar:"tutorialSidebar",previous:{title:"Terminology",permalink:"/learn/terminology"},next:{title:"Identity",permalink:"/learn/core-concepts/identity"}},c={},l=[{value:"Participate",id:"participate",level:2},{value:"Build",id:"build",level:2}];function d(e){const t={h2:"h2",img:"img",li:"li",p:"p",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.p,{children:"Calimero Network offers a robust framework for developing and running\npeer-to-peer (P2P) applications. Our framework allows users to participate in\nthe network or build applications for others to use."}),"\n",(0,i.jsx)(t.h2,{id:"participate",children:"Participate"}),"\n",(0,i.jsx)(t.p,{children:"Users participate in the network with a client node. By encapsulating the\ncomplexities of operating a client node, we aim to make it easy and intuitive\nfor everyone to engage in the decentralized world."}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:"Client node acts as a gateway that runs applications and connects with other\npeers"}),"\n",(0,i.jsx)(t.li,{children:"Each application is loaded and isolated from other applications into a\nseparate context. This ensures that each application runs independently while\nstill allowing interactions through shared states or messages."}),"\n",(0,i.jsx)(t.li,{children:"Context consolidates all necessary components into a secure, isolated\nenvironment."}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"Some networks may require specialized functionalities, which are provided by a\ndedicated compute market. Users can integrate these special functionalities from\na pool of available specialized nodes."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Calimero Architecture",src:n(4375).A+"",width:"1920",height:"1080"})}),"\n",(0,i.jsx)(t.h2,{id:"build",children:"Build"}),"\n",(0,i.jsx)(t.p,{children:"To develop applications on the Calimero Network, we provide comprehensive SDKs:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:"Protocol SDK to define how the application should behave and communicate with\nthe node."}),"\n",(0,i.jsx)(t.li,{children:"Client SDK to connect to node and use data in user interface and authenticate\nusing wallets UI."}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"Developer applications are shared through application registry where developers\nupload their applications and share it with other users"}),"\n",(0,i.jsx)(t.p,{children:"Explore other sections to learn more about each component, and how they\ncontribute to a seamless decentralized experience."})]})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},4375:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/architecture-88be4e09ef7ca7e8a3bf6b5a69783f03.png"},5710:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>s});var i=n(758);const r={},a=i.createContext(r);function o(e){const t=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[1249],{1038:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var i=n(6070),r=n(8355);const a={id:"architecture",title:"Architecture"},o=void 0,s={id:"learn/architecture",title:"Architecture",description:"Calimero Network offers a robust framework for developing and running",source:"@site/docs/02-learn/02-architecture.mdx",sourceDirName:"02-learn",slug:"/learn/architecture",permalink:"/learn/architecture",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"architecture",title:"Architecture"},sidebar:"tutorialSidebar",previous:{title:"Terminology",permalink:"/learn/terminology"},next:{title:"Identity",permalink:"/learn/core-concepts/identity"}},c={},l=[{value:"Participate",id:"participate",level:2},{value:"Build",id:"build",level:2}];function d(e){const t={h2:"h2",img:"img",li:"li",p:"p",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.p,{children:"Calimero Network offers a robust framework for developing and running\npeer-to-peer (P2P) applications. Our framework allows users to participate in\nthe network or build applications for others to use."}),"\n",(0,i.jsx)(t.h2,{id:"participate",children:"Participate"}),"\n",(0,i.jsx)(t.p,{children:"Users participate in the network with a client node. By encapsulating the\ncomplexities of operating a client node, we aim to make it easy and intuitive\nfor everyone to engage in the decentralized world."}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:"Client node acts as a gateway that runs applications and connects with other\npeers"}),"\n",(0,i.jsx)(t.li,{children:"Each application is loaded and isolated from other applications into a\nseparate context. This ensures that each application runs independently while\nstill allowing interactions through shared states or messages."}),"\n",(0,i.jsx)(t.li,{children:"Context consolidates all necessary components into a secure, isolated\nenvironment."}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"Some networks may require specialized functionalities, which are provided by a\ndedicated compute market. Users can integrate these special functionalities from\na pool of available specialized nodes."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"Calimero Architecture",src:n(2977).A+"",width:"1920",height:"1080"})}),"\n",(0,i.jsx)(t.h2,{id:"build",children:"Build"}),"\n",(0,i.jsx)(t.p,{children:"To develop applications on the Calimero Network, we provide comprehensive SDKs:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:"Protocol SDK to define how the application should behave and communicate with\nthe node."}),"\n",(0,i.jsx)(t.li,{children:"Client SDK to connect to node and use data in user interface and authenticate\nusing wallets UI."}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"Developer applications are shared through application registry where developers\nupload their applications and share it with other users"}),"\n",(0,i.jsx)(t.p,{children:"Explore other sections to learn more about each component, and how they\ncontribute to a seamless decentralized experience."})]})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},2977:(e,t,n)=>{n.d(t,{A:()=>i});const i=n.p+"assets/images/architecture-88be4e09ef7ca7e8a3bf6b5a69783f03.png"},8355:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>s});var i=n(758);const r={},a=i.createContext(r);function o(e){const t=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f582a9aa.0b86c774.js b/assets/js/f582a9aa.e2af6522.js similarity index 96% rename from assets/js/f582a9aa.0b86c774.js rename to assets/js/f582a9aa.e2af6522.js index 4b31afe4..856e3072 100644 --- a/assets/js/f582a9aa.0b86c774.js +++ b/assets/js/f582a9aa.e2af6522.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2226],{4798:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var i=t(6070),s=t(5710);const o={id:"contexts",title:"Contexts"},r=void 0,a={id:"learn/core-concepts/contexts",title:"Contexts",description:"Contexts are the core of the Calimero ecosystem. These are application specific",source:"@site/docs/02-learn/03-core-concepts/04-context.mdx",sourceDirName:"02-learn/03-core-concepts",slug:"/learn/core-concepts/contexts",permalink:"/learn/core-concepts/contexts",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:4,frontMatter:{id:"contexts",title:"Contexts"},sidebar:"tutorialSidebar",previous:{title:"Applications",permalink:"/learn/core-concepts/applications"},next:{title:"Specialized Nodes",permalink:"/learn/advanced-concepts/specialized-nodes"}},c={},l=[{value:"<strong>How Contexts Work:</strong>",id:"how-contexts-work",level:4}];function d(e){const n={h4:"h4",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"Contexts are the core of the Calimero ecosystem. These are application specific\nnetworks designed to enable direct communication between users, eliminating the\nneed for intermediaries. Here's a closer look at how they operate:"}),"\n",(0,i.jsx)(n.h4,{id:"how-contexts-work",children:(0,i.jsx)(n.strong,{children:"How Contexts Work:"})}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Initialization"}),": A user selects a WebAssembly (WASM) module from a\nrepository, which contains the logic and rules for the application. With\nthis, they initiate a new Application Network, creating a unique identity for\nthis specific network and setting the initial parameters and update\nstrategies."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Joining the Network"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Inviting Peers"}),": The initial user can invite others directly or set up\nAccess Control Lists (ACLs) to govern how new members can join the network."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"New Member Process"}),": When a new user joins, they generate a unique\nidentity for the network, download the relevant WASM module, and\nsynchronize with the existing data on the network. This process ensures\nthey're up to speed and ready to engage fully with the network's\nactivities."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Data Interaction"}),": Within the network, users can query and modify data\naccording to the application's rules. Each Application Network autonomously\nmanages data interactions, ensuring consistency and integrity."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Security and Privacy"}),": All communications within an Application Network\nare secured with end-to-end encryption, utilizing the Double Ratchet\nAlgorithm. This ensures that data exchanged between peers remains private and\nsecure."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Offline Capability and Consistency"}),": Calimero's design is 'offline-first,'\naccommodating the reality that peers may not always be online. When a peer\ngoes offline and later returns, they synchronize with the network to update\nand reconcile any changes, maintaining eventual consistency across the\nnetwork's state."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Governance and Updates"}),": Application Networks can be governed by the users\nthemselves, with decisions made through a consensus mechanism. Updates to the\nnetwork, including changes to the WASM module or network parameters, can be\nproposed and voted on by the network's members."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Extending network capabilities"}),": In addition to the core components of\nApplication Networks, Calimero introduces Specialized Nodes to further\nenhance network capabilities. These nodes are designed to perform specific\nfunctions that go beyond the standard operations of client nodes, such as\nheavy data processing, advanced encryption tasks, or providing additional\nstorage solutions. They play a crucial role in scaling the network's\nfunctionality and performance, ensuring that even as demand grows, the\nnetwork remains efficient and responsive. Specialized Nodes can be deployed\nby any participant in the network, including Calimero, third-party\ndevelopers, or users themselves, offering a flexible and decentralized\napproach to augmenting the network's capabilities. By leveraging these nodes,\nApplication Networks can meet the diverse needs of different applications,\nensuring that each network can be customized and optimized for its unique\nrequirements, all while maintaining the overarching principles of privacy,\nsecurity, and decentralization inherent to Calimero."]}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>a});var i=t(758);const s={},o=i.createContext(s);function r(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[2226],{4798:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var i=t(6070),s=t(8355);const o={id:"contexts",title:"Contexts"},r=void 0,a={id:"learn/core-concepts/contexts",title:"Contexts",description:"Contexts are the core of the Calimero ecosystem. These are application specific",source:"@site/docs/02-learn/03-core-concepts/04-context.mdx",sourceDirName:"02-learn/03-core-concepts",slug:"/learn/core-concepts/contexts",permalink:"/learn/core-concepts/contexts",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:4,frontMatter:{id:"contexts",title:"Contexts"},sidebar:"tutorialSidebar",previous:{title:"Applications",permalink:"/learn/core-concepts/applications"},next:{title:"Specialized Nodes",permalink:"/learn/advanced-concepts/specialized-nodes"}},c={},l=[{value:"<strong>How Contexts Work:</strong>",id:"how-contexts-work",level:4}];function d(e){const n={h4:"h4",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"Contexts are the core of the Calimero ecosystem. These are application specific\nnetworks designed to enable direct communication between users, eliminating the\nneed for intermediaries. Here's a closer look at how they operate:"}),"\n",(0,i.jsx)(n.h4,{id:"how-contexts-work",children:(0,i.jsx)(n.strong,{children:"How Contexts Work:"})}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Initialization"}),": A user selects a WebAssembly (WASM) module from a\nrepository, which contains the logic and rules for the application. With\nthis, they initiate a new Application Network, creating a unique identity for\nthis specific network and setting the initial parameters and update\nstrategies."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Joining the Network"}),":"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Inviting Peers"}),": The initial user can invite others directly or set up\nAccess Control Lists (ACLs) to govern how new members can join the network."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"New Member Process"}),": When a new user joins, they generate a unique\nidentity for the network, download the relevant WASM module, and\nsynchronize with the existing data on the network. This process ensures\nthey're up to speed and ready to engage fully with the network's\nactivities."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Data Interaction"}),": Within the network, users can query and modify data\naccording to the application's rules. Each Application Network autonomously\nmanages data interactions, ensuring consistency and integrity."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Security and Privacy"}),": All communications within an Application Network\nare secured with end-to-end encryption, utilizing the Double Ratchet\nAlgorithm. This ensures that data exchanged between peers remains private and\nsecure."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Offline Capability and Consistency"}),": Calimero's design is 'offline-first,'\naccommodating the reality that peers may not always be online. When a peer\ngoes offline and later returns, they synchronize with the network to update\nand reconcile any changes, maintaining eventual consistency across the\nnetwork's state."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Governance and Updates"}),": Application Networks can be governed by the users\nthemselves, with decisions made through a consensus mechanism. Updates to the\nnetwork, including changes to the WASM module or network parameters, can be\nproposed and voted on by the network's members."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Extending network capabilities"}),": In addition to the core components of\nApplication Networks, Calimero introduces Specialized Nodes to further\nenhance network capabilities. These nodes are designed to perform specific\nfunctions that go beyond the standard operations of client nodes, such as\nheavy data processing, advanced encryption tasks, or providing additional\nstorage solutions. They play a crucial role in scaling the network's\nfunctionality and performance, ensuring that even as demand grows, the\nnetwork remains efficient and responsive. Specialized Nodes can be deployed\nby any participant in the network, including Calimero, third-party\ndevelopers, or users themselves, offering a flexible and decentralized\napproach to augmenting the network's capabilities. By leveraging these nodes,\nApplication Networks can meet the diverse needs of different applications,\nensuring that each network can be customized and optimized for its unique\nrequirements, all while maintaining the overarching principles of privacy,\nsecurity, and decentralization inherent to Calimero."]}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>a});var i=t(758);const s={},o=i.createContext(s);function r(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f773e51d.b505bda9.js b/assets/js/f773e51d.47b1858c.js similarity index 95% rename from assets/js/f773e51d.b505bda9.js rename to assets/js/f773e51d.47b1858c.js index f0bc0268..88b4d0f9 100644 --- a/assets/js/f773e51d.b505bda9.js +++ b/assets/js/f773e51d.47b1858c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5293],{6379:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>h,contentTitle:()=>i,default:()=>d,frontMatter:()=>r,metadata:()=>s,toc:()=>c});var o=t(6070),a=t(5710);const r={id:"hackathons",title:"Hackathons"},i="Hackathons",s={id:"contribute/hackathons",title:"Hackathons",description:"At Calimero, we love innovation and collaboration, which is why we plan to",source:"@site/docs/05-contribute/02-hackathons.mdx",sourceDirName:"05-contribute",slug:"/contribute/hackathons",permalink:"/contribute/hackathons",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:2,frontMatter:{id:"hackathons",title:"Hackathons"},sidebar:"tutorialSidebar",previous:{title:"GitHub",permalink:"/contribute/github"},next:{title:"Bounty Program",permalink:"/contribute/bounty-program"}},h={},c=[{value:"What is a Hackathon?",id:"what-is-a-hackathon",level:2},{value:"How to Get Involved",id:"how-to-get-involved",level:2},{value:"Stay Updated",id:"stay-updated",level:3}];function l(e){const n={h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,a.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.header,{children:(0,o.jsx)(n.h1,{id:"hackathons",children:"Hackathons"})}),"\n",(0,o.jsx)(n.p,{children:"At Calimero, we love innovation and collaboration, which is why we plan to\nregularly organize hackathons that include our product. We have exciting events\nplanned for the future. Stay tuned by following us on our social media channels\nto get the latest updates."}),"\n",(0,o.jsx)(n.h2,{id:"what-is-a-hackathon",children:"What is a Hackathon?"}),"\n",(0,o.jsx)(n.p,{children:"A hackathon is an event where developers, designers, and other tech enthusiasts\ncome together to create innovative solutions in a short amount of time.\nParticipants work in teams to build projects, often centered around a specific\ntheme or technology. Hackathons are a great opportunity to:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Learn New Skills:"})," Whether you\u2019re a beginner or an expert, hackathons\nprovide a platform to learn new technologies and tools."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Collaborate:"})," Work with other passionate individuals, share ideas, and\ncollaborate on projects."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Showcase Your Talent:"})," Present your project to a panel of judges and other\nparticipants, winning prizes and recognition."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Network:"})," Meet like-minded individuals, industry experts, and potential\nemployers or collaborators."]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"how-to-get-involved",children:"How to Get Involved"}),"\n",(0,o.jsx)(n.p,{children:"When we announce a new hackathon, here\u2019s how you can participate:"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Register for the Event:"})," Sign up through the event link provided in our\nannouncements."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Form a Team:"})," Join with friends or team up with other participants."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Build Your Project:"})," Use our product and other tools to create something\namazing."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Submit Your Work:"})," Present your project at the end of the hackathon for a\nchance to win prizes and gain recognition."]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"stay-updated",children:"Stay Updated"}),"\n",(0,o.jsx)(n.p,{children:"Follow us on social media to be the first to know about our upcoming hackathons\nand other events. We\u2019ll share all the details, including how to register and\nparticipate."}),"\n",(0,o.jsx)(n.p,{children:"Thank you for your interest in contributing to our project through hackathons.\nWe look forward to seeing your innovative ideas and solutions!"})]})}function d(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(l,{...e})}):l(e)}},5710:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>s});var o=t(758);const a={},r=o.createContext(a);function i(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:i(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[5293],{6379:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>h,contentTitle:()=>i,default:()=>d,frontMatter:()=>r,metadata:()=>s,toc:()=>c});var o=t(6070),a=t(8355);const r={id:"hackathons",title:"Hackathons"},i="Hackathons",s={id:"contribute/hackathons",title:"Hackathons",description:"At Calimero, we love innovation and collaboration, which is why we plan to",source:"@site/docs/05-contribute/02-hackathons.mdx",sourceDirName:"05-contribute",slug:"/contribute/hackathons",permalink:"/contribute/hackathons",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:2,frontMatter:{id:"hackathons",title:"Hackathons"},sidebar:"tutorialSidebar",previous:{title:"GitHub",permalink:"/contribute/github"},next:{title:"Bounty Program",permalink:"/contribute/bounty-program"}},h={},c=[{value:"What is a Hackathon?",id:"what-is-a-hackathon",level:2},{value:"How to Get Involved",id:"how-to-get-involved",level:2},{value:"Stay Updated",id:"stay-updated",level:3}];function l(e){const n={h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,a.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.header,{children:(0,o.jsx)(n.h1,{id:"hackathons",children:"Hackathons"})}),"\n",(0,o.jsx)(n.p,{children:"At Calimero, we love innovation and collaboration, which is why we plan to\nregularly organize hackathons that include our product. We have exciting events\nplanned for the future. Stay tuned by following us on our social media channels\nto get the latest updates."}),"\n",(0,o.jsx)(n.h2,{id:"what-is-a-hackathon",children:"What is a Hackathon?"}),"\n",(0,o.jsx)(n.p,{children:"A hackathon is an event where developers, designers, and other tech enthusiasts\ncome together to create innovative solutions in a short amount of time.\nParticipants work in teams to build projects, often centered around a specific\ntheme or technology. Hackathons are a great opportunity to:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Learn New Skills:"})," Whether you\u2019re a beginner or an expert, hackathons\nprovide a platform to learn new technologies and tools."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Collaborate:"})," Work with other passionate individuals, share ideas, and\ncollaborate on projects."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Showcase Your Talent:"})," Present your project to a panel of judges and other\nparticipants, winning prizes and recognition."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Network:"})," Meet like-minded individuals, industry experts, and potential\nemployers or collaborators."]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"how-to-get-involved",children:"How to Get Involved"}),"\n",(0,o.jsx)(n.p,{children:"When we announce a new hackathon, here\u2019s how you can participate:"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Register for the Event:"})," Sign up through the event link provided in our\nannouncements."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Form a Team:"})," Join with friends or team up with other participants."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Build Your Project:"})," Use our product and other tools to create something\namazing."]}),"\n",(0,o.jsxs)(n.li,{children:[(0,o.jsx)(n.strong,{children:"Submit Your Work:"})," Present your project at the end of the hackathon for a\nchance to win prizes and gain recognition."]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"stay-updated",children:"Stay Updated"}),"\n",(0,o.jsx)(n.p,{children:"Follow us on social media to be the first to know about our upcoming hackathons\nand other events. We\u2019ll share all the details, including how to register and\nparticipate."}),"\n",(0,o.jsx)(n.p,{children:"Thank you for your interest in contributing to our project through hackathons.\nWe look forward to seeing your innovative ideas and solutions!"})]})}function d(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(l,{...e})}):l(e)}},8355:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>s});var o=t(758);const a={},r=o.createContext(a);function i(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:i(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/fdb23cd9.c224928d.js b/assets/js/fdb23cd9.1d7eb473.js similarity index 90% rename from assets/js/fdb23cd9.c224928d.js rename to assets/js/fdb23cd9.1d7eb473.js index ddead49e..e0082140 100644 --- a/assets/js/fdb23cd9.c224928d.js +++ b/assets/js/fdb23cd9.1d7eb473.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[546],{6772:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>a,contentTitle:()=>i,default:()=>u,frontMatter:()=>s,metadata:()=>c,toc:()=>d});var r=n(6070),o=n(5710);const s={id:"decentralized-gig-economy",title:"Decentralized Gig Economy"},i=void 0,c={id:"explore/use-cases/decentralized-gig-economy",title:"Decentralized Gig Economy",description:"Disrupt the current gig economy players and compose a fully decentralized ride",source:"@site/docs/01-explore/05-use-cases/04-decentralized-gig-economy.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-gig-economy",permalink:"/explore/use-cases/decentralized-gig-economy",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724170219e3,sidebarPosition:4,frontMatter:{id:"decentralized-gig-economy",title:"Decentralized Gig Economy"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Productivity (DeProd) SaaS",permalink:"/explore/use-cases/deprod"},next:{title:"Trustless Gaming",permalink:"/explore/use-cases/trustless-gaming"}},a={},d=[];function l(e){const t={p:"p",...(0,o.R)(),...e.components};return(0,r.jsx)(t.p,{children:"Disrupt the current gig economy players and compose a fully decentralized ride\nsharing, freelancing, temporary work, mechanical turk platform, or any other\nshared economy model where each network participant gets their fair share of the\nprofits."})}function u(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},5710:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>c});var r=n(758);const o={},s=r.createContext(o);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[546],{6772:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>a,contentTitle:()=>i,default:()=>u,frontMatter:()=>s,metadata:()=>c,toc:()=>d});var r=n(6070),o=n(8355);const s={id:"decentralized-gig-economy",title:"Decentralized Gig Economy"},i=void 0,c={id:"explore/use-cases/decentralized-gig-economy",title:"Decentralized Gig Economy",description:"Disrupt the current gig economy players and compose a fully decentralized ride",source:"@site/docs/01-explore/05-use-cases/04-decentralized-gig-economy.mdx",sourceDirName:"01-explore/05-use-cases",slug:"/explore/use-cases/decentralized-gig-economy",permalink:"/explore/use-cases/decentralized-gig-economy",draft:!1,unlisted:!1,tags:[],version:"current",lastUpdatedAt:1724334885e3,sidebarPosition:4,frontMatter:{id:"decentralized-gig-economy",title:"Decentralized Gig Economy"},sidebar:"tutorialSidebar",previous:{title:"Decentralized Productivity (DeProd) SaaS",permalink:"/explore/use-cases/deprod"},next:{title:"Trustless Gaming",permalink:"/explore/use-cases/trustless-gaming"}},a={},d=[];function l(e){const t={p:"p",...(0,o.R)(),...e.components};return(0,r.jsx)(t.p,{children:"Disrupt the current gig economy players and compose a fully decentralized ride\nsharing, freelancing, temporary work, mechanical turk platform, or any other\nshared economy model where each network participant gets their fair share of the\nprofits."})}function u(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},8355:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>c});var r=n(758);const o={},s=r.createContext(o);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/main.a8b009ff.js b/assets/js/main.a8b009ff.js new file mode 100644 index 00000000..853be799 --- /dev/null +++ b/assets/js/main.a8b009ff.js @@ -0,0 +1,2 @@ +/*! For license information please see main.a8b009ff.js.LICENSE.txt */ +(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8792],{3374:(e,t,n)=>{"use strict";n.d(t,{Bc:()=>g,E8:()=>Hn,a1:()=>Un});var r=n(758);n(8143);function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(){return l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},l.apply(this,arguments)}function s(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function c(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){l=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(l)throw o}}return a}}(e,t)||d(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e){return function(e){if(Array.isArray(e))return f(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||d(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){if(e){if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?f(e,t):void 0}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function p(){return r.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},r.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function m(){return r.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20","aria-hidden":"true"},r.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var h=["translations"],g=r.forwardRef((function(e,t){var n=e.translations,o=void 0===n?{}:n,a=s(e,h),i=o.buttonText,u=void 0===i?"Search":i,d=o.buttonAriaLabel,f=void 0===d?"Search":d,g=c((0,r.useState)(null),2),b=g[0],v=g[1];return(0,r.useEffect)((function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?v("\u2318"):v("Ctrl"))}),[]),r.createElement("button",l({type:"button",className:"DocSearch DocSearch-Button","aria-label":f},a,{ref:t}),r.createElement("span",{className:"DocSearch-Button-Container"},r.createElement(m,null),r.createElement("span",{className:"DocSearch-Button-Placeholder"},u)),r.createElement("span",{className:"DocSearch-Button-Keys"},null!==b&&r.createElement(r.Fragment,null,r.createElement(y,{reactsToKey:"Ctrl"===b?"Ctrl":"Meta"},"Ctrl"===b?r.createElement(p,null):b),r.createElement(y,{reactsToKey:"k"},"K"))))}));function y(e){var t=e.reactsToKey,n=e.children,o=c((0,r.useState)(!1),2),a=o[0],i=o[1];return(0,r.useEffect)((function(){if(t)return window.addEventListener("keydown",e),window.addEventListener("keyup",n),function(){window.removeEventListener("keydown",e),window.removeEventListener("keyup",n)};function e(e){e.key===t&&i(!0)}function n(e){e.key!==t&&"Meta"!==e.key||i(!1)}}),[t]),r.createElement("kbd",{className:a?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"},n)}function b(e,t){var n=void 0;return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];n&&clearTimeout(n),n=setTimeout((function(){return e.apply(void 0,o)}),t)}}function v(e){return e.reduce((function(e,t){return e.concat(t)}),[])}var w=0;function S(e){return 0===e.collections.length?0:e.collections.reduce((function(e,t){return e+t.items.length}),0)}function k(e){return e!==Object(e)}function x(e,t){if(e===t)return!0;if(k(e)||k(t)||"function"==typeof e||"function"==typeof t)return e===t;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n=0,r=Object.keys(e);n<r.length;n++){var o=r[n];if(!(o in t))return!1;if(!x(e[o],t[o]))return!1}return!0}var E=function(){},_=[{segment:"autocomplete-core",version:"1.9.3"}];function O(e){var t=e.item,n=e.items;return{index:t.__autocomplete_indexName,items:[t],positions:[1+n.findIndex((function(e){return e.objectID===t.objectID}))],queryID:t.__autocomplete_queryID,algoliaSource:["autocomplete"]}}function C(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var A=["items"],T=["items"];function j(e){return j="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},j(e)}function P(e){return function(e){if(Array.isArray(e))return I(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?I(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function N(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function R(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function L(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?R(Object(n),!0).forEach((function(t){D(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):R(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function D(e,t,n){return(t=function(e){var t=function(e){if("object"!==j(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==j(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===j(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function M(e){return e.map((function(e){var t=e.items,n=N(e,A);return L(L({},n),{},{objectIDs:(null==t?void 0:t.map((function(e){return e.objectID})))||n.objectIDs})}))}function F(e){var t,n,r,o=(t=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,i,l=[],s=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=a.call(n)).done)&&(l.push(r.value),l.length!==t);s=!0);}catch(e){c=!0,o=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return C(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?C(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((e.version||"").split(".").map(Number),2),n=t[0],r=t[1],n>=3||2===n&&r>=4||1===n&&r>=10);function a(t,n,r){if(o&&void 0!==r){var a=r[0].__autocomplete_algoliaCredentials,i={"X-Algolia-Application-Id":a.appId,"X-Algolia-API-Key":a.apiKey};e.apply(void 0,[t].concat(P(n),[{headers:i}]))}else e.apply(void 0,[t].concat(P(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("clickedObjectIDsAfterSearch",M(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("clickedObjectIDs",M(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("convertedObjectIDsAfterSearch",M(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("convertedObjectIDs",M(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&t.reduce((function(e,t){var n=t.items,r=N(t,T);return[].concat(P(e),P(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r<e.objectIDs.length;r+=t)n.push(L(L({},e),{},{objectIDs:e.objectIDs.slice(r,r+t)}));return n}(L(L({},r),{},{objectIDs:(null==n?void 0:n.map((function(e){return e.objectID})))||r.objectIDs})).map((function(e){return{items:n,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return a("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function z(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function B(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function $(e){return $="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},$(e)}function U(e){return function(e){if(Array.isArray(e))return H(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return H(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?H(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function q(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function V(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?q(Object(n),!0).forEach((function(t){W(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):q(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function W(e,t,n){return(t=function(e){var t=function(e){if("object"!==$(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==$(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===$(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var G="https://cdn.jsdelivr.net/npm/search-insights@".concat("2.6.0","/dist/search-insights.min.js"),K=b((function(e){var t=e.onItemsChange,n=e.items,r=e.insights,o=e.state;t({insights:r,insightsEvents:z({items:n}).map((function(e){return V({eventName:"Items Viewed"},e)})),state:o})}),400);function Y(e){var t=function(e){return V({onItemsChange:function(e){var t=e.insights,n=e.insightsEvents;t.viewedObjectIDs.apply(t,U(n.map((function(e){return V(V({},e),{},{algoliaSource:[].concat(U(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onSelect:function(e){var t=e.insights,n=e.insightsEvents;t.clickedObjectIDsAfterSearch.apply(t,U(n.map((function(e){return V(V({},e),{},{algoliaSource:[].concat(U(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onActive:E},e)}(e),n=t.insightsClient,r=t.onItemsChange,o=t.onSelect,a=t.onActive,i=n;n||"undefined"!=typeof window&&function(e){var t=e.window,n=t.AlgoliaAnalyticsObject||"aa";"string"==typeof n&&(i=t[n]),i||(t.AlgoliaAnalyticsObject=n,t[n]||(t[n]=function(){t[n].queue||(t[n].queue=[]);for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];t[n].queue.push(r)}),t[n].version="2.6.0",i=t[n],function(e){var t="[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete";try{var n=e.document.createElement("script");n.async=!0,n.src=G,n.onerror=function(){console.error(t)},document.body.appendChild(n)}catch(e){console.error(t)}}(t))}({window:window});var l=F(i),s={current:[]},c=b((function(e){var t=e.state;if(t.isOpen){var n=t.collections.reduce((function(e,t){return[].concat(U(e),U(t.items))}),[]).filter(B);x(s.current.map((function(e){return e.objectID})),n.map((function(e){return e.objectID})))||(s.current=n,n.length>0&&K({onItemsChange:r,items:n,insights:l,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive;i("addAlgoliaAgent","insights-plugin"),t({algoliaInsightsPlugin:{__algoliaSearchParameters:{clickAnalytics:!0},insights:l}}),n((function(e){var t=e.item,n=e.state,r=e.event;B(t)&&o({state:n,event:r,insights:l,item:t,insightsEvents:[V({eventName:"Item Selected"},O({item:t,items:s.current}))]})})),r((function(e){var t=e.item,n=e.state,r=e.event;B(t)&&a({state:n,event:r,insights:l,item:t,insightsEvents:[V({eventName:"Item Active"},O({item:t,items:s.current}))]})}))},onStateChange:function(e){var t=e.state;c({state:t})},__autocomplete_pluginOptions:e}}function Q(e,t){var n=t;return{then:function(t,r){return Q(e.then(X(t,n,e),X(r,n,e)),n)},catch:function(t){return Q(e.catch(X(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),Q(e.finally(X(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===n.isCanceled}}}function Z(e){return Q(e,{isCanceled:!1,onCancelList:[]})}function X(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}function J(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var o=(null===t?-1:t)+e;return o<=-1||o>=n?null===r?null:0:o}function ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function te(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(n),!0).forEach((function(t){ne(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ee(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ne(e,t,n){return(t=function(e){var t=function(e){if("object"!==re(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==re(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===re(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function re(e){return re="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},re(e)}function oe(e){var t=function(e){var t=e.collections.map((function(e){return e.items.length})).reduce((function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e}),[]).reduce((function(t,n){return n<=e.activeItemId?t+1:t}),0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,o=0,a=0;!1===r;){var i=t.collections[o];if(i===n){r=!0;break}a+=i.items.length,o++}return t.activeItemId-a}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}var ae=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function ie(e){return ie="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ie(e)}function le(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function se(e,t,n){return(t=function(e){var t=function(e){if("object"!==ie(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ie(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ie(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ce(e){return ce="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ce(e)}function ue(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function de(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ue(Object(n),!0).forEach((function(t){fe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ue(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function fe(e,t,n){return(t=function(e){var t=function(e){if("object"!==ce(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ce(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ce(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function pe(e){return pe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pe(e)}function me(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function he(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ge(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?he(Object(n),!0).forEach((function(t){ye(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):he(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ye(e,t,n){return(t=function(e){var t=function(e){if("object"!==pe(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==pe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===pe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function be(e,t){var n,r="undefined"!=typeof window?window:{},o=e.plugins||[];return ge(ge({debug:!1,openOnFocus:!1,placeholder:"",autoFocus:!1,defaultActiveItemId:null,stallThreshold:300,insights:!1,environment:r,shouldPanelOpen:function(e){return S(e.state)>0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:"autocomplete-".concat(w++),plugins:o,initialState:ge({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)}))},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)}))},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)}))},getSources:function(n){return Promise.all([].concat(function(e){return function(e){if(Array.isArray(e))return me(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return me(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?me(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var n=[];return Promise.resolve(e(t)).then((function(e){return Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:E,onResolve:E};Object.keys(t).forEach((function(e){t[e].__default=!0}));var r=te(te({},t),e);return Promise.resolve(r)})))}))}(e,n)}))).then((function(e){return v(e)})).then((function(e){return e.map((function(e){return ge(ge({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)}))},onActive:function(n){e.onActive(n),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)}))},onResolve:function(n){e.onResolve(n),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)}))}})}))}))},navigator:ge({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,"_blank","noopener");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,"_blank","noopener")}},e.navigator)})}function ve(e){return ve="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ve(e)}function we(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Se(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?we(Object(n),!0).forEach((function(t){ke(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):we(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ke(e,t,n){return(t=function(e){var t=function(e){if("object"!==ve(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ve(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ve(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xe(e){return xe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xe(e)}function Ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _e(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ee(Object(n),!0).forEach((function(t){Oe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ee(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Oe(e,t,n){return(t=function(e){var t=function(e){if("object"!==xe(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==xe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===xe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ce(e){return function(e){if(Array.isArray(e))return Ae(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Ae(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ae(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ae(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Te(e){return Boolean(e.execute)}function je(e){var t=e.reduce((function(e,t){if(!Te(t))return e.push(t),e;var n=t.searchClient,r=t.execute,o=t.requesterId,a=t.requests,i=e.find((function(e){return Te(t)&&Te(e)&&e.searchClient===n&&Boolean(o)&&e.requesterId===o}));if(i){var l;(l=i.items).push.apply(l,Ce(a))}else{var s={execute:r,requesterId:o,items:a,searchClient:n};e.push(s)}return e}),[]).map((function(e){if(!Te(e))return Promise.resolve(e);var t=e,n=t.execute,r=t.items;return n({searchClient:t.searchClient,requests:r})}));return Promise.all(t).then((function(e){return v(e)}))}function Pe(e){return Pe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Pe(e)}var Ie=["event","nextState","props","query","refresh","store"];function Ne(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Re(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ne(Object(n),!0).forEach((function(t){Le(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ne(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Le(e,t,n){return(t=function(e){var t=function(e){if("object"!==Pe(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==Pe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Pe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var De,Me,Fe,ze=null,Be=(De=-1,Me=-1,Fe=void 0,function(e){var t=++De;return Promise.resolve(e).then((function(e){return Fe&&t<Me?Fe:(Me=t,Fe=e,e)}))});function $e(e){var t=e.event,n=e.nextState,r=void 0===n?{}:n,o=e.props,a=e.query,i=e.refresh,l=e.store,s=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,Ie);ze&&o.environment.clearTimeout(ze);var c=s.setCollections,u=s.setIsOpen,d=s.setQuery,f=s.setActiveItemId,p=s.setStatus;if(d(a),f(o.defaultActiveItemId),!a&&!1===o.openOnFocus){var m,h=l.getState().collections.map((function(e){return Re(Re({},e),{},{items:[]})}));p("idle"),c(h),u(null!==(m=r.isOpen)&&void 0!==m?m:o.shouldPanelOpen({state:l.getState()}));var g=Z(Be(h).then((function(){return Promise.resolve()})));return l.pendingRequests.add(g)}p("loading"),ze=o.environment.setTimeout((function(){p("stalled")}),o.stallThreshold);var y=Z(Be(o.getSources(Re({query:a,refresh:i,state:l.getState()},s)).then((function(e){return Promise.all(e.map((function(e){return Promise.resolve(e.getItems(Re({query:a,refresh:i,state:l.getState()},s))).then((function(t){return function(e,t,n){if(o=e,Boolean(null==o?void 0:o.execute)){var r="algolia"===e.requesterId?Object.assign.apply(Object,[{}].concat(Ce(Object.keys(n.context).map((function(e){var t;return null===(t=n.context[e])||void 0===t?void 0:t.__algoliaSearchParameters}))))):{};return _e(_e({},e),{},{requests:e.queries.map((function(n){return{query:"algolia"===e.requesterId?_e(_e({},n),{},{params:_e(_e({},r),n.params)}):n,sourceId:t,transformResponse:e.transformResponse}}))})}var o;return{items:e,sourceId:t}}(t,e.sourceId,l.getState())}))}))).then(je).then((function(t){return function(e,t,n){return t.map((function(t){var r,o=e.filter((function(e){return e.sourceId===t.sourceId})),a=o.map((function(e){return e.items})),i=o[0].transformResponse,l=i?i({results:r=a,hits:r.map((function(e){return e.hits})).filter(Boolean),facetHits:r.map((function(e){var t;return null===(t=e.facetHits)||void 0===t?void 0:t.map((function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}}))})).filter(Boolean)}):a;return t.onResolve({source:t,results:a,items:l,state:n.getState()}),l.every(Boolean),'The `getItems` function from source "'.concat(t.sourceId,'" must return an array of items but returned ').concat(JSON.stringify(void 0),".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"),{source:t,items:l}}))}(t,e,l)})).then((function(e){return function(e){var t=e.props,n=e.state,r=e.collections.reduce((function(e,t){return Se(Se({},e),{},ke({},t.source.sourceId,Se(Se({},t.source),{},{getItems:function(){return v(t.items)}})))}),{}),o=t.plugins.reduce((function(e,t){return t.reshape?t.reshape(e):e}),{sourcesBySourceId:r,state:n}).sourcesBySourceId;return v(t.reshape({sourcesBySourceId:o,sources:Object.values(o),state:n})).filter(Boolean).map((function(e){return{source:e,items:e.getItems()}}))}({collections:e,props:o,state:l.getState()})}))})))).then((function(e){var n;p("idle"),c(e);var d=o.shouldPanelOpen({state:l.getState()});u(null!==(n=r.isOpen)&&void 0!==n?n:o.openOnFocus&&!a&&d||d);var f=oe(l.getState());if(null!==l.getState().activeItemId&&f){var m=f.item,h=f.itemInputValue,g=f.itemUrl,y=f.source;y.onActive(Re({event:t,item:m,itemInputValue:h,itemUrl:g,refresh:i,source:y,state:l.getState()},s))}})).finally((function(){p("idle"),ze&&o.environment.clearTimeout(ze)}));return l.pendingRequests.add(y)}function Ue(e){return Ue="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ue(e)}var He=["event","props","refresh","store"];function qe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ve(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?qe(Object(n),!0).forEach((function(t){We(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):qe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function We(e,t,n){return(t=function(e){var t=function(e){if("object"!==Ue(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==Ue(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ue(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ge(e){return Ge="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ge(e)}var Ke=["props","refresh","store"],Ye=["inputElement","formElement","panelElement"],Qe=["inputElement"],Ze=["inputElement","maxLength"],Xe=["sourceIndex"],Je=["sourceIndex"],et=["item","source","sourceIndex"];function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function nt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?tt(Object(n),!0).forEach((function(t){rt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function rt(e,t,n){return(t=function(e){var t=function(e){if("object"!==Ge(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==Ge(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ge(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ot(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function at(e){var t=e.props,n=e.refresh,r=e.store,o=ot(e,Ke),a=function(e,t){return void 0!==t?"".concat(e,"-").concat(t):e};return{getEnvironmentProps:function(e){var n=e.inputElement,o=e.formElement,a=e.panelElement;function i(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[o,a].some((function(t){return(n=t)===(r=e.target)||n.contains(r);var n,r}))&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())}return nt({onTouchStart:i,onMouseDown:i,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},ot(e,Ye))},getRootProps:function(e){return nt({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-owns":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label")},e)},getFormProps:function(e){return e.inputElement,nt({action:"",noValidate:!0,role:"search",onSubmit:function(a){var i;a.preventDefault(),t.onSubmit(nt({event:a,refresh:n,state:r.getState()},o)),r.dispatch("submit",null),null===(i=e.inputElement)||void 0===i||i.blur()},onReset:function(a){var i;a.preventDefault(),t.onReset(nt({event:a,refresh:n,state:r.getState()},o)),r.dispatch("reset",null),null===(i=e.inputElement)||void 0===i||i.focus()}},ot(e,Qe))},getLabelProps:function(e){var n=e||{},r=n.sourceIndex,o=ot(n,Xe);return nt({htmlFor:"".concat(a(t.id,r),"-input"),id:"".concat(a(t.id,r),"-label")},o)},getInputProps:function(e){var a;function i(e){(t.openOnFocus||Boolean(r.getState().query))&&$e(nt({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},o)),r.dispatch("focus",null)}var l=e||{},s=(l.inputElement,l.maxLength),c=void 0===s?512:s,u=ot(l,Ze),d=oe(r.getState()),f=function(e){return Boolean(e&&e.match(ae))}((null===(a=t.environment.navigator)||void 0===a?void 0:a.userAgent)||""),p=null!=d&&d.itemUrl&&!f?"go":"search";return nt({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&null!==r.getState().activeItemId?"".concat(t.id,"-item-").concat(r.getState().activeItemId):void 0,"aria-controls":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label"),value:r.getState().completion||r.getState().query,id:"".concat(t.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:p,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:"search",onChange:function(e){$e(nt({event:e,props:t,query:e.currentTarget.value.slice(0,c),refresh:n,store:r},o))},onKeyDown:function(e){!function(e){var t=e.event,n=e.props,r=e.refresh,o=e.store,a=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,He);if("ArrowUp"===t.key||"ArrowDown"===t.key){var i=function(){var e=n.environment.document.getElementById("".concat(n.id,"-item-").concat(o.getState().activeItemId));e&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded(!1):e.scrollIntoView(!1))},l=function(){var e=oe(o.getState());if(null!==o.getState().activeItemId&&e){var n=e.item,i=e.itemInputValue,l=e.itemUrl,s=e.source;s.onActive(Ve({event:t,item:n,itemInputValue:i,itemUrl:l,refresh:r,source:s,state:o.getState()},a))}};t.preventDefault(),!1===o.getState().isOpen&&(n.openOnFocus||Boolean(o.getState().query))?$e(Ve({event:t,props:n,query:o.getState().query,refresh:r,store:o},a)).then((function(){o.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),l(),setTimeout(i,0)})):(o.dispatch(t.key,{}),l(),i())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Tab"===t.key)o.dispatch("blur",null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return void(n.debug||o.pendingRequests.cancelAll());t.preventDefault();var s=oe(o.getState()),c=s.item,u=s.itemInputValue,d=s.itemUrl,f=s.source;if(t.metaKey||t.ctrlKey)void 0!==d&&(f.onSelect(Ve({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a)),n.navigator.navigateNewTab({itemUrl:d,item:c,state:o.getState()}));else if(t.shiftKey)void 0!==d&&(f.onSelect(Ve({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a)),n.navigator.navigateNewWindow({itemUrl:d,item:c,state:o.getState()}));else if(t.altKey);else{if(void 0!==d)return f.onSelect(Ve({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a)),void n.navigator.navigate({itemUrl:d,item:c,state:o.getState()});$e(Ve({event:t,nextState:{isOpen:!1},props:n,query:u,refresh:r,store:o},a)).then((function(){f.onSelect(Ve({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a))}))}}}(nt({event:e,props:t,refresh:n,store:r},o))},onFocus:i,onBlur:E,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},u)},getPanelProps:function(e){return nt({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},e)},getListProps:function(e){var n=e||{},r=n.sourceIndex,o=ot(n,Je);return nt({role:"listbox","aria-labelledby":"".concat(a(t.id,r),"-label"),id:"".concat(a(t.id,r),"-list")},o)},getItemProps:function(e){var i=e.item,l=e.source,s=e.sourceIndex,c=ot(e,et);return nt({id:"".concat(a(t.id,s),"-item-").concat(i.__autocomplete_id),role:"option","aria-selected":r.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){if(i.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",i.__autocomplete_id);var t=oe(r.getState());if(null!==r.getState().activeItemId&&t){var a=t.item,l=t.itemInputValue,s=t.itemUrl,c=t.source;c.onActive(nt({event:e,item:a,itemInputValue:l,itemUrl:s,refresh:n,source:c,state:r.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var a=l.getItemInputValue({item:i,state:r.getState()}),s=l.getItemUrl({item:i,state:r.getState()});(s?Promise.resolve():$e(nt({event:e,nextState:{isOpen:!1},props:t,query:a,refresh:n,store:r},o))).then((function(){l.onSelect(nt({event:e,item:i,itemInputValue:a,itemUrl:s,refresh:n,source:l,state:r.getState()},o))}))}},c)}}}function it(e){return it="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},it(e)}function lt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function st(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?lt(Object(n),!0).forEach((function(t){ct(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):lt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ct(e,t,n){return(t=function(e){var t=function(e){if("object"!==it(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==it(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===it(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ut(e){var t,n,r,o,a=e.plugins,i=e.options,l=null===(t=((null===(n=i.__autocomplete_metadata)||void 0===n?void 0:n.userAgents)||[])[0])||void 0===t?void 0:t.segment,s=l?ct({},l,Object.keys((null===(r=i.__autocomplete_metadata)||void 0===r?void 0:r.options)||{})):{};return{plugins:a.map((function(e){return{name:e.name,options:Object.keys(e.__autocomplete_pluginOptions||[])}})),options:st({"autocomplete-core":Object.keys(i)},s),ua:_.concat((null===(o=i.__autocomplete_metadata)||void 0===o?void 0:o.userAgents)||[])}}function dt(e){var t,n=e.state;return!1===n.isOpen||null===n.activeItemId?null:(null===(t=oe(n))||void 0===t?void 0:t.itemInputValue)||null}function ft(e){return ft="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ft(e)}function pt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function mt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?pt(Object(n),!0).forEach((function(t){ht(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ht(e,t,n){return(t=function(e){var t=function(e){if("object"!==ft(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ft(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ft(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var gt=function(e,t){switch(t.type){case"setActiveItemId":case"mousemove":return mt(mt({},e),{},{activeItemId:t.payload});case"setQuery":return mt(mt({},e),{},{query:t.payload,completion:null});case"setCollections":return mt(mt({},e),{},{collections:t.payload});case"setIsOpen":return mt(mt({},e),{},{isOpen:t.payload});case"setStatus":return mt(mt({},e),{},{status:t.payload});case"setContext":return mt(mt({},e),{},{context:mt(mt({},e.context),t.payload)});case"ArrowDown":var n=mt(mt({},e),{},{activeItemId:t.payload.hasOwnProperty("nextActiveItemId")?t.payload.nextActiveItemId:J(1,e.activeItemId,S(e),t.props.defaultActiveItemId)});return mt(mt({},n),{},{completion:dt({state:n})});case"ArrowUp":var r=mt(mt({},e),{},{activeItemId:J(-1,e.activeItemId,S(e),t.props.defaultActiveItemId)});return mt(mt({},r),{},{completion:dt({state:r})});case"Escape":return e.isOpen?mt(mt({},e),{},{activeItemId:null,isOpen:!1,completion:null}):mt(mt({},e),{},{activeItemId:null,query:"",status:"idle",collections:[]});case"submit":return mt(mt({},e),{},{activeItemId:null,isOpen:!1,status:"idle"});case"reset":return mt(mt({},e),{},{activeItemId:!0===t.props.openOnFocus?t.props.defaultActiveItemId:null,status:"idle",query:""});case"focus":return mt(mt({},e),{},{activeItemId:t.props.defaultActiveItemId,isOpen:(t.props.openOnFocus||Boolean(e.query))&&t.props.shouldPanelOpen({state:e})});case"blur":return t.props.debug?e:mt(mt({},e),{},{isOpen:!1,activeItemId:null});case"mouseleave":return mt(mt({},e),{},{activeItemId:t.props.defaultActiveItemId});default:return"The reducer action ".concat(JSON.stringify(t.type)," is not supported."),e}};function yt(e){return yt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},yt(e)}function bt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function vt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?bt(Object(n),!0).forEach((function(t){wt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):bt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function wt(e,t,n){return(t=function(e){var t=function(e){if("object"!==yt(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==yt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===yt(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function St(e){var t=[],n=be(e,t),r=function(e,t,n){var r,o=t.initialState;return{getState:function(){return o},dispatch:function(r,a){var i=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?le(Object(n),!0).forEach((function(t){se(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):le(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},o);o=e(o,{type:r,props:t,payload:a}),n({state:o,prevState:i})},pendingRequests:(r=[],{add:function(e){return r.push(e),e.finally((function(){r=r.filter((function(t){return t!==e}))}))},cancelAll:function(){r.forEach((function(e){return e.cancel()}))},isEmpty:function(){return 0===r.length}})}}(gt,n,(function(e){var t=e.prevState,r=e.state;n.onStateChange(vt({prevState:t,state:r,refresh:i,navigator:n.navigator},o))})),o=function(e){var t=e.store;return{setActiveItemId:function(e){t.dispatch("setActiveItemId",e)},setQuery:function(e){t.dispatch("setQuery",e)},setCollections:function(e){var n=0,r=e.map((function(e){return de(de({},e),{},{items:v(e.items).map((function(e){return de(de({},e),{},{__autocomplete_id:n++})}))})}));t.dispatch("setCollections",r)},setIsOpen:function(e){t.dispatch("setIsOpen",e)},setStatus:function(e){t.dispatch("setStatus",e)},setContext:function(e){t.dispatch("setContext",e)}}}({store:r}),a=at(vt({props:n,refresh:i,store:r,navigator:n.navigator},o));function i(){return $e(vt({event:new Event("input"),nextState:{isOpen:r.getState().isOpen},props:n,navigator:n.navigator,query:r.getState().query,refresh:i,store:r},o))}if(e.insights&&!n.plugins.some((function(e){return"aa.algoliaInsightsPlugin"===e.name}))){var l="boolean"==typeof e.insights?{}:e.insights;n.plugins.push(Y(l))}return n.plugins.forEach((function(e){var r;return null===(r=e.subscribe)||void 0===r?void 0:r.call(e,vt(vt({},o),{},{navigator:n.navigator,refresh:i,onSelect:function(e){t.push({onSelect:e})},onActive:function(e){t.push({onActive:e})},onResolve:function(e){t.push({onResolve:e})}}))})),function(e){var t,n,r=e.metadata,o=e.environment;if(null===(t=o.navigator)||void 0===t||null===(n=t.userAgent)||void 0===n?void 0:n.includes("Algolia Crawler")){var a=o.document.createElement("meta"),i=o.document.querySelector("head");a.name="algolia:metadata",setTimeout((function(){a.content=JSON.stringify(r),i.appendChild(a)}),0)}}({metadata:ut({plugins:n.plugins,options:e}),environment:n.environment}),vt(vt({refresh:i,navigator:n.navigator},a),o)}function kt(e){var t=e.translations,n=(void 0===t?{}:t).searchByText,o=void 0===n?"Search by":n;return r.createElement("a",{href:"https://www.algolia.com/ref/docsearch/?utm_source=".concat(window.location.hostname,"&utm_medium=referral&utm_content=powered_by&utm_campaign=docsearch"),target:"_blank",rel:"noopener noreferrer"},r.createElement("span",{className:"DocSearch-Label"},o),r.createElement("svg",{width:"77",height:"19","aria-label":"Algolia",role:"img",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2196.2 500"},r.createElement("defs",null,r.createElement("style",null,".cls-1,.cls-2{fill:#003dff;}.cls-2{fill-rule:evenodd;}")),r.createElement("path",{className:"cls-2",d:"M1070.38,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),r.createElement("rect",{className:"cls-1",x:"1845.88",y:"104.73",width:"62.58",height:"277.9",rx:"5.9",ry:"5.9"}),r.createElement("path",{className:"cls-2",d:"M1851.78,71.38h50.77c3.26,0,5.9-2.64,5.9-5.9V5.9c0-3.62-3.24-6.39-6.82-5.83l-50.77,7.95c-2.87,.45-4.99,2.92-4.99,5.83v51.62c0,3.26,2.64,5.9,5.9,5.9Z"}),r.createElement("path",{className:"cls-2",d:"M1764.03,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),r.createElement("path",{className:"cls-2",d:"M1631.95,142.72c-11.14-12.25-24.83-21.65-40.78-28.31-15.92-6.53-33.26-9.85-52.07-9.85-18.78,0-36.15,3.17-51.92,9.85-15.59,6.66-29.29,16.05-40.76,28.31-11.47,12.23-20.38,26.87-26.76,44.03-6.38,17.17-9.24,37.37-9.24,58.36,0,20.99,3.19,36.87,9.55,54.21,6.38,17.32,15.14,32.11,26.45,44.36,11.29,12.23,24.83,21.62,40.6,28.46,15.77,6.83,40.12,10.33,52.4,10.48,12.25,0,36.78-3.82,52.7-10.48,15.92-6.68,29.46-16.23,40.78-28.46,11.29-12.25,20.05-27.04,26.25-44.36,6.22-17.34,9.24-33.22,9.24-54.21,0-20.99-3.34-41.19-10.03-58.36-6.38-17.17-15.14-31.8-26.43-44.03Zm-44.43,163.75c-11.47,15.75-27.56,23.7-48.09,23.7-20.55,0-36.63-7.8-48.1-23.7-11.47-15.75-17.21-34.01-17.21-61.2,0-26.89,5.59-49.14,17.06-64.87,11.45-15.75,27.54-23.52,48.07-23.52,20.55,0,36.63,7.78,48.09,23.52,11.47,15.57,17.36,37.98,17.36,64.87,0,27.19-5.72,45.3-17.19,61.2Z"}),r.createElement("path",{className:"cls-2",d:"M894.42,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),r.createElement("path",{className:"cls-2",d:"M2133.97,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),r.createElement("path",{className:"cls-2",d:"M1314.05,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-11.79,18.34-19.6,39.64-22.11,62.59-.58,5.3-.88,10.68-.88,16.14s.31,11.15,.93,16.59c4.28,38.09,23.14,71.61,50.66,94.52,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47h0c17.99,0,34.61-5.93,48.16-15.97,16.29-11.58,28.88-28.54,34.48-47.75v50.26h-.11v11.08c0,21.84-5.71,38.27-17.34,49.36-11.61,11.08-31.04,16.63-58.25,16.63-11.12,0-28.79-.59-46.6-2.41-2.83-.29-5.46,1.5-6.27,4.22l-12.78,43.11c-1.02,3.46,1.27,7.02,4.83,7.53,21.52,3.08,42.52,4.68,54.65,4.68,48.91,0,85.16-10.75,108.89-32.21,21.48-19.41,33.15-48.89,35.2-88.52V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,64.1s.65,139.13,0,143.36c-12.08,9.77-27.11,13.59-43.49,14.7-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-1.32,0-2.63-.03-3.94-.1-40.41-2.11-74.52-37.26-74.52-79.38,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33Z"}),r.createElement("path",{className:"cls-1",d:"M249.83,0C113.3,0,2,110.09,.03,246.16c-2,138.19,110.12,252.7,248.33,253.5,42.68,.25,83.79-10.19,120.3-30.03,3.56-1.93,4.11-6.83,1.08-9.51l-23.38-20.72c-4.75-4.21-11.51-5.4-17.36-2.92-25.48,10.84-53.17,16.38-81.71,16.03-111.68-1.37-201.91-94.29-200.13-205.96,1.76-110.26,92-199.41,202.67-199.41h202.69V407.41l-115-102.18c-3.72-3.31-9.42-2.66-12.42,1.31-18.46,24.44-48.53,39.64-81.93,37.34-46.33-3.2-83.87-40.5-87.34-86.81-4.15-55.24,39.63-101.52,94-101.52,49.18,0,89.68,37.85,93.91,85.95,.38,4.28,2.31,8.27,5.52,11.12l29.95,26.55c3.4,3.01,8.79,1.17,9.63-3.3,2.16-11.55,2.92-23.58,2.07-35.92-4.82-70.34-61.8-126.93-132.17-131.26-80.68-4.97-148.13,58.14-150.27,137.25-2.09,77.1,61.08,143.56,138.19,145.26,32.19,.71,62.03-9.41,86.14-26.95l150.26,133.2c6.44,5.71,16.61,1.14,16.61-7.47V9.48C499.66,4.25,495.42,0,490.18,0H249.83Z"})))}function xt(e){return r.createElement("svg",{width:"15",height:"15","aria-label":e.ariaLabel,role:"img"},r.createElement("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"},e.children))}function Et(e){var t=e.translations,n=void 0===t?{}:t,o=n.selectText,a=void 0===o?"to select":o,i=n.selectKeyAriaLabel,l=void 0===i?"Enter key":i,s=n.navigateText,c=void 0===s?"to navigate":s,u=n.navigateUpKeyAriaLabel,d=void 0===u?"Arrow up":u,f=n.navigateDownKeyAriaLabel,p=void 0===f?"Arrow down":f,m=n.closeText,h=void 0===m?"to close":m,g=n.closeKeyAriaLabel,y=void 0===g?"Escape key":g,b=n.searchByText,v=void 0===b?"Search by":b;return r.createElement(r.Fragment,null,r.createElement("div",{className:"DocSearch-Logo"},r.createElement(kt,{translations:{searchByText:v}})),r.createElement("ul",{className:"DocSearch-Commands"},r.createElement("li",null,r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(xt,{ariaLabel:l},r.createElement("path",{d:"M12 3.53088v3c0 1-1 2-2 2H4M7 11.53088l-3-3 3-3"}))),r.createElement("span",{className:"DocSearch-Label"},a)),r.createElement("li",null,r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(xt,{ariaLabel:p},r.createElement("path",{d:"M7.5 3.5v8M10.5 8.5l-3 3-3-3"}))),r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(xt,{ariaLabel:d},r.createElement("path",{d:"M7.5 11.5v-8M10.5 6.5l-3-3-3 3"}))),r.createElement("span",{className:"DocSearch-Label"},c)),r.createElement("li",null,r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(xt,{ariaLabel:y},r.createElement("path",{d:"M13.6167 8.936c-.1065.3583-.6883.962-1.4875.962-.7993 0-1.653-.9165-1.653-2.1258v-.5678c0-1.2548.7896-2.1016 1.653-2.1016.8634 0 1.3601.4778 1.4875 1.0724M9 6c-.1352-.4735-.7506-.9219-1.46-.8972-.7092.0246-1.344.57-1.344 1.2166s.4198.8812 1.3445.9805C8.465 7.3992 8.968 7.9337 9 8.5c.032.5663-.454 1.398-1.4595 1.398C6.6593 9.898 6 9 5.963 8.4851m-1.4748.5368c-.2635.5941-.8099.876-1.5443.876s-1.7073-.6248-1.7073-2.204v-.4603c0-1.0416.721-2.131 1.7073-2.131.9864 0 1.6425 1.031 1.5443 2.2492h-2.956"}))),r.createElement("span",{className:"DocSearch-Label"},h))))}function _t(e){var t=e.hit,n=e.children;return r.createElement("a",{href:t.url},n)}function Ot(){return r.createElement("svg",{viewBox:"0 0 38 38",stroke:"currentColor",strokeOpacity:".5"},r.createElement("g",{fill:"none",fillRule:"evenodd"},r.createElement("g",{transform:"translate(1 1)",strokeWidth:"2"},r.createElement("circle",{strokeOpacity:".3",cx:"18",cy:"18",r:"18"}),r.createElement("path",{d:"M36 18c0-9.94-8.06-18-18-18"},r.createElement("animateTransform",{attributeName:"transform",type:"rotate",from:"0 18 18",to:"360 18 18",dur:"1s",repeatCount:"indefinite"})))))}function Ct(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M3.18 6.6a8.23 8.23 0 1112.93 9.94h0a8.23 8.23 0 01-11.63 0"}),r.createElement("path",{d:"M6.44 7.25H2.55V3.36M10.45 6v5.6M10.45 11.6L13 13"})))}function At(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M10 10l5.09-5.09L10 10l5.09 5.09L10 10zm0 0L4.91 4.91 10 10l-5.09 5.09L10 10z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}function Tt(){return r.createElement("svg",{className:"DocSearch-Hit-Select-Icon",width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M18 3v4c0 2-2 4-4 4H2"}),r.createElement("path",{d:"M8 17l-6-6 6-6"})))}var jt=function(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M17 6v12c0 .52-.2 1-1 1H4c-.7 0-1-.33-1-1V2c0-.55.42-1 1-1h8l5 5zM14 8h-3.13c-.51 0-.87-.34-.87-.87V4",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))};function Pt(e){switch(e.type){case"lvl1":return r.createElement(jt,null);case"content":return r.createElement(Nt,null);default:return r.createElement(It,null)}}function It(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M13 13h4-4V8H7v5h6v4-4H7V8H3h4V3v5h6V3v5h4-4v5zm-6 0v4-4H3h4z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}function Nt(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M17 5H3h14zm0 5H3h14zm0 5H3h14z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function Rt(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M10 14.2L5 17l1-5.6-4-4 5.5-.7 2.5-5 2.5 5 5.6.8-4 4 .9 5.5z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function Lt(){return r.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M19 4.8a16 16 0 00-2-1.2m-3.3-1.2A16 16 0 001.1 4.7M16.7 8a12 12 0 00-2.8-1.4M10 6a12 12 0 00-6.7 2M12.3 14.7a4 4 0 00-4.5 0M14.5 11.4A8 8 0 0010 10M3 16L18 2M10 18h0"}))}function Dt(){return r.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M15.5 4.8c2 3 1.7 7-1 9.7h0l4.3 4.3-4.3-4.3a7.8 7.8 0 01-9.8 1m-2.2-2.2A7.8 7.8 0 0113.2 2.4M2 18L18 2"}))}function Mt(e){var t=e.translations,n=void 0===t?{}:t,o=n.titleText,a=void 0===o?"Unable to fetch results":o,i=n.helpText,l=void 0===i?"You might want to check your network connection.":i;return r.createElement("div",{className:"DocSearch-ErrorScreen"},r.createElement("div",{className:"DocSearch-Screen-Icon"},r.createElement(Lt,null)),r.createElement("p",{className:"DocSearch-Title"},a),r.createElement("p",{className:"DocSearch-Help"},l))}var Ft=["translations"];function zt(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,Ft),a=n.noResultsText,i=void 0===a?"No results for":a,l=n.suggestedQueryText,c=void 0===l?"Try searching for":l,d=n.reportMissingResultsText,f=void 0===d?"Believe this query should return results?":d,p=n.reportMissingResultsLinkText,m=void 0===p?"Let us know.":p,h=o.state.context.searchSuggestions;return r.createElement("div",{className:"DocSearch-NoResults"},r.createElement("div",{className:"DocSearch-Screen-Icon"},r.createElement(Dt,null)),r.createElement("p",{className:"DocSearch-Title"},i,' "',r.createElement("strong",null,o.state.query),'"'),h&&h.length>0&&r.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},r.createElement("p",{className:"DocSearch-Help"},c,":"),r.createElement("ul",null,h.slice(0,3).reduce((function(e,t){return[].concat(u(e),[r.createElement("li",{key:t},r.createElement("button",{className:"DocSearch-Prefill",key:t,type:"button",onClick:function(){o.setQuery(t.toLowerCase()+" "),o.refresh(),o.inputRef.current.focus()}},t))])}),[]))),o.getMissingResultsUrl&&r.createElement("p",{className:"DocSearch-Help"},"".concat(f," "),r.createElement("a",{href:o.getMissingResultsUrl({query:o.state.query}),target:"_blank",rel:"noopener noreferrer"},m)))}var Bt=["hit","attribute","tagName"];function $t(e,t){return t.split(".").reduce((function(e,t){return null!=e&&e[t]?e[t]:null}),e)}function Ut(e){var t=e.hit,n=e.attribute,o=e.tagName,i=void 0===o?"span":o,l=s(e,Bt);return(0,r.createElement)(i,a(a({},l),{},{dangerouslySetInnerHTML:{__html:$t(t,"_snippetResult.".concat(n,".value"))||$t(t,n)}}))}function Ht(e){return e.collection&&0!==e.collection.items.length?r.createElement("section",{className:"DocSearch-Hits"},r.createElement("div",{className:"DocSearch-Hit-source"},e.title),r.createElement("ul",e.getListProps(),e.collection.items.map((function(t,n){return r.createElement(qt,l({key:[e.title,t.objectID].join(":"),item:t,index:n},e))})))):null}function qt(e){var t=e.item,n=e.index,o=e.renderIcon,a=e.renderAction,i=e.getItemProps,s=e.onItemClick,u=e.collection,d=e.hitComponent,f=c(r.useState(!1),2),p=f[0],m=f[1],h=c(r.useState(!1),2),g=h[0],y=h[1],b=r.useRef(null),v=d;return r.createElement("li",l({className:["DocSearch-Hit",t.__docsearch_parent&&"DocSearch-Hit--Child",p&&"DocSearch-Hit--deleting",g&&"DocSearch-Hit--favoriting"].filter(Boolean).join(" "),onTransitionEnd:function(){b.current&&b.current()}},i({item:t,source:u.source,onClick:function(e){s(t,e)}})),r.createElement(v,{hit:t},r.createElement("div",{className:"DocSearch-Hit-Container"},o({item:t,index:n}),t.hierarchy[t.type]&&"lvl1"===t.type&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.lvl1"}),t.content&&r.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"content"})),t.hierarchy[t.type]&&("lvl2"===t.type||"lvl3"===t.type||"lvl4"===t.type||"lvl5"===t.type||"lvl6"===t.type)&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.".concat(t.type)}),r.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),"content"===t.type&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"content"}),r.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),a({item:t,runDeleteTransition:function(e){m(!0),b.current=e},runFavoriteTransition:function(e){y(!0),b.current=e}}))))}function Vt(e,t,n){return e.reduce((function(e,r){var o=t(r);return e.hasOwnProperty(o)||(e[o]=[]),e[o].length<(n||5)&&e[o].push(r),e}),{})}function Wt(e){return e}function Gt(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}function Kt(){}var Yt=/(<mark>|<\/mark>)/g,Qt=RegExp(Yt.source);function Zt(e){var t,n,r=e;if(!r.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var o=((r.__docsearch_parent?null===(t=r.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(n=e._highlightResult)||void 0===n||null===(n=n.hierarchy)||void 0===n?void 0:n.lvl0)||{}).value;return o&&Qt.test(o)?o.replace(Yt,""):o}function Xt(e){return r.createElement("div",{className:"DocSearch-Dropdown-Container"},e.state.collections.map((function(t){if(0===t.items.length)return null;var n=Zt(t.items[0]);return r.createElement(Ht,l({},e,{key:t.source.sourceId,title:n,collection:t,renderIcon:function(e){var n,o=e.item,a=e.index;return r.createElement(r.Fragment,null,o.__docsearch_parent&&r.createElement("svg",{className:"DocSearch-Hit-Tree",viewBox:"0 0 24 54"},r.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},o.__docsearch_parent!==(null===(n=t.items[a+1])||void 0===n?void 0:n.__docsearch_parent)?r.createElement("path",{d:"M8 6v21M20 27H8.3"}):r.createElement("path",{d:"M8 6v42M20 27H8.3"}))),r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement(Pt,{type:o.type})))},renderAction:function(){return r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement(Tt,null))}}))})),e.resultsFooterComponent&&r.createElement("section",{className:"DocSearch-HitsFooter"},r.createElement(e.resultsFooterComponent,{state:e.state})))}var Jt=["translations"];function en(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,Jt),a=n.recentSearchesTitle,i=void 0===a?"Recent":a,c=n.noRecentSearchesText,u=void 0===c?"No recent searches":c,d=n.saveRecentSearchButtonTitle,f=void 0===d?"Save this search":d,p=n.removeRecentSearchButtonTitle,m=void 0===p?"Remove this search from history":p,h=n.favoriteSearchesTitle,g=void 0===h?"Favorite":h,y=n.removeFavoriteSearchButtonTitle,b=void 0===y?"Remove this search from favorites":y;return"idle"===o.state.status&&!1===o.hasCollections?o.disableUserPersonalization?null:r.createElement("div",{className:"DocSearch-StartScreen"},r.createElement("p",{className:"DocSearch-Help"},u)):!1===o.hasCollections?null:r.createElement("div",{className:"DocSearch-Dropdown-Container"},r.createElement(Ht,l({},o,{title:i,collection:o.state.collections[0],renderIcon:function(){return r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement(Ct,null))},renderAction:function(e){var t=e.item,n=e.runFavoriteTransition,a=e.runDeleteTransition;return r.createElement(r.Fragment,null,r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement("button",{className:"DocSearch-Hit-action-button",title:f,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.add(t),o.recentSearches.remove(t),o.refresh()}))}},r.createElement(Rt,null))),r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement("button",{className:"DocSearch-Hit-action-button",title:m,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),a((function(){o.recentSearches.remove(t),o.refresh()}))}},r.createElement(At,null))))}})),r.createElement(Ht,l({},o,{title:g,collection:o.state.collections[1],renderIcon:function(){return r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement(Rt,null))},renderAction:function(e){var t=e.item,n=e.runDeleteTransition;return r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement("button",{className:"DocSearch-Hit-action-button",title:b,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.remove(t),o.refresh()}))}},r.createElement(At,null)))}})))}var tn=["translations"],nn=r.memo((function(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,tn);if("error"===o.state.status)return r.createElement(Mt,{translations:null==n?void 0:n.errorScreen});var a=o.state.collections.some((function(e){return e.items.length>0}));return o.state.query?!1===a?r.createElement(zt,l({},o,{translations:null==n?void 0:n.noResultsScreen})):r.createElement(Xt,o):r.createElement(en,l({},o,{hasCollections:a,translations:null==n?void 0:n.startScreen}))}),(function(e,t){return"loading"===t.state.status||"stalled"===t.state.status})),rn=["translations"];function on(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,rn),a=n.resetButtonTitle,i=void 0===a?"Clear the query":a,c=n.resetButtonAriaLabel,u=void 0===c?"Clear the query":c,d=n.cancelButtonText,f=void 0===d?"Cancel":d,p=n.cancelButtonAriaLabel,h=void 0===p?"Cancel":p,g=n.searchInputLabel,y=void 0===g?"Search":g,b=o.getFormProps({inputElement:o.inputRef.current}).onReset;return r.useEffect((function(){o.autoFocus&&o.inputRef.current&&o.inputRef.current.focus()}),[o.autoFocus,o.inputRef]),r.useEffect((function(){o.isFromSelection&&o.inputRef.current&&o.inputRef.current.select()}),[o.isFromSelection,o.inputRef]),r.createElement(r.Fragment,null,r.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:b},r.createElement("label",l({className:"DocSearch-MagnifierLabel"},o.getLabelProps()),r.createElement(m,null),r.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},y)),r.createElement("div",{className:"DocSearch-LoadingIndicator"},r.createElement(Ot,null)),r.createElement("input",l({className:"DocSearch-Input",ref:o.inputRef},o.getInputProps({inputElement:o.inputRef.current,autoFocus:o.autoFocus,maxLength:64}))),r.createElement("button",{type:"reset",title:i,className:"DocSearch-Reset","aria-label":u,hidden:!o.state.query},r.createElement(At,null))),r.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":h,onClick:o.onClose},f))}var an=["_highlightResult","_snippetResult"];function ln(e){var t=e.key,n=e.limit,r=void 0===n?5:n,o=function(e){return!1===function(){var e="__TEST_KEY__";try{return localStorage.setItem(e,""),localStorage.removeItem(e),!0}catch(e){return!1}}()?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){return window.localStorage.setItem(e,JSON.stringify(t))},getItem:function(){var t=window.localStorage.getItem(e);return t?JSON.parse(t):[]}}}(t),a=o.getItem().slice(0,r);return{add:function(e){var t=e,n=(t._highlightResult,t._snippetResult,s(t,an)),i=a.findIndex((function(e){return e.objectID===n.objectID}));i>-1&&a.splice(i,1),a.unshift(n),a=a.slice(0,r),o.setItem(a)},remove:function(e){a=a.filter((function(t){return t.objectID!==e.objectID})),o.setItem(a)},getAll:function(){return a}}}function sn(e){const t=`algoliasearch-client-js-${e.key}`;let n;const r=()=>(void 0===n&&(n=e.localStorage||window.localStorage),n),o=()=>JSON.parse(r().getItem(t)||"{}"),a=e=>{r().setItem(t,JSON.stringify(e))};return{get:(t,n,r={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>{(()=>{const t=e.timeToLive?1e3*e.timeToLive:null,n=o(),r=Object.fromEntries(Object.entries(n).filter((([,e])=>void 0!==e.timestamp)));if(a(r),!t)return;const i=Object.fromEntries(Object.entries(r).filter((([,e])=>{const n=(new Date).getTime();return!(e.timestamp+t<n)})));a(i)})();const n=JSON.stringify(t);return o()[n]})).then((e=>Promise.all([e?e.value:n(),void 0!==e]))).then((([e,t])=>Promise.all([e,t||r.miss(e)]))).then((([e])=>e)),set:(e,n)=>Promise.resolve().then((()=>{const a=o();return a[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:n},r().setItem(t,JSON.stringify(a)),n})),delete:e=>Promise.resolve().then((()=>{const n=o();delete n[JSON.stringify(e)],r().setItem(t,JSON.stringify(n))})),clear:()=>Promise.resolve().then((()=>{r().removeItem(t)}))}}function cn(e){const t=[...e.caches],n=t.shift();return void 0===n?{get:(e,t,n={miss:()=>Promise.resolve()})=>t().then((e=>Promise.all([e,n.miss(e)]))).then((([e])=>e)),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,r,o={miss:()=>Promise.resolve()})=>n.get(e,r,o).catch((()=>cn({caches:t}).get(e,r,o))),set:(e,r)=>n.set(e,r).catch((()=>cn({caches:t}).set(e,r))),delete:e=>n.delete(e).catch((()=>cn({caches:t}).delete(e))),clear:()=>n.clear().catch((()=>cn({caches:t}).clear()))}}function un(e={serializable:!0}){let t={};return{get(n,r,o={miss:()=>Promise.resolve()}){const a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);const i=r(),l=o&&o.miss||(()=>Promise.resolve());return i.then((e=>l(e))).then((()=>i))},set:(n,r)=>(t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}function dn(e){let t=e.length-1;for(;t>0;t--){const n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}function fn(e,t){return t?(Object.keys(t).forEach((n=>{e[n]=t[n](e)})),e):e}function pn(e,...t){let n=0;return e.replace(/%s/g,(()=>encodeURIComponent(t[n++])))}const mn={WithinQueryParameters:0,WithinHeaders:1};function hn(e,t){const n=e||{},r=n.data||{};return Object.keys(n).forEach((e=>{-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(e)&&(r[e]=n[e])})),{data:Object.entries(r).length>0?r:void 0,timeout:n.timeout||t,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}const gn={Read:1,Write:2,Any:3},yn=1,bn=3;function vn(e,t=yn){return{...e,status:t,lastUpdate:Date.now()}}function wn(e){return"string"==typeof e?{protocol:"https",url:e,accept:gn.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||gn.Any}}const Sn="GET",kn="POST";function xn(e,t,n,r){const o=[],a=function(e,t){if(e.method===Sn||void 0===e.data&&void 0===t.data)return;const n=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(n)}(n,r),i=function(e,t){const n={...e.headers,...t.headers},r={};return Object.keys(n).forEach((e=>{const t=n[e];r[e.toLowerCase()]=t})),r}(e,r),l=n.method,s=n.method!==Sn?{}:{...n.data,...r.data},c={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...s,...r.queryParameters};let u=0;const d=(t,s)=>{const f=t.pop();if(void 0===f)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:Cn(o)};const p={data:a,headers:i,method:l,url:_n(f,n.path,c),connectTimeout:s(u,e.timeouts.connect),responseTimeout:s(u,r.timeout)},m=e=>{const n={request:p,response:e,host:f,triesLeft:t.length};return o.push(n),n},h={onSuccess:e=>function(e){try{return JSON.parse(e.content)}catch(t){throw function(e,t){return{name:"DeserializationError",message:e,response:t}}(t.message,e)}}(e),onRetry(n){const r=m(n);return n.isTimedOut&&u++,Promise.all([e.logger.info("Retryable failure",An(r)),e.hostsCache.set(f,vn(f,n.isTimedOut?bn:2))]).then((()=>d(t,s)))},onFail(e){throw m(e),function({content:e,status:t},n){let r=e;try{r=JSON.parse(e).message}catch(e){}return function(e,t,n){return{name:"ApiError",message:e,status:t,transporterStackTrace:n}}(r,t,n)}(e,Cn(o))}};return e.requester.send(p).then((e=>((e,t)=>(e=>{const t=e.status;return e.isTimedOut||(({isTimedOut:e,status:t})=>!e&&!~~t)(e)||2!=~~(t/100)&&4!=~~(t/100)})(e)?t.onRetry(e):(({status:e})=>2==~~(e/100))(e)?t.onSuccess(e):t.onFail(e))(e,h)))};return function(e,t){return Promise.all(t.map((t=>e.get(t,(()=>Promise.resolve(vn(t))))))).then((e=>{const n=e.filter((e=>function(e){return e.status===yn||Date.now()-e.lastUpdate>12e4}(e))),r=e.filter((e=>function(e){return e.status===bn&&Date.now()-e.lastUpdate<=12e4}(e))),o=[...n,...r];return{getTimeout:(e,t)=>(0===r.length&&0===e?1:r.length+3+e)*t,statelessHosts:o.length>0?o.map((e=>wn(e))):t}}))}(e.hostsCache,t).then((e=>d([...e.statelessHosts].reverse(),e.getTimeout)))}function En(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const n=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(n)&&(t.value=`${t.value}${n}`),t}};return t}function _n(e,t,n){const r=On(n);let o=`${e.protocol}://${e.url}/${"/"===t.charAt(0)?t.substr(1):t}`;return r.length&&(o+=`?${r}`),o}function On(e){return Object.keys(e).map((t=>{return pn("%s=%s",t,(n=e[t],"[object Object]"===Object.prototype.toString.call(n)||"[object Array]"===Object.prototype.toString.call(n)?JSON.stringify(e[t]):e[t]));var n})).join("&")}function Cn(e){return e.map((e=>An(e)))}function An(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}const Tn=e=>{const t=e.appId,n=function(e,t,n){const r={"x-algolia-api-key":n,"x-algolia-application-id":t};return{headers:()=>e===mn.WithinHeaders?r:{},queryParameters:()=>e===mn.WithinQueryParameters?r:{}}}(void 0!==e.authMode?e.authMode:mn.WithinHeaders,t,e.apiKey),r=function(e){const{hostsCache:t,logger:n,requester:r,requestsCache:o,responsesCache:a,timeouts:i,userAgent:l,hosts:s,queryParameters:c,headers:u}=e,d={hostsCache:t,logger:n,requester:r,requestsCache:o,responsesCache:a,timeouts:i,userAgent:l,headers:u,queryParameters:c,hosts:s.map((e=>wn(e))),read(e,t){const n=hn(t,d.timeouts.read),r=()=>xn(d,d.hosts.filter((e=>!!(e.accept&gn.Read))),e,n);if(!0!==(void 0!==n.cacheable?n.cacheable:e.cacheable))return r();const o={request:e,mappedRequestOptions:n,transporter:{queryParameters:d.queryParameters,headers:d.headers}};return d.responsesCache.get(o,(()=>d.requestsCache.get(o,(()=>d.requestsCache.set(o,r()).then((e=>Promise.all([d.requestsCache.delete(o),e])),(e=>Promise.all([d.requestsCache.delete(o),Promise.reject(e)]))).then((([e,t])=>t))))),{miss:e=>d.responsesCache.set(o,e)})},write:(e,t)=>xn(d,d.hosts.filter((e=>!!(e.accept&gn.Write))),e,hn(t,d.timeouts.write))};return d}({hosts:[{url:`${t}-dsn.algolia.net`,accept:gn.Read},{url:`${t}.algolia.net`,accept:gn.Write}].concat(dn([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...n.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),o={transporter:r,appId:t,addAlgoliaAgent(e,t){r.userAgent.add({segment:e,version:t})},clearCache:()=>Promise.all([r.requestsCache.clear(),r.responsesCache.clear()]).then((()=>{}))};return fn(o,e.methods)},jn=e=>(t,n)=>t.method===Sn?e.transporter.read(t,n):e.transporter.write(t,n),Pn=e=>(t,n={})=>fn({transporter:e.transporter,appId:e.appId,indexName:t},n.methods),In=e=>(t,n)=>{const r=t.map((e=>({...e,params:On(e.params||{})})));return e.transporter.read({method:kn,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)},Nn=e=>(t,n)=>Promise.all(t.map((t=>{const{facetName:r,facetQuery:o,...a}=t.params;return Pn(e)(t.indexName,{methods:{searchForFacetValues:Dn}}).searchForFacetValues(r,o,{...n,...a})}))),Rn=e=>(t,n,r)=>e.transporter.read({method:kn,path:pn("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:n},cacheable:!0},r),Ln=e=>(t,n)=>e.transporter.read({method:kn,path:pn("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},n),Dn=e=>(t,n,r)=>e.transporter.read({method:kn,path:pn("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:n},cacheable:!0},r),Mn=1,Fn=2,zn=3;function Bn(e,t,n){const r={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:e=>new Promise((t=>{const n=new XMLHttpRequest;n.open(e.method,e.url,!0),Object.keys(e.headers).forEach((t=>n.setRequestHeader(t,e.headers[t])));const r=(e,r)=>setTimeout((()=>{n.abort(),t({status:0,content:r,isTimedOut:!0})}),1e3*e),o=r(e.connectTimeout,"Connection timeout");let a;n.onreadystatechange=()=>{n.readyState>n.OPENED&&void 0===a&&(clearTimeout(o),a=r(e.responseTimeout,"Socket timeout"))},n.onerror=()=>{0===n.status&&(clearTimeout(o),clearTimeout(a),t({content:n.responseText||"Network request failed",status:n.status,isTimedOut:!1}))},n.onload=()=>{clearTimeout(o),clearTimeout(a),t({content:n.responseText,status:n.status,isTimedOut:!1})},n.send(e.data)}))},logger:(o=zn,{debug:(e,t)=>(Mn>=o&&console.debug(e,t),Promise.resolve()),info:(e,t)=>(Fn>=o&&console.info(e,t),Promise.resolve()),error:(e,t)=>(console.error(e,t),Promise.resolve())}),responsesCache:un(),requestsCache:un({serializable:!1}),hostsCache:cn({caches:[sn({key:`4.19.1-${e}`}),un()]}),userAgent:En("4.19.1").add({segment:"Browser",version:"lite"}),authMode:mn.WithinQueryParameters};var o;return Tn({...r,...n,methods:{search:In,searchForFacetValues:Nn,multipleQueries:In,multipleSearchForFacetValues:Nn,customRequest:jn,initIndex:e=>t=>Pn(e)(t,{methods:{search:Ln,searchForFacetValues:Dn,findAnswers:Rn}})}})}Bn.version="4.19.1";var $n=["footer","searchBox"];function Un(e){var t=e.appId,n=e.apiKey,o=e.indexName,i=e.placeholder,u=void 0===i?"Search docs":i,d=e.searchParameters,f=e.maxResultsPerGroup,p=e.onClose,m=void 0===p?Kt:p,h=e.transformItems,g=void 0===h?Wt:h,y=e.hitComponent,b=void 0===y?_t:y,v=e.resultsFooterComponent,w=void 0===v?function(){return null}:v,S=e.navigator,k=e.initialScrollY,x=void 0===k?0:k,E=e.transformSearchClient,_=void 0===E?Wt:E,O=e.disableUserPersonalization,C=void 0!==O&&O,A=e.initialQuery,T=void 0===A?"":A,j=e.translations,P=void 0===j?{}:j,I=e.getMissingResultsUrl,N=e.insights,R=void 0!==N&&N,L=P.footer,D=P.searchBox,M=s(P,$n),F=c(r.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),z=F[0],B=F[1],$=r.useRef(null),U=r.useRef(null),H=r.useRef(null),q=r.useRef(null),V=r.useRef(null),W=r.useRef(10),G=r.useRef("undefined"!=typeof window?window.getSelection().toString().slice(0,64):"").current,K=r.useRef(T||G).current,Y=function(e,t,n){return r.useMemo((function(){var r=Bn(e,t);return r.addAlgoliaAgent("docsearch","3.6.1"),!1===/docsearch.js \(.*\)/.test(r.transporter.userAgent.value)&&r.addAlgoliaAgent("docsearch-react","3.6.1"),n(r)}),[e,t,n])}(t,n,_),Q=r.useRef(ln({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(o),limit:10})).current,Z=r.useRef(ln({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(o),limit:0===Q.getAll().length?7:4})).current,X=r.useCallback((function(e){if(!C){var t="content"===e.type?e.__docsearch_parent:e;t&&-1===Q.getAll().findIndex((function(e){return e.objectID===t.objectID}))&&Z.add(t)}}),[Q,Z,C]),J=r.useCallback((function(e){if(z.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,n={eventName:"Item Selected",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};z.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(n)}}),[z.context.algoliaInsightsPlugin]),ee=r.useMemo((function(){return St({id:"docsearch",defaultActiveItemId:0,placeholder:u,openOnFocus:!0,initialState:{query:K,context:{searchSuggestions:[]}},insights:R,navigator:S,onStateChange:function(e){B(e.state)},getSources:function(e){var r=e.query,i=e.state,l=e.setContext,s=e.setStatus;if(!r)return C?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,n=e.event;X(t),Gt(n)||m()},getItemUrl:function(e){return e.item.url},getItems:function(){return Z.getAll()}},{sourceId:"favoriteSearches",onSelect:function(e){var t=e.item,n=e.event;X(t),Gt(n)||m()},getItemUrl:function(e){return e.item.url},getItems:function(){return Q.getAll()}}];var c=Boolean(R);return Y.search([{query:r,indexName:o,params:a({attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat(W.current),"hierarchy.lvl2:".concat(W.current),"hierarchy.lvl3:".concat(W.current),"hierarchy.lvl4:".concat(W.current),"hierarchy.lvl5:".concat(W.current),"hierarchy.lvl6:".concat(W.current),"content:".concat(W.current)],snippetEllipsisText:"\u2026",highlightPreTag:"<mark>",highlightPostTag:"</mark>",hitsPerPage:20,clickAnalytics:c},d)}]).catch((function(e){throw"RetryError"===e.name&&s("error"),e})).then((function(e){var r=e.results[0],s=r.hits,u=r.nbHits,d=Vt(s,(function(e){return Zt(e)}),f);i.context.searchSuggestions.length<Object.keys(d).length&&l({searchSuggestions:Object.keys(d)}),l({nbHits:u});var p={};return c&&(p={__autocomplete_indexName:o,__autocomplete_queryID:r.queryID,__autocomplete_algoliaCredentials:{appId:t,apiKey:n}}),Object.values(d).map((function(e,t){return{sourceId:"hits".concat(t),onSelect:function(e){var t=e.item,n=e.event;X(t),Gt(n)||m()},getItemUrl:function(e){return e.item.url},getItems:function(){return Object.values(Vt(e,(function(e){return e.hierarchy.lvl1}),f)).map(g).map((function(e){return e.map((function(t){var n=null,r=e.find((function(e){return"lvl1"===e.type&&e.hierarchy.lvl1===t.hierarchy.lvl1}));return"lvl1"!==t.type&&r&&(n=r),a(a({},t),{},{__docsearch_parent:n},p)}))})).flat()}}}))}))}})}),[o,d,f,Y,m,Z,Q,X,K,u,S,g,C,R,t,n]),te=ee.getEnvironmentProps,ne=ee.getRootProps,re=ee.refresh;return function(e){var t=e.getEnvironmentProps,n=e.panelElement,o=e.formElement,a=e.inputElement;r.useEffect((function(){if(n&&o&&a){var e=t({panelElement:n,formElement:o,inputElement:a}),r=e.onTouchStart,i=e.onTouchMove;return window.addEventListener("touchstart",r),window.addEventListener("touchmove",i),function(){window.removeEventListener("touchstart",r),window.removeEventListener("touchmove",i)}}}),[t,n,o,a])}({getEnvironmentProps:te,panelElement:q.current,formElement:H.current,inputElement:V.current}),function(e){var t=e.container;r.useEffect((function(){if(t){var e=t.querySelectorAll("a[href]:not([disabled]), button:not([disabled]), input:not([disabled])"),n=e[0],r=e[e.length-1];return t.addEventListener("keydown",o),function(){t.removeEventListener("keydown",o)}}function o(e){"Tab"===e.key&&(e.shiftKey?document.activeElement===n&&(e.preventDefault(),r.focus()):document.activeElement===r&&(e.preventDefault(),n.focus()))}}),[t])}({container:$.current}),r.useEffect((function(){return document.body.classList.add("DocSearch--active"),function(){var e,t;document.body.classList.remove("DocSearch--active"),null===(e=(t=window).scrollTo)||void 0===e||e.call(t,0,x)}}),[]),r.useEffect((function(){window.matchMedia("(max-width: 768px)").matches&&(W.current=5)}),[]),r.useEffect((function(){q.current&&(q.current.scrollTop=0)}),[z.query]),r.useEffect((function(){K.length>0&&(re(),V.current&&V.current.focus())}),[K,re]),r.useEffect((function(){function e(){if(U.current){var e=.01*window.innerHeight;U.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[]),r.createElement("div",l({ref:$},ne({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===z.status&&"DocSearch-Container--Stalled","error"===z.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&m()}}),r.createElement("div",{className:"DocSearch-Modal",ref:U},r.createElement("header",{className:"DocSearch-SearchBar",ref:H},r.createElement(on,l({},ee,{state:z,autoFocus:0===K.length,inputRef:V,isFromSelection:Boolean(K)&&K===G,translations:D,onClose:m}))),r.createElement("div",{className:"DocSearch-Dropdown",ref:q},r.createElement(nn,l({},ee,{indexName:o,state:z,hitComponent:b,resultsFooterComponent:w,disableUserPersonalization:C,recentSearches:Z,favoriteSearches:Q,inputRef:V,translations:M,getMissingResultsUrl:I,onItemClick:function(e,t){J(e),X(e),Gt(t)||m()}}))),r.createElement("footer",{className:"DocSearch-Footer"},r.createElement(Et,{translations:L}))))}function Hn(e){var t=e.isOpen,n=e.onOpen,o=e.onClose,a=e.onInput,i=e.searchButtonRef;r.useEffect((function(){function e(e){var r;(27===e.keyCode&&t||"k"===(null===(r=e.key)||void 0===r?void 0:r.toLowerCase())&&(e.metaKey||e.ctrlKey)||!function(e){var t=e.target,n=t.tagName;return t.isContentEditable||"INPUT"===n||"SELECT"===n||"TEXTAREA"===n}(e)&&"/"===e.key&&!t)&&(e.preventDefault(),t?o():document.body.classList.contains("DocSearch--active")||document.body.classList.contains("DocSearch--active")||n()),i&&i.current===document.activeElement&&a&&/[a-zA-Z0-9]/.test(String.fromCharCode(e.keyCode))&&a(e)}return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[t,n,o,a,i])}},8797:(e,t,n)=>{var r={"./prism-bash":8520,"./prism-toml":6290};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=8797},9885:(e,t,n)=>{"use strict";n.d(t,{A:()=>f});n(758);var r=n(8629),o=n.n(r),a=n(4054);const i={"0018adbe":[()=>n.e(6940).then(n.bind(n,9578)),"@site/docs/04-build/00-quickstart.mdx",9578],"01954a18":[()=>n.e(7838).then(n.bind(n,7073)),"@site/docs/05-contribute/01-github.mdx",7073],"0b38cd53":[()=>n.e(6673).then(n.bind(n,507)),"@site/docs/02-learn/04-advanced-concepts/01-specialized-nodes.mdx",507],13477880:[()=>n.e(105).then(n.bind(n,6778)),"@site/docs/01-explore/06-awesome-projects/01-only-peers.mdx",6778],"150624dd":[()=>n.e(2329).then(n.bind(n,2397)),"@site/docs/02-learn/01-terminology.mdx",2397],"15a7497e":[()=>n.e(7476).then(n.bind(n,4682)),"@site/docs/04-build/01-protocol-sdks/01-protocol-sdk.mdx",4682],17896441:[()=>Promise.all([n.e(1869),n.e(713),n.e(8401)]).then(n.bind(n,9846)),"@theme/DocItem",9846],"190ec3a6":[()=>n.e(7707).then(n.bind(n,8026)),"@site/docs/02-learn/03-core-concepts/02-node/admin-api.mdx",8026],"1a4e3797":[()=>Promise.all([n.e(1869),n.e(2138)]).then(n.bind(n,5716)),"@theme/SearchPage",5716],"1db5d8e2":[()=>n.e(9650).then(n.bind(n,8136)),"@site/docs/03-getting-started/02-admin-dashboard.mdx",8136],"1df93b7f":[()=>Promise.all([n.e(1869),n.e(4583)]).then(n.bind(n,8203)),"@site/src/pages/index.tsx",8203],"22dd74f7":[()=>n.e(1567).then(n.t.bind(n,5226,19)),"@generated/docusaurus-plugin-content-docs/default/p/index-466.json",5226],"22e91f41":[()=>n.e(317).then(n.bind(n,1647)),"@site/docs/01-explore/06-awesome-projects/02-rock-paper-scissors.mdx",1647],"2e1d06d3":[()=>n.e(9502).then(n.bind(n,8582)),"@site/docs/04-build/04-dev-mode.mdx",8582],"3b38d041":[()=>n.e(8048).then(n.bind(n,4881)),"@site/docs/04-build/01-protocol-sdks/02-protocol-rs-sdk.mdx",4881],"42b3b6e0":[()=>n.e(6391).then(n.bind(n,1010)),"@site/docs/01-explore/01-intro.mdx",1010],"514a65da":[()=>n.e(3182).then(n.bind(n,5081)),"@site/docs/02-learn/03-core-concepts/02-node/04-storage.mdx",5081],"5af830f1":[()=>n.e(1337).then(n.bind(n,7247)),"@site/docs/01-explore/04-why-not/02-ipfs.mdx",7247],"5b892390":[()=>n.e(8725).then(n.bind(n,9971)),"@site/docs/02-learn/03-core-concepts/02-node/02-runtime.mdx",9971],"5e95c892":[()=>n.e(9647).then(n.bind(n,5010)),"@theme/DocsRoot",5010],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,4784)),"@generated/docusaurus.config",4784],"607ff301":[()=>n.e(7610).then(n.bind(n,5520)),"@site/docs/04-build/02-client-sdks/02-client-ts-sdk.mdx",5520],"61c19dbb":[()=>n.e(1367).then(n.bind(n,6382)),"@site/docs/03-getting-started/01-setup.mdx",6382],"64bee9bd":[()=>n.e(2074).then(n.bind(n,6712)),"@site/docs/02-learn/04-advanced-concepts/02-encryption.mdx",6712],"6a63bb8b":[()=>n.e(5219).then(n.bind(n,7483)),"@site/docs/03-getting-started/03-example-app.mdx",7483],"702ee7bc":[()=>n.e(2408).then(n.bind(n,1452)),"@site/docs/01-explore/03-manifesto.mdx",1452],"73ad1aec":[()=>n.e(7420).then(n.bind(n,3250)),"@site/docs/02-learn/03-core-concepts/02-node/01-client-node.mdx",3250],"7b9fe0bb":[()=>n.e(2822).then(n.bind(n,9007)),"@site/docs/01-explore/05-use-cases/05-trustless-gaming.mdx",9007],"889f3b97":[()=>n.e(5101).then(n.bind(n,6093)),"@site/docs/01-explore/05-use-cases/07-decentralized-identity-verification.mdx",6093],"9471ce52":[()=>n.e(9229).then(n.bind(n,6663)),"@site/docs/02-learn/03-core-concepts/03-applications.mdx",6663],"94b34882":[()=>n.e(3299).then(n.bind(n,4279)),"@site/docs/01-explore/05-use-cases/00-private-dao-management.mdx",4279],"962e3ea7":[()=>n.e(8077).then(n.bind(n,366)),"@site/docs/02-learn/03-core-concepts/02-node/05-network.mdx",366],"96f6c727":[()=>n.e(6373).then(n.bind(n,999)),"@site/docs/01-explore/04-why-not/03-zk.mdx",999],"9bc1354f":[()=>n.e(3208).then(n.bind(n,603)),"@site/docs/01-explore/05-use-cases/06-decentralized-edge-compute.mdx",603],a7456010:[()=>n.e(1235).then(n.t.bind(n,8552,19)),"@generated/docusaurus-plugin-content-pages/default/__plugin.json",8552],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,4047)),"@theme/DocVersionRoot",4047],a9154f55:[()=>n.e(1259).then(n.bind(n,2082)),"@site/docs/01-explore/05-use-cases/08-decentralized-intellectual-property-management.mdx",2082],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,9530)),"@theme/DocRoot",9530],aba21aa0:[()=>n.e(5742).then(n.t.bind(n,7093,19)),"@generated/docusaurus-plugin-content-docs/default/__plugin.json",7093],b9be9bb6:[()=>n.e(8086).then(n.bind(n,729)),"@site/docs/01-explore/05-use-cases/01-decentralized-voting-systems.mdx",729],bc9a0017:[()=>n.e(772).then(n.bind(n,7418)),"@site/docs/01-explore/05-use-cases/03-deprod.mdx",7418],bd9c48a9:[()=>n.e(2039).then(n.bind(n,9376)),"@site/docs/05-contribute/03-bounty-program.mdx",9376],bf6ec8e5:[()=>n.e(7607).then(n.bind(n,1610)),"@site/docs/02-learn/03-core-concepts/01-identity (DID).mdx",1610],c022fa4c:[()=>n.e(7074).then(n.bind(n,7702)),"@site/docs/01-explore/04-why-not/01-blockchain.mdx",7702],c141421f:[()=>n.e(957).then(n.t.bind(n,936,19)),"@generated/docusaurus-theme-search-algolia/default/__plugin.json",936],cc56a0d6:[()=>n.e(3021).then(n.bind(n,4434)),"@site/docs/06-resources/01-community-and-support.mdx",4434],d94758ba:[()=>n.e(21).then(n.bind(n,3630)),"@site/docs/01-explore/05-use-cases/02-decentralized-social-platforms.mdx",3630],e6fe25da:[()=>n.e(9667).then(n.bind(n,1777)),"@site/docs/02-learn/03-core-concepts/02-node/03-server.mdx",1777],e97a01d9:[()=>n.e(449).then(n.bind(n,3280)),"@site/docs/06-resources/02-learning.mdx",3280],f1cd7b65:[()=>n.e(4389).then(n.bind(n,1937)),"@site/docs/04-build/03-publish-app.mdx",1937],f4e7e388:[()=>n.e(1249).then(n.bind(n,1038)),"@site/docs/02-learn/02-architecture.mdx",1038],f582a9aa:[()=>n.e(2226).then(n.bind(n,4798)),"@site/docs/02-learn/03-core-concepts/04-context.mdx",4798],f773e51d:[()=>n.e(5293).then(n.bind(n,6379)),"@site/docs/05-contribute/02-hackathons.mdx",6379],fdb23cd9:[()=>n.e(546).then(n.bind(n,6772)),"@site/docs/01-explore/05-use-cases/04-decentralized-gig-economy.mdx",6772]};var l=n(6070);function s(e){let{error:t,retry:n,pastDelay:r}=e;return t?(0,l.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,l.jsx)("p",{children:String(t)}),(0,l.jsx)("div",{children:(0,l.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):r?(0,l.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,l.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,l.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,l.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,l.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,l.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,l.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,l.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,l.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var c=n(7560),u=n(8743);function d(e,t){if("*"===e)return o()({loading:s,loader:()=>n.e(3130).then(n.bind(n,3130)),modules:["@theme/NotFound"],webpack:()=>[3130],render(e,t){const n=e.default;return(0,l.jsx)(u.W,{value:{plugin:{name:"native",id:"default"}},children:(0,l.jsx)(n,{...t})})}});const r=a[`${e}-${t}`],d={},f=[],p=[],m=(0,c.A)(r);return Object.entries(m).forEach((e=>{let[t,n]=e;const r=i[n];r&&(d[t]=r[0],f.push(r[1]),p.push(r[2]))})),o().Map({loading:s,loader:d,modules:f,webpack:()=>p,render(t,n){const o=JSON.parse(JSON.stringify(r));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let i=o;const l=n.split(".");l.slice(0,-1).forEach((e=>{i=i[e]})),i[l[l.length-1]]=a}));const a=o.__comp;delete o.__comp;const i=o.__context;delete o.__context;const s=o.__props;return delete o.__props,(0,l.jsx)(u.W,{value:i,children:(0,l.jsx)(a,{...o,...s,...n})})}})}const f=[{path:"/search",component:d("/search","5de"),exact:!0},{path:"/",component:d("/","e5f"),exact:!0},{path:"/",component:d("/","1c6"),routes:[{path:"/",component:d("/","dcf"),routes:[{path:"/",component:d("/","e99"),routes:[{path:"/build/client-sdks/client-ts-sdk",component:d("/build/client-sdks/client-ts-sdk","cc7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/dev-mode",component:d("/build/dev-mode","a4c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/protocol-sdks/protocol-rs-sdk",component:d("/build/protocol-sdks/protocol-rs-sdk","2e9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/protocol-sdks/protocol-sdk",component:d("/build/protocol-sdks/protocol-sdk","f7e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/publish-app",component:d("/build/publish-app","884"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/quickstart",component:d("/build/quickstart","acf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/contribute/bounty-program",component:d("/contribute/bounty-program","164"),exact:!0,sidebar:"tutorialSidebar"},{path:"/contribute/github",component:d("/contribute/github","ac4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/contribute/hackathons",component:d("/contribute/hackathons","eb1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/awesome-projects/only-peers",component:d("/explore/awesome-projects/only-peers","222"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/awesome-projects/rock-paper-scissors",component:d("/explore/awesome-projects/rock-paper-scissors","e35"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/intro",component:d("/explore/intro","92c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/manifesto",component:d("/explore/manifesto","527"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-edge-compute",component:d("/explore/use-cases/decentralized-edge-compute","e49"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-gig-economy",component:d("/explore/use-cases/decentralized-gig-economy","7a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-identity-verification",component:d("/explore/use-cases/decentralized-identity-verification","a99"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-intellectual-property-management",component:d("/explore/use-cases/decentralized-intellectual-property-management","10e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-social-platforms",component:d("/explore/use-cases/decentralized-social-platforms","830"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-voting-systems",component:d("/explore/use-cases/decentralized-voting-systems","be7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/deprod",component:d("/explore/use-cases/deprod","05d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/private-daos-management",component:d("/explore/use-cases/private-daos-management","d56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/trustless-gaming",component:d("/explore/use-cases/trustless-gaming","11e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/why-not/blockchain",component:d("/explore/why-not/blockchain","1e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/why-not/ipfs",component:d("/explore/why-not/ipfs","6ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/why-not/zk",component:d("/explore/why-not/zk","25e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/admin-dashboard",component:d("/getting-started/admin-dashboard","8e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/example-app",component:d("/getting-started/example-app","2f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/setup",component:d("/getting-started/setup","206"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/advanced-concepts/encryption",component:d("/learn/advanced-concepts/encryption","975"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/advanced-concepts/specialized-nodes",component:d("/learn/advanced-concepts/specialized-nodes","2d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/architecture",component:d("/learn/architecture","496"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/applications",component:d("/learn/core-concepts/applications","2ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/contexts",component:d("/learn/core-concepts/contexts","0fa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/identity",component:d("/learn/core-concepts/identity","d8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/admin-client-api",component:d("/learn/core-concepts/node/admin-client-api","804"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/client-node",component:d("/learn/core-concepts/node/client-node","02e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/network",component:d("/learn/core-concepts/node/network","4eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/runtime",component:d("/learn/core-concepts/node/runtime","089"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/server",component:d("/learn/core-concepts/node/server","c38"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/storage",component:d("/learn/core-concepts/node/storage","08a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/terminology",component:d("/learn/terminology","7f9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/resources/community-and-support",component:d("/resources/community-and-support","2c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/resources/learning",component:d("/resources/learning","cc6"),exact:!0,sidebar:"tutorialSidebar"}]}]}]},{path:"*",component:d("*")}]},92:(e,t,n)=>{"use strict";n.d(t,{o:()=>a,x:()=>i});var r=n(758),o=n(6070);const a=r.createContext(!1);function i(e){let{children:t}=e;const[n,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{i(!0)}),[]),(0,o.jsx)(a.Provider,{value:n,children:t})}},436:(e,t,n)=>{"use strict";var r=n(758),o=n(9576),a=n(932),i=n(1742),l=n(4784),s=n(7028);const c=[n(6103),n(9270),n(8763),n(7263)];var u=n(9885),d=n(5557),f=n(1977),p=n(6070);function m(e){let{children:t}=e;return(0,p.jsx)(p.Fragment,{children:t})}var h=n(6705),g=n(1299),y=n(3016),b=n(588),v=n(5212),w=n(8425),S=n(862),k=n(5289),x=n(1729),E=n(8796);function _(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,g.A)(),r=(0,w.o)(),o=n[e].htmlLang,a=e=>e.replace("-","_");return(0,p.jsxs)(h.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,p.jsx)("meta",{property:"og:locale",content:a(o)}),Object.values(n).filter((e=>o!==e.htmlLang)).map((e=>(0,p.jsx)("meta",{property:"og:locale:alternate",content:a(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function O(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,g.A)(),r=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,g.A)(),{pathname:r}=(0,d.zy)();return e+(0,x.Ks)((0,y.Ay)(r),{trailingSlash:n,baseUrl:t})}(),o=t?`${n}${t}`:r;return(0,p.jsxs)(h.A,{children:[(0,p.jsx)("meta",{property:"og:url",content:o}),(0,p.jsx)("link",{rel:"canonical",href:o})]})}function C(){const{i18n:{currentLocale:e}}=(0,g.A)(),{metadata:t,image:n}=(0,b.p)();return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(h.A,{children:[(0,p.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,p.jsx)("body",{className:S.w})]}),n&&(0,p.jsx)(v.be,{image:n}),(0,p.jsx)(O,{}),(0,p.jsx)(_,{}),(0,p.jsx)(E.A,{tag:k.C,locale:e}),(0,p.jsx)(h.A,{children:t.map(((e,t)=>(0,p.jsx)("meta",{...e},t)))})]})}const A=new Map;var T=n(92),j=n(7926),P=n(8962);function I(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const o=c.map((t=>{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>o.forEach((e=>e?.()))}const N=function(e){let{children:t,location:n,previousLocation:r}=e;return(0,P.A)((()=>{r!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,o=t.hash===n.hash,a=t.search===n.search;if(r&&o&&!a)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:r}),I("onRouteDidUpdate",{previousLocation:r,location:n}))}),[r,n]),t};function R(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,f.u)(u.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class L extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=s.A.canUseDOM?I("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=I("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),R(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,p.jsx)(N,{previousLocation:this.previousLocation,location:t,children:(0,p.jsx)(d.qh,{location:t,render:()=>e})})}}const D=L,M="__docusaurus-base-url-issue-banner-container",F="__docusaurus-base-url-issue-banner",z="__docusaurus-base-url-issue-banner-suggestion-container";function B(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '${M}';\n var bannerHtml = ${JSON.stringify(function(e){return`\n<div id="${F}" style="border: thick solid red; background-color: rgb(255, 230, 179); margin: 20px; padding: 20px; font-size: 20px;">\n <p style="font-weight: bold; font-size: 30px;">Your Docusaurus site did not load properly.</p>\n <p>A very common reason is a wrong site <a href="https://docusaurus.io/docs/docusaurus.config.js/#baseUrl" style="font-weight: bold;">baseUrl configuration</a>.</p>\n <p>Current configured baseUrl = <span style="font-weight: bold; color: red;">${e}</span> ${"/"===e?" (default value)":""}</p>\n <p>We suggest trying baseUrl = <span id="${z}" style="font-weight: bold; color: green;"></span></p>\n</div>\n`}(e)).replace(/</g,"\\<")};\n bannerContainer.innerHTML = bannerHtml;\n document.body.prepend(bannerContainer);\n var suggestionContainer = document.getElementById('${z}');\n var actualHomePagePath = window.location.pathname;\n var suggestedBaseUrl = actualHomePagePath.substr(-1) === '/'\n ? actualHomePagePath\n : actualHomePagePath + '/';\n suggestionContainer.innerHTML = suggestedBaseUrl;\n}\n`}function $(){const{siteConfig:{baseUrl:e}}=(0,g.A)();return(0,p.jsx)(p.Fragment,{children:!s.A.canUseDOM&&(0,p.jsx)(h.A,{children:(0,p.jsx)("script",{children:B(e)})})})}function U(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,g.A)(),{pathname:n}=(0,d.zy)();return t&&n===e?(0,p.jsx)($,{}):null}function H(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:r,localeConfigs:o}}=(0,g.A)(),a=(0,y.Ay)(e),{htmlLang:i,direction:l}=o[r];return(0,p.jsxs)(h.A,{children:[(0,p.jsx)("html",{lang:i,dir:l}),(0,p.jsx)("title",{children:t}),(0,p.jsx)("meta",{property:"og:title",content:t}),(0,p.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&(0,p.jsx)("meta",{name:"robots",content:"noindex, nofollow"}),e&&(0,p.jsx)("link",{rel:"icon",href:a})]})}var q=n(6980),V=n(7114);function W(){const e=(0,V.A)();return(0,p.jsx)(h.A,{children:(0,p.jsx)("html",{"data-has-hydrated":e})})}const G=(0,f.v)(u.A);function K(){const e=function(e){if(A.has(e.pathname))return{...e,pathname:A.get(e.pathname)};if((0,f.u)(u.A,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return A.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return A.set(e.pathname,t),{...e,pathname:t}}((0,d.zy)());return(0,p.jsx)(D,{location:e,children:G})}function Y(){return(0,p.jsx)(q.A,{children:(0,p.jsx)(j.l,{children:(0,p.jsxs)(T.x,{children:[(0,p.jsxs)(m,{children:[(0,p.jsx)(H,{}),(0,p.jsx)(C,{}),(0,p.jsx)(U,{}),(0,p.jsx)(K,{})]}),(0,p.jsx)(W,{})]})})})}var Q=n(4054);const Z=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;o?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var X=n(7560);const J=new Set,ee=new Set,te=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ne={prefetch:e=>{if(!(e=>!te()&&!ee.has(e)&&!J.has(e))(e))return!1;J.add(e);const t=(0,f.u)(u.A,e).flatMap((e=>{return t=e.route.path,Object.entries(Q).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,X.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Z(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!te()&&!ee.has(e))(e)&&(ee.add(e),R(e))},re=Object.freeze(ne);function oe(e){let{children:t}=e;return"hash"===l.default.future.experimental_router?(0,p.jsx)(i.I9,{children:t}):(0,p.jsx)(i.Kd,{children:t})}const ae=Boolean(!0);if(s.A.canUseDOM){window.docusaurus=re;const e=document.getElementById("__docusaurus"),t=(0,p.jsx)(a.vd,{children:(0,p.jsx)(oe,{children:(0,p.jsx)(Y,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},i=()=>{if(window.docusaurusRoot)window.docusaurusRoot.render(t);else if(ae)window.docusaurusRoot=o.hydrateRoot(e,t,{onRecoverableError:n});else{const r=o.createRoot(e,{onRecoverableError:n});r.render(t),window.docusaurusRoot=r}};R(window.location.pathname).then((()=>{(0,r.startTransition)(i)}))}},7926:(e,t,n)=>{"use strict";n.d(t,{o:()=>d,l:()=>f});var r=n(758),o=n(4784);const a=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/","versions":[{"name":"current","label":"Next","isLast":true,"path":"/","mainDocId":"explore/intro","docs":[{"id":"build/client-sdks/client-ts-sdk","path":"/build/client-sdks/client-ts-sdk","sidebar":"tutorialSidebar"},{"id":"build/dev-mode","path":"/build/dev-mode","sidebar":"tutorialSidebar"},{"id":"build/protocol-sdks/protocol-rs-sdk","path":"/build/protocol-sdks/protocol-rs-sdk","sidebar":"tutorialSidebar"},{"id":"build/protocol-sdks/protocol-sdk","path":"/build/protocol-sdks/protocol-sdk","sidebar":"tutorialSidebar"},{"id":"build/publish-app","path":"/build/publish-app","sidebar":"tutorialSidebar"},{"id":"build/quickstart","path":"/build/quickstart","sidebar":"tutorialSidebar"},{"id":"contribute/bounty-program","path":"/contribute/bounty-program","sidebar":"tutorialSidebar"},{"id":"contribute/github","path":"/contribute/github","sidebar":"tutorialSidebar"},{"id":"contribute/hackathons","path":"/contribute/hackathons","sidebar":"tutorialSidebar"},{"id":"explore/awesome-projects/only-peers","path":"/explore/awesome-projects/only-peers","sidebar":"tutorialSidebar"},{"id":"explore/awesome-projects/rock-paper-scissors","path":"/explore/awesome-projects/rock-paper-scissors","sidebar":"tutorialSidebar"},{"id":"explore/intro","path":"/explore/intro","sidebar":"tutorialSidebar"},{"id":"explore/manifesto","path":"/explore/manifesto","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-edge-compute","path":"/explore/use-cases/decentralized-edge-compute","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-gig-economy","path":"/explore/use-cases/decentralized-gig-economy","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-identity-verification","path":"/explore/use-cases/decentralized-identity-verification","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-intellectual-property-management","path":"/explore/use-cases/decentralized-intellectual-property-management","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-social-platforms","path":"/explore/use-cases/decentralized-social-platforms","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-voting-systems","path":"/explore/use-cases/decentralized-voting-systems","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/deprod","path":"/explore/use-cases/deprod","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/private-daos-management","path":"/explore/use-cases/private-daos-management","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/trustless-gaming","path":"/explore/use-cases/trustless-gaming","sidebar":"tutorialSidebar"},{"id":"explore/why-not/blockchain","path":"/explore/why-not/blockchain","sidebar":"tutorialSidebar"},{"id":"explore/why-not/ipfs","path":"/explore/why-not/ipfs","sidebar":"tutorialSidebar"},{"id":"explore/why-not/zk","path":"/explore/why-not/zk","sidebar":"tutorialSidebar"},{"id":"getting-started/admin-dashboard","path":"/getting-started/admin-dashboard","sidebar":"tutorialSidebar"},{"id":"getting-started/example-app","path":"/getting-started/example-app","sidebar":"tutorialSidebar"},{"id":"getting-started/setup","path":"/getting-started/setup","sidebar":"tutorialSidebar"},{"id":"learn/advanced-concepts/encryption","path":"/learn/advanced-concepts/encryption","sidebar":"tutorialSidebar"},{"id":"learn/advanced-concepts/specialized-nodes","path":"/learn/advanced-concepts/specialized-nodes","sidebar":"tutorialSidebar"},{"id":"learn/architecture","path":"/learn/architecture","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/applications","path":"/learn/core-concepts/applications","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/contexts","path":"/learn/core-concepts/contexts","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/identity","path":"/learn/core-concepts/identity","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/admin-client-api","path":"/learn/core-concepts/node/admin-client-api","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/client-node","path":"/learn/core-concepts/node/client-node","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/network","path":"/learn/core-concepts/node/network","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/runtime","path":"/learn/core-concepts/node/runtime","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/server","path":"/learn/core-concepts/node/server","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/storage","path":"/learn/core-concepts/node/storage","sidebar":"tutorialSidebar"},{"id":"learn/terminology","path":"/learn/terminology","sidebar":"tutorialSidebar"},{"id":"resources/community-and-support","path":"/resources/community-and-support","sidebar":"tutorialSidebar"},{"id":"resources/learning","path":"/resources/learning","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/explore/intro","label":"explore/intro"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var l=n(2654);const s=JSON.parse('{"docusaurusVersion":"3.5.2","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.5.2"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.5.2"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.5.2"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.5.2"},"docusaurus-theme-search-algolia":{"type":"package","name":"@docusaurus/theme-search-algolia","version":"3.5.2"},"docusaurus-plugin-sass":{"type":"package","name":"docusaurus-plugin-sass","version":"0.2.5"}}}');var c=n(6070);const u={siteConfig:o.default,siteMetadata:s,globalData:a,i18n:i,codeTranslations:l},d=r.createContext(u);function f(e){let{children:t}=e;return(0,c.jsx)(d.Provider,{value:u,children:t})}},6980:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var r=n(758),o=n(7028),a=n(6705),i=n(1729),l=n(4622),s=n(8743),c=n(6070);function u(e){let{error:t,tryAgain:n}=e;return(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,c.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,c.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,c.jsx)(d,{error:t})]})}function d(e){let{error:t}=e;const n=(0,i.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,c.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function f(e){let{children:t}=e;return(0,c.jsx)(s.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function p(e){let{error:t,tryAgain:n}=e;return(0,c.jsx)(f,{children:(0,c.jsxs)(h,{fallback:()=>(0,c.jsx)(u,{error:t,tryAgain:n}),children:[(0,c.jsx)(a.A,{children:(0,c.jsx)("title",{children:"Page Error"})}),(0,c.jsx)(l.A,{children:(0,c.jsx)(u,{error:t,tryAgain:n})})]})})}const m=e=>(0,c.jsx)(p,{...e});class h extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??m)(e)}return e??null}}},7028:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,o={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},6705:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(758);var r=n(932),o=n(6070);function a(e){return(0,o.jsx)(r.mg,{...e})}},4475:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});var r=n(758),o=n(1742),a=n(1729),i=n(1299),l=n(1593),s=n(7028),c=n(638),u=n(3016),d=n(6070);function f(e,t){let{isNavLink:n,to:f,href:p,activeClassName:m,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:y=!0,...b}=e;const{siteConfig:v}=(0,i.A)(),{trailingSlash:w,baseUrl:S}=v,k=v.future.experimental_router,{withBaseUrl:x}=(0,u.hH)(),E=(0,c.A)(),_=(0,r.useRef)(null);(0,r.useImperativeHandle)(t,(()=>_.current));const O=f||p;const C=(0,l.A)(O),A=O?.replace("pathname://","");let T=void 0!==A?(j=A,y&&(e=>e.startsWith("/"))(j)?x(j):j):void 0;var j;"hash"===k&&T?.startsWith("./")&&(T=T?.slice(1)),T&&C&&(T=(0,a.Ks)(T,{trailingSlash:w,baseUrl:S}));const P=(0,r.useRef)(!1),I=n?o.k2:o.N_,N=s.A.canUseIntersectionObserver,R=(0,r.useRef)(),L=()=>{P.current||null==T||(window.docusaurus.preload(T),P.current=!0)};(0,r.useEffect)((()=>(!N&&C&&s.A.canUseDOM&&null!=T&&window.docusaurus.prefetch(T),()=>{N&&R.current&&R.current.disconnect()})),[R,T,N,C]);const D=T?.startsWith("#")??!1,M=!b.target||"_self"===b.target,F=!T||!C||!M||D&&"hash"!==k;g||!D&&F||E.collectLink(T),b.id&&E.collectAnchor(b.id);const z={};return F?(0,d.jsx)("a",{ref:_,href:T,...O&&!C&&{target:"_blank",rel:"noopener noreferrer"},...b,...z}):(0,d.jsx)(I,{...b,onMouseEnter:L,onTouchStart:L,innerRef:e=>{_.current=e,N&&e&&C&&(R.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(R.current.unobserve(e),R.current.disconnect(),null!=T&&window.docusaurus.prefetch(T))}))})),R.current.observe(e))},to:T,...n&&{isActive:h,activeClassName:m},...z})}const p=r.forwardRef(f)},2641:(e,t,n)=>{"use strict";n.d(t,{A:()=>c,T:()=>s});var r=n(758),o=n(6070);function a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var i=n(2654);function l(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return i[t??n]??n??t}function s(e,t){let{message:n,id:r}=e;return a(l({message:n,id:r}),t)}function c(e){let{children:t,id:n,values:r}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal <Translate> children",t),new Error("The Docusaurus <Translate> component only accept simple string values");const i=l({message:t,id:n});return(0,o.jsx)(o.Fragment,{children:a(i,r)})}},3458:(e,t,n)=>{"use strict";n.d(t,{W:()=>r});const r="default"},1593:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!r(e)}n.d(t,{A:()=>o,z:()=>r})},3016:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>l,hH:()=>i});var r=n(758),o=n(1299),a=n(1593);function i(){const{siteConfig:e}=(0,o.A)(),{baseUrl:t,url:n}=e,i=e.future.experimental_router,l=(0,r.useCallback)(((e,r)=>function(e){let{siteUrl:t,baseUrl:n,url:r,options:{forcePrependBaseUrl:o=!1,absolute:i=!1}={},router:l}=e;if(!r||r.startsWith("#")||(0,a.z)(r))return r;if("hash"===l)return r.startsWith("/")?`.${r}`:`./${r}`;if(o)return n+r.replace(/^\//,"");if(r===n.replace(/\/$/,""))return n;const s=r.startsWith(n)?r:n+r.replace(/^\//,"");return i?t+s:s}({siteUrl:n,baseUrl:t,url:e,options:r,router:i})),[n,t,i]);return{withBaseUrl:l}}function l(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},638:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(758);n(6070);const o=r.createContext({collectAnchor:()=>{},collectLink:()=>{}}),a=()=>(0,r.useContext)(o);function i(){return a()}},1299:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(758),o=n(7926);function a(){return(0,r.useContext)(o.o)}},7114:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(758),o=n(92);function a(){return(0,r.useContext)(o.o)}},8962:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(758);const o=n(7028).A.canUseDOM?r.useLayoutEffect:r.useEffect},7560:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function o(e){const t={};return function e(n,o){Object.entries(n).forEach((n=>{let[a,i]=n;const l=o?`${o}.${a}`:a;r(i)?e(i,l):t[l]=i}))}(e),t}},8743:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,o:()=>a});var r=n(758),o=n(6070);const a=r.createContext(null);function i(e){let{children:t,value:n}=e;const i=r.useContext(a),l=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:i,value:n})),[i,n]);return(0,o.jsx)(a.Provider,{value:l,children:t})}},9758:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>g,XK:()=>v,g1:()=>b});var r=n(758),o=n(3841),a=n(3458),i=n(588),l=n(9426),s=n(6889),c=n(6070);const u=e=>`docs-preferred-version-${e}`,d={save:(e,t,n)=>{(0,l.Wf)(u(e),{persistence:t}).set(n)},read:(e,t)=>(0,l.Wf)(u(e),{persistence:t}).get(),clear:(e,t)=>{(0,l.Wf)(u(e),{persistence:t}).del()}},f=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const p=r.createContext(null);function m(){const e=(0,o.Gy)(),t=(0,i.p)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[a,l]=(0,r.useState)((()=>f(n)));(0,r.useEffect)((()=>{l(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function o(e){const t=d.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(d.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,o(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[a,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){d.save(e,t,n),l((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function h(e){let{children:t}=e;const n=m();return(0,c.jsx)(p.Provider,{value:n,children:t})}function g(e){let{children:t}=e;return(0,c.jsx)(h,{children:t})}function y(){const e=(0,r.useContext)(p);if(!e)throw new s.dV("DocsPreferredVersionContextProvider");return e}function b(e){void 0===e&&(e=a.W);const t=(0,o.ht)(e),[n,i]=y(),{preferredVersionName:l}=n[e];return{preferredVersion:t.versions.find((e=>e.name===l))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}function v(){const e=(0,o.Gy)(),[t]=y();function n(n){const r=e[n],{preferredVersionName:o}=t[n];return r.versions.find((e=>e.name===o))??null}const r=Object.keys(e);return Object.fromEntries(r.map((e=>[e,n(e)])))}},2581:(e,t,n)=>{"use strict";n.d(t,{k:()=>a,v:()=>i});var r=n(3841),o=n(9758);function a(e,t){return`docs-${e}-${t}`}function i(){const e=(0,r.Gy)(),t=(0,r.gk)(),n=(0,o.XK)();return[...Object.keys(e).map((function(r){const o=t?.activePlugin.pluginId===r?t.activeVersion:void 0,i=n[r],l=e[r].versions.find((e=>e.isLast));return a(r,(o??i??l).name)}))]}},7713:(e,t,n)=>{"use strict";n.d(t,{V:()=>s,t:()=>c});var r=n(758),o=n(6889),a=n(6070);const i=Symbol("EmptyContext"),l=r.createContext(i);function s(e){let{children:t,name:n,items:o}=e;const i=(0,r.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return(0,a.jsx)(l.Provider,{value:i,children:t})}function c(){const e=(0,r.useContext)(l);if(e===i)throw new o.dV("DocsSidebarProvider");return e}},2186:(e,t,n)=>{"use strict";n.d(t,{Nr:()=>f,w8:()=>h,B5:()=>x,Vd:()=>w,QB:()=>k,fW:()=>S,OF:()=>v,Y:()=>y});var r=n(758),o=n(5557),a=n(1977),i=n(3841),l=n(8819);function s(e){return Array.from(new Set(e))}var c=n(9758),u=n(2289),d=n(7713);function f(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=f(t);if(e)return e}}(e):void 0:e.href}const p=(e,t)=>void 0!==e&&(0,l.ys)(e,t),m=(e,t)=>e.some((e=>h(e,t)));function h(e,t){return"link"===e.type?p(e.href,t):"category"===e.type&&(p(e.href,t)||m(e.items,t))}function g(e,t){switch(e.type){case"category":return h(e,t)||e.items.some((e=>g(e,t)));case"link":return!e.unlisted||h(e,t);default:return!0}}function y(e,t){return(0,r.useMemo)((()=>e.filter((e=>g(e,t)))),[e,t])}function b(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const o=[];return function e(t){for(const a of t)if("category"===a.type&&((0,l.ys)(a.href,n)||e(a.items))||"link"===a.type&&(0,l.ys)(a.href,n)){return r&&"category"!==a.type||o.unshift(a),!0}return!1}(t),o}function v(){const e=(0,d.t)(),{pathname:t}=(0,o.zy)(),n=(0,i.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?b({sidebarItems:e.items,pathname:t}):null}function w(e){const{activeVersion:t}=(0,i.zK)(e),{preferredVersion:n}=(0,c.g1)(e),o=(0,i.r7)(e);return(0,r.useMemo)((()=>s([t,n,o].filter(Boolean))),[t,n,o])}function S(e,t){const n=w(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function k(e,t){const n=w(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${s(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function x(e){let{route:t}=e;const n=(0,o.zy)(),r=(0,u.r)(),i=t.routes,l=i.find((e=>(0,o.B6)(n.pathname,e)));if(!l)return null;const s=l.sidebar,c=s?r.docsSidebars[s]:void 0;return{docElement:(0,a.v)(i),sidebarName:s,sidebarItems:c}}},2289:(e,t,n)=>{"use strict";n.d(t,{n:()=>l,r:()=>s});var r=n(758),o=n(6889),a=n(6070);const i=r.createContext(null);function l(e){let{children:t,version:n}=e;return(0,a.jsx)(i.Provider,{value:n,children:t})}function s(){const e=(0,r.useContext)(i);if(null===e)throw new o.dV("DocsVersionProvider");return e}},3841:(e,t,n)=>{"use strict";n.d(t,{zK:()=>y,vT:()=>p,gk:()=>m,Gy:()=>d,HW:()=>b,ht:()=>f,r7:()=>g,jh:()=>h});var r=n(5557),o=n(1299),a=n(3458);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,o.A)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const l=e=>e.versions.find((e=>e.isLast));function s(e,t){return[...e.versions].sort(((e,t)=>e.path===t.path?0:e.path.includes(t.path)?-1:t.path.includes(e.path)?1:0)).find((e=>!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})))}function c(e,t){const n=s(e,t),o=n?.docs.find((e=>!!(0,r.B6)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:o,alternateDocVersions:o?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(o.id):{}}}const u={},d=()=>i("docusaurus-plugin-content-docs")??u,f=e=>{try{return function(e,t,n){void 0===t&&(t=a.W),void 0===n&&(n={});const r=i(e),o=r?.[t];if(!o&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return o}("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function p(e){void 0===e&&(e={});const t=d(),{pathname:n}=(0,r.zy)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.B6)(t,{path:n.path,exact:!1,strict:!1})})),a=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!a&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return a}(t,n,e)}function m(e){void 0===e&&(e={});const t=p(e),{pathname:n}=(0,r.zy)();if(!t)return;return{activePlugin:t,activeVersion:s(t.pluginData,n)}}function h(e){return f(e).versions}function g(e){const t=f(e);return l(t)}function y(e){const t=f(e),{pathname:n}=(0,r.zy)();return c(t,n)}function b(e){const t=f(e),{pathname:n}=(0,r.zy)();return function(e,t){const n=l(e);return{latestDocSuggestion:c(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},8629:(e,t,n)=>{"use strict";function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function o(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var l=n(758),s=[],c=[];var u=l.createContext(null);function d(e){var t=e(),n={loading:!0,loaded:null,error:null};return n.promise=t.then((function(e){return n.loading=!1,n.loaded=e,e})).catch((function(e){throw n.loading=!1,n.error=e,e})),n}function f(e){var t={loading:!1,loaded:{},error:null},n=[];try{Object.keys(e).forEach((function(r){var o=d(e[r]);o.loading?t.loading=!0:(t.loaded[r]=o.loaded,t.error=o.error),n.push(o.promise),o.promise.then((function(e){t.loaded[r]=e})).catch((function(e){t.error=e}))}))}catch(r){t.error=r}return t.promise=Promise.all(n).then((function(e){return t.loading=!1,e})).catch((function(e){throw t.loading=!1,e})),t}function p(e,t){return l.createElement((n=e)&&n.__esModule?n.default:n,t);var n}function m(e,t){var d,f;if(!t.loading)throw new Error("react-loadable requires a `loading` component");var m=i({loader:null,loading:null,delay:200,timeout:null,render:p,webpack:null,modules:null},t),h=null;function g(){return h||(h=e(m.loader)),h.promise}return s.push(g),"function"==typeof m.webpack&&c.push((function(){if((0,m.webpack)().every((function(e){return void 0!==e&&void 0!==n.m[e]})))return g()})),f=d=function(t){function n(n){var r;return a(o(o(r=t.call(this,n)||this)),"retry",(function(){r.setState({error:null,loading:!0,timedOut:!1}),h=e(m.loader),r._loadModule()})),g(),r.state={error:h.error,pastDelay:!1,timedOut:!1,loading:h.loading,loaded:h.loaded},r}r(n,t),n.preload=function(){return g()};var i=n.prototype;return i.UNSAFE_componentWillMount=function(){this._loadModule()},i.componentDidMount=function(){this._mounted=!0},i._loadModule=function(){var e=this;if(this.context&&Array.isArray(m.modules)&&m.modules.forEach((function(t){e.context.report(t)})),h.loading){var t=function(t){e._mounted&&e.setState(t)};"number"==typeof m.delay&&(0===m.delay?this.setState({pastDelay:!0}):this._delay=setTimeout((function(){t({pastDelay:!0})}),m.delay)),"number"==typeof m.timeout&&(this._timeout=setTimeout((function(){t({timedOut:!0})}),m.timeout));var n=function(){t({error:h.error,loaded:h.loaded,loading:h.loading}),e._clearTimeouts()};h.promise.then((function(){return n(),null})).catch((function(e){return n(),null}))}},i.componentWillUnmount=function(){this._mounted=!1,this._clearTimeouts()},i._clearTimeouts=function(){clearTimeout(this._delay),clearTimeout(this._timeout)},i.render=function(){return this.state.loading||this.state.error?l.createElement(m.loading,{isLoading:this.state.loading,pastDelay:this.state.pastDelay,timedOut:this.state.timedOut,error:this.state.error,retry:this.retry}):this.state.loaded?m.render(this.state.loaded,this.props):null},n}(l.Component),a(d,"contextType",u),f}function h(e){return m(d,e)}h.Map=function(e){if("function"!=typeof e.render)throw new Error("LoadableMap requires a `render(loaded, props)` function");return m(f,e)};var g=function(e){function t(){return e.apply(this,arguments)||this}return r(t,e),t.prototype.render=function(){return l.createElement(u.Provider,{value:{report:this.props.report}},l.Children.only(this.props.children))},t}(l.Component);function y(e){for(var t=[];e.length;){var n=e.pop();t.push(n())}return Promise.all(t).then((function(){if(e.length)return y(e)}))}h.Capture=g,h.preloadAll=function(){return new Promise((function(e,t){y(s).then(e,t)}))},h.preloadReady=function(){return new Promise((function(e,t){y(c).then(e,e)}))},e.exports=h},8763:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var r=n(8744),o=n.n(r);o().configure({showSpinner:!1});const a={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{o().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){o().done()}}},9270:(e,t,n)=>{"use strict";var r=n(3477),o=n(4784);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{"php"===e&&n(1274),n(8797)(`./prism-${e}`)})),delete globalThis.Prism}(r.My)},48:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(758);var r=n(3526),o=n(2641),a=n(588),i=n(4475),l=n(638);const s={anchorWithStickyNavbar:"anchorWithStickyNavbar__Wwf",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_ntRu"};var c=n(6070);function u(e){let{as:t,id:n,...u}=e;const d=(0,l.A)(),{navbar:{hideOnScroll:f}}=(0,a.p)();if("h1"===t||!n)return(0,c.jsx)(t,{...u,id:void 0});d.collectAnchor(n);const p=(0,o.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof u.children?u.children:n});return(0,c.jsxs)(t,{...u,className:(0,r.A)("anchor",f?s.anchorWithHideOnScrollNavbar:s.anchorWithStickyNavbar,u.className),id:n,children:[u.children,(0,c.jsx)(i.A,{className:"hash-link",to:`#${n}`,"aria-label":p,title:p,children:"\u200b"})]})}},6841:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(758);const r={iconExternalLink:"iconExternalLink_Utf3"};var o=n(6070);function a(e){let{width:t=13.5,height:n=13.5}=e;return(0,o.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:r.iconExternalLink,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},4622:(e,t,n)=>{"use strict";n.d(t,{A:()=>Ot});var r=n(758),o=n(3526),a=n(6980),i=n(5212),l=n(5557),s=n(2641),c=n(1352),u=n(6070);const d="__docusaurus_skipToContent_fallback";function f(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function p(){const e=(0,r.useRef)(null),{action:t}=(0,l.W6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&f(t)}),[]);return(0,c.$)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&f(e.current)})),{containerRef:e,onClick:n}}const m=(0,s.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function h(e){const t=e.children??m,{containerRef:n,onClick:r}=p();return(0,u.jsx)("div",{ref:n,role:"region","aria-label":m,children:(0,u.jsx)("a",{...e,href:`#${d}`,onClick:r,children:t})})}var g=n(8909),y=n(862);const b={skipToContent:"skipToContent_kCPx"};function v(){return(0,u.jsx)(h,{className:b.skipToContent})}var w=n(588),S=n(3243);function k(e){let{width:t=21,height:n=21,color:r="currentColor",strokeWidth:o=1.2,className:a,...i}=e;return(0,u.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...i,children:(0,u.jsx)("g",{stroke:r,strokeWidth:o,children:(0,u.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const x={closeButton:"closeButton_vmmX"};function E(e){return(0,u.jsx)("button",{type:"button","aria-label":(0,s.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,o.A)("clean-btn close",x.closeButton,e.className),children:(0,u.jsx)(k,{width:14,height:14,strokeWidth:3.1})})}const _={content:"content_l8pu"};function O(e){const{announcementBar:t}=(0,w.p)(),{content:n}=t;return(0,u.jsx)("div",{...e,className:(0,o.A)(_.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const C={announcementBar:"announcementBar_D8Uv",announcementBarPlaceholder:"announcementBarPlaceholder_F2yB",announcementBarClose:"announcementBarClose_o2QS",announcementBarContent:"announcementBarContent_QTMR"};function A(){const{announcementBar:e}=(0,w.p)(),{isActive:t,close:n}=(0,S.M)();if(!t)return null;const{backgroundColor:r,textColor:o,isCloseable:a}=e;return(0,u.jsxs)("div",{className:C.announcementBar,style:{backgroundColor:r,color:o},role:"banner",children:[a&&(0,u.jsx)("div",{className:C.announcementBarPlaceholder}),(0,u.jsx)(O,{className:C.announcementBarContent}),a&&(0,u.jsx)(E,{onClick:n,className:C.announcementBarClose})]})}var T=n(235),j=n(3926);var P=n(6889),I=n(9014);const N=r.createContext(null);function R(e){let{children:t}=e;const n=function(){const e=(0,T.M)(),t=(0,I.YL)(),[n,o]=(0,r.useState)(!1),a=null!==t.component,i=(0,P.ZC)(a);return(0,r.useEffect)((()=>{a&&!i&&o(!0)}),[a,i]),(0,r.useEffect)((()=>{a?e.shown||o(!0):o(!1)}),[e.shown,a]),(0,r.useMemo)((()=>[n,o]),[n])}();return(0,u.jsx)(N.Provider,{value:n,children:t})}function L(e){if(e.component){const t=e.component;return(0,u.jsx)(t,{...e.props})}}function D(){const e=(0,r.useContext)(N);if(!e)throw new P.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,r.useCallback)((()=>n(!1)),[n]),a=(0,I.YL)();return(0,r.useMemo)((()=>({shown:t,hide:o,content:L(a)})),[o,a,t])}function M(e){let{header:t,primaryMenu:n,secondaryMenu:r}=e;const{shown:a}=D();return(0,u.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,u.jsxs)("div",{className:(0,o.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":a}),children:[(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:r})]})]})}var F=n(5427),z=n(7114);function B(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function $(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const U={toggle:"toggle_XqBQ",toggleButton:"toggleButton_XdRz",darkToggleIcon:"darkToggleIcon_N8aW",lightToggleIcon:"lightToggleIcon_ywgQ",toggleButtonDisabled:"toggleButtonDisabled_XFG1"};function H(e){let{className:t,buttonClassName:n,value:r,onChange:a}=e;const i=(0,z.A)(),l=(0,s.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===r?(0,s.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,s.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,u.jsx)("div",{className:(0,o.A)(U.toggle,t),children:(0,u.jsxs)("button",{className:(0,o.A)("clean-btn",U.toggleButton,!i&&U.toggleButtonDisabled,n),type:"button",onClick:()=>a("dark"===r?"light":"dark"),disabled:!i,title:l,"aria-label":l,"aria-live":"polite",children:[(0,u.jsx)(B,{className:(0,o.A)(U.toggleIcon,U.lightToggleIcon)}),(0,u.jsx)($,{className:(0,o.A)(U.toggleIcon,U.darkToggleIcon)})]})})}const q=r.memo(H),V={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_TZYF"};function W(e){let{className:t}=e;const n=(0,w.p)().navbar.style,r=(0,w.p)().colorMode.disableSwitch,{colorMode:o,setColorMode:a}=(0,F.G)();return r?null:(0,u.jsx)(q,{className:t,buttonClassName:"dark"===n?V.darkNavbarColorModeToggle:void 0,value:o,onChange:a})}var G=n(3318);function K(){return(0,u.jsx)(G.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Y(){const e=(0,T.M)();return(0,u.jsx)("button",{type:"button","aria-label":(0,s.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,u.jsx)(k,{color:"var(--ifm-color-emphasis-600)"})})}function Q(){return(0,u.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,u.jsx)(K,{}),(0,u.jsx)(W,{className:"margin-right--md"}),(0,u.jsx)(Y,{})]})}var Z=n(4475),X=n(3016),J=n(1593),ee=n(3034),te=n(6841);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:r,href:o,label:a,html:i,isDropdownLink:l,prependBaseUrlToHref:s,...c}=e;const d=(0,X.Ay)(r),f=(0,X.Ay)(t),p=(0,X.Ay)(o,{forcePrependBaseUrl:!0}),m=a&&o&&!(0,J.A)(o),h=i?{dangerouslySetInnerHTML:{__html:i}}:{children:(0,u.jsxs)(u.Fragment,{children:[a,m&&(0,u.jsx)(te.A,{...l&&{width:12,height:12}})]})};return o?(0,u.jsx)(Z.A,{href:s?p:o,...c,...h}):(0,u.jsx)(Z.A,{to:d,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?(0,ee.G)(n,t.pathname):t.pathname.startsWith(f)},...c,...h})}function re(e){let{className:t,isDropdownItem:n=!1,...r}=e;const a=(0,u.jsx)(ne,{className:(0,o.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...r});return n?(0,u.jsx)("li",{children:a}):a}function oe(e){let{className:t,isDropdownItem:n,...r}=e;return(0,u.jsx)("li",{className:"menu__list-item",children:(0,u.jsx)(ne,{className:(0,o.A)("menu__link",t),...r})})}function ae(e){let{mobile:t=!1,position:n,...r}=e;const o=t?oe:re;return(0,u.jsx)(o,{...r,activeClassName:r.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var ie=n(7464),le=n(8819),se=n(1299);const ce={dropdownNavbarItemMobile:"dropdownNavbarItemMobile_v3Fr"};function ue(e,t){return e.some((e=>function(e,t){return!!(0,le.ys)(e.to,t)||!!(0,ee.G)(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function de(e){let{items:t,position:n,className:a,onClick:i,...l}=e;const s=(0,r.useRef)(null),[c,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{s.current&&!s.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[s]),(0,u.jsxs)("div",{ref:s,className:(0,o.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":c}),children:[(0,u.jsx)(ne,{"aria-haspopup":"true","aria-expanded":c,role:"button",href:l.to?void 0:"#",className:(0,o.A)("navbar__link",a),...l,onClick:l.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!c))},children:l.children??l.label}),(0,u.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,r.createElement)(Fe,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function fe(e){let{items:t,className:n,position:a,onClick:i,...s}=e;const c=function(){const{siteConfig:{baseUrl:e}}=(0,se.A)(),{pathname:t}=(0,l.zy)();return t.replace(e,"/")}(),d=ue(t,c),{collapsed:f,toggleCollapsed:p,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[c,d,m]),(0,u.jsxs)("li",{className:(0,o.A)("menu__list-item",{"menu__list-item--collapsed":f}),children:[(0,u.jsx)(ne,{role:"button",className:(0,o.A)(ce.dropdownNavbarItemMobile,"menu__link menu__link--sublist menu__link--sublist-caret",n),...s,onClick:e=>{e.preventDefault(),p()},children:s.children??s.label}),(0,u.jsx)(ie.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:f,children:t.map(((e,t)=>(0,r.createElement)(Fe,{mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active",...e,key:t})))})]})}function pe(e){let{mobile:t=!1,...n}=e;const r=t?fe:de;return(0,u.jsx)(r,{...n})}var me=n(8425);function he(e){let{width:t=20,height:n=20,...r}=e;return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...r,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const ge="iconLanguage_yTGm";var ye=n(8143),be=n(3374),ve=n(6705),we=n(9513),Se=n(7732),ke=n(5289),xe=n(2581);function Ee(){return[`language:${(0,se.A)().i18n.currentLocale}`,function(){const e=(0,xe.v)();return[ke.C,...e]}().map((e=>`docusaurus_tag:${e}`))]}const _e={button:{buttonText:(0,s.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"}),buttonAriaLabel:(0,s.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"})},modal:{searchBox:{resetButtonTitle:(0,s.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),resetButtonAriaLabel:(0,s.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),cancelButtonText:(0,s.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"}),cancelButtonAriaLabel:(0,s.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"})},startScreen:{recentSearchesTitle:(0,s.T)({id:"theme.SearchModal.startScreen.recentSearchesTitle",message:"Recent",description:"The title for recent searches"}),noRecentSearchesText:(0,s.T)({id:"theme.SearchModal.startScreen.noRecentSearchesText",message:"No recent searches",description:"The text when no recent searches"}),saveRecentSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.saveRecentSearchButtonTitle",message:"Save this search",description:"The label for save recent search button"}),removeRecentSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.removeRecentSearchButtonTitle",message:"Remove this search from history",description:"The label for remove recent search button"}),favoriteSearchesTitle:(0,s.T)({id:"theme.SearchModal.startScreen.favoriteSearchesTitle",message:"Favorite",description:"The title for favorite searches"}),removeFavoriteSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.removeFavoriteSearchButtonTitle",message:"Remove this search from favorites",description:"The label for remove favorite search button"})},errorScreen:{titleText:(0,s.T)({id:"theme.SearchModal.errorScreen.titleText",message:"Unable to fetch results",description:"The title for error screen of search modal"}),helpText:(0,s.T)({id:"theme.SearchModal.errorScreen.helpText",message:"You might want to check your network connection.",description:"The help text for error screen of search modal"})},footer:{selectText:(0,s.T)({id:"theme.SearchModal.footer.selectText",message:"to select",description:"The explanatory text of the action for the enter key"}),selectKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.selectKeyAriaLabel",message:"Enter key",description:"The ARIA label for the Enter key button that makes the selection"}),navigateText:(0,s.T)({id:"theme.SearchModal.footer.navigateText",message:"to navigate",description:"The explanatory text of the action for the Arrow up and Arrow down key"}),navigateUpKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.navigateUpKeyAriaLabel",message:"Arrow up",description:"The ARIA label for the Arrow up key button that makes the navigation"}),navigateDownKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.navigateDownKeyAriaLabel",message:"Arrow down",description:"The ARIA label for the Arrow down key button that makes the navigation"}),closeText:(0,s.T)({id:"theme.SearchModal.footer.closeText",message:"to close",description:"The explanatory text of the action for Escape key"}),closeKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.closeKeyAriaLabel",message:"Escape key",description:"The ARIA label for the Escape key button that close the modal"}),searchByText:(0,s.T)({id:"theme.SearchModal.footer.searchByText",message:"Search by",description:"The text explain that the search is making by Algolia"})},noResultsScreen:{noResultsText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.noResultsText",message:"No results for",description:"The text explains that there are no results for the following search"}),suggestedQueryText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.suggestedQueryText",message:"Try searching for",description:"The text for the suggested query when no results are found for the following search"}),reportMissingResultsText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsText",message:"Believe this query should return results?",description:"The text for the question where the user thinks there are missing results"}),reportMissingResultsLinkText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsLinkText",message:"Let us know.",description:"The text for the link to report missing results"})}},placeholder:(0,s.T)({id:"theme.SearchModal.placeholder",message:"Search docs",description:"The placeholder of the input of the DocSearch pop-up modal"})};let Oe=null;function Ce(e){let{hit:t,children:n}=e;return(0,u.jsx)(Z.A,{to:t.url,children:n})}function Ae(e){let{state:t,onClose:n}=e;const r=(0,we.w)();return(0,u.jsx)(Z.A,{to:r(t.query),onClick:n,children:(0,u.jsx)(s.A,{id:"theme.SearchBar.seeAll",values:{count:t.context.nbHits},children:"See all {count} results"})})}function Te(e){let{contextualSearch:t,externalUrlRegex:o,...a}=e;const{siteMetadata:i}=(0,se.A)(),s=(0,Se.C)(),c=Ee(),d=a.searchParameters?.facetFilters??[],f=t?function(e,t){const n=e=>"string"==typeof e?[e]:e;return[...n(e),...n(t)]}(c,d):d,p={...a.searchParameters,facetFilters:f},m=(0,l.W6)(),h=(0,r.useRef)(null),g=(0,r.useRef)(null),[y,b]=(0,r.useState)(!1),[v,w]=(0,r.useState)(void 0),S=(0,r.useCallback)((()=>Oe?Promise.resolve():Promise.all([n.e(5664).then(n.bind(n,5664)),Promise.all([n.e(1869),n.e(2995)]).then(n.bind(n,2995)),Promise.all([n.e(1869),n.e(793)]).then(n.bind(n,793))]).then((e=>{let[{DocSearchModal:t}]=e;Oe=t}))),[]),k=(0,r.useCallback)((()=>{if(!h.current){const e=document.createElement("div");h.current=e,document.body.insertBefore(e,document.body.firstChild)}}),[]),x=(0,r.useCallback)((()=>{k(),S().then((()=>b(!0)))}),[S,k]),E=(0,r.useCallback)((()=>{b(!1),g.current?.focus()}),[]),_=(0,r.useCallback)((e=>{"f"===e.key&&(e.metaKey||e.ctrlKey)||(e.preventDefault(),w(e.key),x())}),[x]),O=(0,r.useRef)({navigate(e){let{itemUrl:t}=e;(0,ee.G)(o,t)?window.location.href=t:m.push(t)}}).current,C=(0,r.useRef)((e=>a.transformItems?a.transformItems(e):e.map((e=>({...e,url:s(e.url)}))))).current,A=(0,r.useMemo)((()=>e=>(0,u.jsx)(Ae,{...e,onClose:E})),[E]),T=(0,r.useCallback)((e=>(e.addAlgoliaAgent("docusaurus",i.docusaurusVersion),e)),[i.docusaurusVersion]);return(0,be.E8)({isOpen:y,onOpen:x,onClose:E,onInput:_,searchButtonRef:g}),(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(ve.A,{children:(0,u.jsx)("link",{rel:"preconnect",href:`https://${a.appId}-dsn.algolia.net`,crossOrigin:"anonymous"})}),(0,u.jsx)(be.Bc,{onTouchStart:S,onFocus:S,onMouseOver:S,onClick:x,ref:g,translations:_e.button}),y&&Oe&&h.current&&(0,ye.createPortal)((0,u.jsx)(Oe,{onClose:E,initialScrollY:window.scrollY,initialQuery:v,navigator:O,transformItems:C,hitComponent:Ce,transformSearchClient:T,...a.searchPagePath&&{resultsFooterComponent:A},...a,searchParameters:p,placeholder:_e.placeholder,translations:_e.modal}),h.current)]})}function je(){const{siteConfig:e}=(0,se.A)();return(0,u.jsx)(Te,{...e.themeConfig.algolia})}const Pe={navbarSearchContainer:"navbarSearchContainer_g_GZ"};function Ie(e){let{children:t,className:n}=e;return(0,u.jsx)("div",{className:(0,o.A)(n,Pe.navbarSearchContainer),children:t})}var Ne=n(3841),Re=n(2186);var Le=n(9758);function De(e,t){return t.alternateDocVersions[e.name]??function(e){return e.docs.find((t=>t.id===e.mainDocId))}(e)}const Me={default:ae,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:r,queryString:o="",...a}=e;const{i18n:{currentLocale:i,locales:c,localeConfigs:d}}=(0,se.A)(),f=(0,me.o)(),{search:p,hash:m}=(0,l.zy)(),h=[...n,...c.map((e=>{const n=`${`pathname://${f.createUrl({locale:e,fullyQualified:!1})}`}${p}${m}${o}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...r],g=t?(0,s.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return(0,u.jsx)(pe,{...a,mobile:t,label:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(he,{className:ge}),g]}),items:h})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,u.jsx)(Ie,{className:n,children:(0,u.jsx)(je,{})})},dropdown:pe,html:function(e){let{value:t,className:n,mobile:r=!1,isDropdownItem:a=!1}=e;const i=a?"li":"div";return(0,u.jsx)(i,{className:(0,o.A)({navbar__item:!r&&!a,"menu__list-item":r},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Ne.zK)(r),i=(0,Re.QB)(t,r),l=a?.path===i?.path;return null===i||i.unlisted&&!l?null:(0,u.jsx)(ae,{exact:!0,...o,isActive:()=>l||!!a?.sidebar&&a.sidebar===i.sidebar,label:n??i.id,to:i.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Ne.zK)(r),i=(0,Re.fW)(t,r).link;if(!i)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,u.jsx)(ae,{exact:!0,...o,isActive:()=>a?.sidebar===t,label:n??i.label,to:i.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:r,...o}=e;const a=(0,Re.Vd)(r)[0],i=t??a.label,l=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(a).path;return(0,u.jsx)(ae,{...o,label:i,to:l})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:r,dropdownItemsBefore:o,dropdownItemsAfter:a,...i}=e;const{search:c,hash:d}=(0,l.zy)(),f=(0,Ne.zK)(n),p=(0,Ne.jh)(n),{savePreferredVersionName:m}=(0,Le.g1)(n),h=[...o,...p.map((function(e){const t=De(e,f);return{label:e.label,to:`${t.path}${c}${d}`,isActive:()=>e===f.activeVersion,onClick:()=>m(e.name)}})),...a],g=(0,Re.Vd)(n)[0],y=t&&h.length>1?(0,s.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):g.label,b=t&&h.length>1?void 0:De(g,f).path;return h.length<=1?(0,u.jsx)(ae,{...i,mobile:t,label:y,to:b,isActive:r?()=>!1:void 0}):(0,u.jsx)(pe,{...i,mobile:t,label:y,to:b,items:h,isActive:r?()=>!1:void 0})}};function Fe(e){let{type:t,...n}=e;const r=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=Me[r];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,u.jsx)(o,{...n})}function ze(){const e=(0,T.M)(),t=(0,w.p)().navbar.items;return(0,u.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,r.createElement)(Fe,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function Be(e){return(0,u.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,u.jsx)(s.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function $e(){const e=0===(0,w.p)().navbar.items.length,t=D();return(0,u.jsxs)(u.Fragment,{children:[!e&&(0,u.jsx)(Be,{onClick:()=>t.hide()}),t.content]})}function Ue(){const e=(0,T.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,u.jsx)(M,{header:(0,u.jsx)(Q,{}),primaryMenu:(0,u.jsx)(ze,{}),secondaryMenu:(0,u.jsx)($e,{})}):null}const He={navbarHideable:"navbarHideable_LLgI",navbarHidden:"navbarHidden_kjsb"};function qe(e){return(0,u.jsx)("div",{role:"presentation",...e,className:(0,o.A)("navbar-sidebar__backdrop",e.className)})}function Ve(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:a}}=(0,w.p)(),i=(0,T.M)(),{navbarRef:l,isNavbarVisible:d}=function(e){const[t,n]=(0,r.useState)(e),o=(0,r.useRef)(!1),a=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(a.current=e.getBoundingClientRect().height)}),[]);return(0,j.Mq)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i<a.current)return void n(!0);if(o.current)return void(o.current=!1);const l=r?.scrollY,s=document.documentElement.scrollHeight-a.current,c=window.innerHeight;l&&i>=l?n(!1):i+c<s&&n(!0)})),(0,c.$)((t=>{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return o.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return(0,u.jsxs)("nav",{ref:l,"aria-label":(0,s.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.A)("navbar","navbar--fixed-top",n&&[He.navbarHideable,!d&&He.navbarHidden],{"navbar--dark":"dark"===a,"navbar--primary":"primary"===a,"navbar-sidebar--show":i.shown}),children:[t,(0,u.jsx)(qe,{onClick:i.toggle}),(0,u.jsx)(Ue,{})]})}var We=n(1729);const Ge={errorBoundaryError:"errorBoundaryError_aoN1",errorBoundaryFallback:"errorBoundaryFallback_bIw_"};function Ke(e){return(0,u.jsx)("button",{type:"button",...e,children:(0,u.jsx)(s.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function Ye(e){let{error:t}=e;const n=(0,We.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,u.jsx)("p",{className:Ge.errorBoundaryError,children:n})}class Qe extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const Ze="right";function Xe(e){let{width:t=30,height:n=30,className:r,...o}=e;return(0,u.jsx)("svg",{className:r,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...o,children:(0,u.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function Je(){const{toggle:e,shown:t}=(0,T.M)();return(0,u.jsx)("button",{onClick:e,"aria-label":(0,s.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,u.jsx)(Xe,{})})}const et={colorModeToggle:"colorModeToggle_AfdU"};function tt(e){let{items:t}=e;return(0,u.jsx)(u.Fragment,{children:t.map(((e,t)=>(0,u.jsx)(Qe,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,u.jsx)(Fe,{...e})},t)))})}function nt(e){let{left:t,right:n}=e;return(0,u.jsxs)("div",{className:"navbar__inner",children:[(0,u.jsx)("div",{className:"navbar__items",children:t}),(0,u.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function rt(){const e=(0,T.M)(),t=(0,w.p)().navbar.items,[n,r]=function(e){function t(e){return"left"===(e.position??Ze)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return(0,u.jsx)(nt,{left:(0,u.jsxs)(u.Fragment,{children:[!e.disabled&&(0,u.jsx)(Je,{}),(0,u.jsx)(K,{}),(0,u.jsx)(tt,{items:n})]}),right:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(tt,{items:r}),(0,u.jsx)(W,{className:et.colorModeToggle}),!o&&(0,u.jsx)(Ie,{children:(0,u.jsx)(je,{})})]})})}function ot(){return(0,u.jsx)(Ve,{children:(0,u.jsx)(rt,{})})}function at(e){let{item:t}=e;const{to:n,href:r,label:o,prependBaseUrlToHref:a,...i}=t,l=(0,X.Ay)(n),s=(0,X.Ay)(r,{forcePrependBaseUrl:!0});return(0,u.jsxs)(Z.A,{className:"footer__link-item",...r?{href:a?s:r}:{to:l},...i,children:[o,r&&!(0,J.A)(r)&&(0,u.jsx)(te.A,{})]})}function it(e){let{item:t}=e;return t.html?(0,u.jsx)("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)("li",{className:"footer__item",children:(0,u.jsx)(at,{item:t})},t.href??t.to)}function lt(e){let{column:t}=e;return(0,u.jsxs)("div",{className:"col footer__col",children:[(0,u.jsx)("div",{className:"footer__title",children:t.title}),(0,u.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,u.jsx)(it,{item:e},t)))})]})}function st(e){let{columns:t}=e;return(0,u.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,u.jsx)(lt,{column:e},t)))})}function ct(){return(0,u.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function ut(e){let{item:t}=e;return t.html?(0,u.jsx)("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)(at,{item:t})}function dt(e){let{links:t}=e;return(0,u.jsx)("div",{className:"footer__links text--center",children:(0,u.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,u.jsxs)(r.Fragment,{children:[(0,u.jsx)(ut,{item:e}),t.length!==n+1&&(0,u.jsx)(ct,{})]},n)))})})}function ft(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,u.jsx)(st,{columns:t}):(0,u.jsx)(dt,{links:t})}var pt=n(5348);const mt={footerLogoLink:"footerLogoLink_Xkl5"};function ht(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.hH)(),r={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,u.jsx)(pt.A,{className:(0,o.A)("footer__logo",t.className),alt:t.alt,sources:r,width:t.width,height:t.height,style:t.style})}function gt(e){let{logo:t}=e;return t.href?(0,u.jsx)(Z.A,{href:t.href,className:mt.footerLogoLink,target:t.target,children:(0,u.jsx)(ht,{logo:t})}):(0,u.jsx)(ht,{logo:t})}function yt(e){let{copyright:t}=e;return(0,u.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function bt(e){let{style:t,links:n,logo:r,copyright:a}=e;return(0,u.jsx)("footer",{className:(0,o.A)("footer",{"footer--dark":"dark"===t}),children:(0,u.jsxs)("div",{className:"container container-fluid",children:[n,(r||a)&&(0,u.jsxs)("div",{className:"footer__bottom text--center",children:[r&&(0,u.jsx)("div",{className:"margin-bottom--sm",children:r}),a]})]})})}function vt(){const{footer:e}=(0,w.p)();if(!e)return null;const{copyright:t,links:n,logo:r,style:o}=e;return(0,u.jsx)(bt,{style:o,links:n&&n.length>0&&(0,u.jsx)(ft,{links:n}),logo:r&&(0,u.jsx)(gt,{logo:r}),copyright:t&&(0,u.jsx)(yt,{copyright:t})})}const wt=r.memo(vt),St=(0,P.fM)([F.a,S.o,j.Tv,Le.VQ,i.Jx,function(e){let{children:t}=e;return(0,u.jsx)(I.y_,{children:(0,u.jsx)(T.e,{children:(0,u.jsx)(R,{children:t})})})}]);function kt(e){let{children:t}=e;return(0,u.jsx)(St,{children:t})}var xt=n(48);function Et(e){let{error:t,tryAgain:n}=e;return(0,u.jsx)("main",{className:"container margin-vert--xl",children:(0,u.jsx)("div",{className:"row",children:(0,u.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,u.jsx)(xt.A,{as:"h1",className:"hero__title",children:(0,u.jsx)(s.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,u.jsx)("div",{className:"margin-vert--lg",children:(0,u.jsx)(Ke,{onClick:n,className:"button button--primary shadow--lw"})}),(0,u.jsx)("hr",{}),(0,u.jsx)("div",{className:"margin-vert--md",children:(0,u.jsx)(Ye,{error:t})})]})})})}const _t={mainWrapper:"mainWrapper_LaiY"};function Ot(e){const{children:t,noFooter:n,wrapperClassName:r,title:l,description:s}=e;return(0,y.J)(),(0,u.jsxs)(kt,{children:[(0,u.jsx)(i.be,{title:l,description:s}),(0,u.jsx)(v,{}),(0,u.jsx)(A,{}),(0,u.jsx)(ot,{}),(0,u.jsx)("div",{id:d,className:(0,o.A)(g.G.wrapper.main,_t.mainWrapper,r),children:(0,u.jsx)(a.A,{fallback:e=>(0,u.jsx)(Et,{...e}),children:t})}),!n&&(0,u.jsx)(wt,{})]})}},3318:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(758);var r=n(4475),o=n(3016),a=n(1299),i=n(588),l=n(5348),s=n(6070);function c(e){let{logo:t,alt:n,imageClassName:r}=e;const a={light:(0,o.Ay)(t.src),dark:(0,o.Ay)(t.srcDark||t.src)},i=(0,s.jsx)(l.A,{className:t.className,sources:a,height:t.height,width:t.width,alt:n,style:t.style});return r?(0,s.jsx)("div",{className:r,children:i}):i}function u(e){const{siteConfig:{title:t}}=(0,a.A)(),{navbar:{title:n,logo:l}}=(0,i.p)(),{imageClassName:u,titleClassName:d,...f}=e,p=(0,o.Ay)(l?.href||"/"),m=n?"":t,h=l?.alt??m;return(0,s.jsxs)(r.A,{to:p,...f,...l?.target&&{target:l.target},children:[l&&(0,s.jsx)(c,{logo:l,alt:h,imageClassName:u}),null!=n&&(0,s.jsx)("b",{className:d,children:n})]})}},8796:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(758);var r=n(6705),o=n(6070);function a(e){let{locale:t,version:n,tag:a}=e;const i=t;return(0,o.jsxs)(r.A,{children:[t&&(0,o.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,o.jsx)("meta",{name:"docusaurus_version",content:n}),a&&(0,o.jsx)("meta",{name:"docusaurus_tag",content:a}),i&&(0,o.jsx)("meta",{name:"docsearch:language",content:i}),n&&(0,o.jsx)("meta",{name:"docsearch:version",content:n}),a&&(0,o.jsx)("meta",{name:"docsearch:docusaurus_tag",content:a})]})}},5348:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});var r=n(758),o=n(3526),a=n(7114),i=n(5427);const l={themedComponent:"themedComponent_j_Bc","themedComponent--light":"themedComponent--light_Wr5c","themedComponent--dark":"themedComponent--dark_H8hH"};var s=n(6070);function c(e){let{className:t,children:n}=e;const c=(0,a.A)(),{colorMode:u}=(0,i.G)();return(0,s.jsx)(s.Fragment,{children:(c?"dark"===u?["dark"]:["light"]:["light","dark"]).map((e=>{const a=n({theme:e,className:(0,o.A)(t,l.themedComponent,l[`themedComponent--${e}`])});return(0,s.jsx)(r.Fragment,{children:a},e)}))})}function u(e){const{sources:t,className:n,alt:r,...o}=e;return(0,s.jsx)(c,{className:n,children:e=>{let{theme:n,className:a}=e;return(0,s.jsx)("img",{src:t[n],alt:r,className:a,...o})}})}},7464:(e,t,n)=>{"use strict";n.d(t,{N:()=>y,u:()=>c});var r=n(758),o=n(7028),a=n(8962),i=n(8907),l=n(6070);const s="ease-in-out";function c(e){let{initialState:t}=e;const[n,o]=(0,r.useState)(t??!1),a=(0,r.useCallback)((()=>{o((e=>!e))}),[]);return{collapsed:n,setCollapsed:o,toggleCollapsed:a}}const u={display:"none",overflow:"hidden",height:"0px"},d={display:"block",overflow:"visible",height:"auto"};function f(e,t){const n=t?u:d;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function p(e){let{collapsibleRef:t,collapsed:n,animation:o}=e;const a=(0,r.useRef)(!1);(0,r.useEffect)((()=>{const e=t.current;function r(){const t=e.scrollHeight,n=o?.duration??function(e){if((0,i.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${o?.easing??s}`,height:`${t}px`}}function l(){const t=r();e.style.transition=t.transition,e.style.height=t.height}if(!a.current)return f(e,n),void(a.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(l(),requestAnimationFrame((()=>{e.style.height=u.height,e.style.overflow=u.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{l()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,o])}function m(e){if(!o.A.canUseDOM)return e?u:d}function h(e){let{as:t="div",collapsed:n,children:o,animation:a,onCollapseTransitionEnd:i,className:s,disableSSRStyle:c}=e;const u=(0,r.useRef)(null);return p({collapsibleRef:u,collapsed:n,animation:a}),(0,l.jsx)(t,{ref:u,style:c?void 0:m(n),onTransitionEnd:e=>{"height"===e.propertyName&&(f(u.current,n),i?.(n))},className:s,children:o})}function g(e){let{collapsed:t,...n}=e;const[o,i]=(0,r.useState)(!t),[s,c]=(0,r.useState)(t);return(0,a.A)((()=>{t||i(!0)}),[t]),(0,a.A)((()=>{o&&c(t)}),[o,t]),o?(0,l.jsx)(h,{...n,collapsed:s}):null}function y(e){let{lazy:t,...n}=e;const r=t?g:h;return(0,l.jsx)(r,{...n})}},3243:(e,t,n)=>{"use strict";n.d(t,{M:()=>h,o:()=>m});var r=n(758),o=n(7114),a=n(9426),i=n(6889),l=n(588),s=n(6070);const c=(0,a.Wf)("docusaurus.announcement.dismiss"),u=(0,a.Wf)("docusaurus.announcement.id"),d=()=>"true"===c.get(),f=e=>c.set(String(e)),p=r.createContext(null);function m(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,l.p)(),t=(0,o.A)(),[n,a]=(0,r.useState)((()=>!!t&&d()));(0,r.useEffect)((()=>{a(d())}),[]);const i=(0,r.useCallback)((()=>{f(!0),a(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=u.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;u.set(t),r&&f(!1),!r&&d()||a(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return(0,s.jsx)(p.Provider,{value:n,children:t})}function h(){const e=(0,r.useContext)(p);if(!e)throw new i.dV("AnnouncementBarProvider");return e}},5427:(e,t,n)=>{"use strict";n.d(t,{G:()=>y,a:()=>g});var r=n(758),o=n(7028),a=n(6889),i=n(9426),l=n(588),s=n(6070);const c=r.createContext(void 0),u="theme",d=(0,i.Wf)(u),f={light:"light",dark:"dark"},p=e=>e===f.dark?f.dark:f.light,m=e=>o.A.canUseDOM?p(document.documentElement.getAttribute("data-theme")):p(e),h=e=>{d.set(p(e))};function g(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,l.p)(),[o,a]=(0,r.useState)(m(e));(0,r.useEffect)((()=>{t&&d.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:o=!0}=r;t?(a(t),o&&h(t)):(a(n?window.matchMedia("(prefers-color-scheme: dark)").matches?f.dark:f.light:e),d.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",p(o))}),[o]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==u)return;const t=d.get();null!==t&&i(p(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const s=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||s.current?s.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:o,setColorMode:i,get isDarkTheme(){return o===f.dark},setLightTheme(){i(f.light)},setDarkTheme(){i(f.dark)}})),[o,i])}();return(0,s.jsx)(c.Provider,{value:n,children:t})}function y(){const e=(0,r.useContext)(c);if(null==e)throw new a.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},235:(e,t,n)=>{"use strict";n.d(t,{M:()=>p,e:()=>f});var r=n(758),o=n(9014),a=n(2823),i=n(1019),l=n(588),s=n(6889),c=n(6070);const u=r.createContext(void 0);function d(){const e=function(){const e=(0,o.YL)(),{items:t}=(0,l.p)().navbar;return 0===t.length&&!e.component}(),t=(0,a.l)(),n=!e&&"mobile"===t,[s,c]=(0,r.useState)(!1);(0,i.$Z)((()=>{if(s)return c(!1),!1}));const u=(0,r.useCallback)((()=>{c((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&c(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:s})),[e,n,u,s])}function f(e){let{children:t}=e;const n=d();return(0,c.jsx)(u.Provider,{value:n,children:t})}function p(){const e=r.useContext(u);if(void 0===e)throw new s.dV("NavbarMobileSidebarProvider");return e}},9014:(e,t,n)=>{"use strict";n.d(t,{GX:()=>c,YL:()=>s,y_:()=>l});var r=n(758),o=n(6889),a=n(6070);const i=r.createContext(null);function l(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return(0,a.jsx)(i.Provider,{value:n,children:t})}function s(){const e=(0,r.useContext)(i);if(!e)throw new o.dV("NavbarSecondaryMenuContentProvider");return e[0]}function c(e){let{component:t,props:n}=e;const a=(0,r.useContext)(i);if(!a)throw new o.dV("NavbarSecondaryMenuContentProvider");const[,l]=a,s=(0,o.Be)(n);return(0,r.useEffect)((()=>{l({component:t,props:s})}),[l,t,s]),(0,r.useEffect)((()=>()=>l({component:null,props:null})),[l]),null}},862:(e,t,n)=>{"use strict";n.d(t,{w:()=>o,J:()=>a});var r=n(758);const o="navigation-with-keyboard";function a(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(o),"mousedown"===e.type&&document.body.classList.remove(o)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(o),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},9513:(e,t,n)=>{"use strict";n.d(t,{b:()=>l,w:()=>s});var r=n(758),o=n(1299),a=n(1019);const i="q";function l(){return(0,a.l)(i)}function s(){const{siteConfig:{baseUrl:e,themeConfig:t}}=(0,o.A)(),{algolia:{searchPagePath:n}}=t;return(0,r.useCallback)((t=>`${e}${n}?${i}=${encodeURIComponent(t)}`),[e,n])}},2823:(e,t,n)=>{"use strict";n.d(t,{l:()=>l});var r=n(758),o=n(7028);const a={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function l(e){let{desktopBreakpoint:t=i}=void 0===e?{}:e;const[n,l]=(0,r.useState)((()=>"ssr"));return(0,r.useEffect)((()=>{function e(){l(function(e){if(!o.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?a.desktop:a.mobile}(t))}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[t]),n}},8909:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",blogAuthorsListPage:"blog-authors-list-page",blogAuthorsPostsPage:"blog-authors-posts-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",draftBanner:"theme-draft-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{blogFooterTagsRow:"theme-blog-footer-tags-row",blogFooterEditMetaRow:"theme-blog-footer-edit-meta-row"},pages:{pageFooterEditMetaRow:"theme-pages-footer-edit-meta-row"}}},8907:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>r})},9631:(e,t,n)=>{"use strict";n.d(t,{s:()=>o});var r=n(1299);function o(e){const{siteConfig:t}=(0,r.A)(),{title:n,titleDelimiter:o}=t;return e?.trim().length?`${e.trim()} ${o} ${n}`:n}},1019:(e,t,n)=>{"use strict";n.d(t,{$Z:()=>i,l:()=>s});var r=n(758),o=n(5557),a=n(6889);function i(e){!function(e){const t=(0,o.W6)(),n=(0,a._q)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function l(e){const t=(0,o.W6)();return(0,r.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}function s(e){const t=function(e){return l((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}(e)??"",n=function(e){const t=(0,o.W6)();return(0,r.useCallback)(((n,r)=>{const o=new URLSearchParams(t.location.search);n?o.set(e,n):o.delete(e),(r?.push?t.push:t.replace)({search:o.toString()})}),[e,t])}(e);return[t,n]}},5212:(e,t,n)=>{"use strict";n.d(t,{e3:()=>p,be:()=>d,Jx:()=>m});var r=n(758),o=n(3526),a=n(6705),i=n(8743);function l(){const e=r.useContext(i.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var s=n(3016),c=n(9631),u=n(6070);function d(e){let{title:t,description:n,keywords:r,image:o,children:i}=e;const l=(0,c.s)(t),{withBaseUrl:d}=(0,s.hH)(),f=o?d(o,{absolute:!0}):void 0;return(0,u.jsxs)(a.A,{children:[t&&(0,u.jsx)("title",{children:l}),t&&(0,u.jsx)("meta",{property:"og:title",content:l}),n&&(0,u.jsx)("meta",{name:"description",content:n}),n&&(0,u.jsx)("meta",{property:"og:description",content:n}),r&&(0,u.jsx)("meta",{name:"keywords",content:Array.isArray(r)?r.join(","):r}),f&&(0,u.jsx)("meta",{property:"og:image",content:f}),f&&(0,u.jsx)("meta",{name:"twitter:image",content:f}),i]})}const f=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(f),l=(0,o.A)(i,t);return(0,u.jsxs)(f.Provider,{value:l,children:[(0,u.jsx)(a.A,{children:(0,u.jsx)("html",{className:l})}),n]})}function m(e){let{children:t}=e;const n=l(),r=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const a=`plugin-id-${n.plugin.id}`;return(0,u.jsx)(p,{className:(0,o.A)(r,a),children:t})}},6889:(e,t,n)=>{"use strict";n.d(t,{Be:()=>c,ZC:()=>l,_q:()=>i,dV:()=>s,fM:()=>u});var r=n(758),o=n(8962),a=n(6070);function i(e){const t=(0,r.useRef)(e);return(0,o.A)((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function l(e){const t=(0,r.useRef)();return(0,o.A)((()=>{t.current=e})),t.current}class s extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?<name>\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function c(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function u(e){return t=>{let{children:n}=t;return(0,a.jsx)(a.Fragment,{children:e.reduceRight(((e,t)=>(0,a.jsx)(t,{children:e})),n)})}}},3034:(e,t,n)=>{"use strict";function r(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}n.d(t,{G:()=>r})},8819:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>l,ys:()=>i});var r=n(758),o=n(9885),a=n(1299);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function l(){const{baseUrl:e}=(0,a.A)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function o(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(o).flatMap((e=>e.routes??[])))}(n)}({routes:o.A,baseUrl:e})),[e])}},3926:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>f,Tv:()=>c,gk:()=>p});var r=n(758),o=n(7028),a=n(7114),i=(n(8962),n(6889)),l=n(6070);const s=r.createContext(void 0);function c(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,l.jsx)(s.Provider,{value:n,children:t})}function u(){const e=(0,r.useContext)(s);if(null==e)throw new i.dV("ScrollControllerProvider");return e}const d=()=>o.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function f(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=u(),o=(0,r.useRef)(d()),a=(0,i._q)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=d();a(e,o.current),o.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[a,n,...t])}function p(){const e=(0,r.useRef)(null),t=(0,a.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const o=document.documentElement.scrollTop;(n&&o>e||!n&&o<e)&&(t=requestAnimationFrame(r),window.scrollTo(0,Math.floor(.85*(o-e))+e))}(),()=>t&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},5289:(e,t,n)=>{"use strict";n.d(t,{C:()=>r});const r="default"},9426:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>c});n(758);const r=JSON.parse('{"N":"localStorage","M":""}'),o=r.N;function a(e){let{key:t,oldValue:n,newValue:r,storage:o}=e;if(n===r)return;const a=document.createEvent("StorageEvent");a.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,o),window.dispatchEvent(a)}function i(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,l||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),l=!0),null}var t}let l=!1;const s={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function c(e,t){const n=`${e}${r.M}`;if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(n);const o=i(t?.persistence);return null===o?s:{get:()=>{try{return o.getItem(n)}catch(e){return console.error(`Docusaurus storage error, can't get key=${n}`,e),null}},set:e=>{try{const t=o.getItem(n);o.setItem(n,e),a({key:n,oldValue:t,newValue:e,storage:o})}catch(t){console.error(`Docusaurus storage error, can't set ${n}=${e}`,t)}},del:()=>{try{const e=o.getItem(n);o.removeItem(n),a({key:n,oldValue:e,newValue:null,storage:o})}catch(e){console.error(`Docusaurus storage error, can't delete key=${n}`,e)}},listen:e=>{try{const t=t=>{t.storageArea===o&&t.key===n&&e(t)};return window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)}catch(t){return console.error(`Docusaurus storage error, can't listen for changes of key=${n}`,t),()=>{}}}}}},8425:(e,t,n)=>{"use strict";n.d(t,{o:()=>i});var r=n(1299),o=n(5557),a=n(1729);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:l}}=(0,r.A)(),{pathname:s}=(0,o.zy)(),c=(0,a.Ks)(s,{trailingSlash:n,baseUrl:e}),u=l===i?e:e.replace(`/${l}/`,"/"),d=c.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${u}`:`${u}${e}/`}(n)}${d}`}}}},1352:(e,t,n)=>{"use strict";n.d(t,{$:()=>i});var r=n(758),o=n(5557),a=n(6889);function i(e){const t=(0,o.zy)(),n=(0,a.ZC)(t),i=(0,a._q)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},588:(e,t,n)=>{"use strict";n.d(t,{p:()=>o});var r=n(1299);function o(){return(0,r.A)().siteConfig.themeConfig}},3612:(e,t,n)=>{"use strict";n.d(t,{c:()=>o});var r=n(1299);function o(){const{siteConfig:{themeConfig:e}}=(0,r.A)();return e}},7732:(e,t,n)=>{"use strict";n.d(t,{C:()=>l});var r=n(758),o=n(3034),a=n(3016),i=n(3612);function l(){const{withBaseUrl:e}=(0,a.hH)(),{algolia:{externalUrlRegex:t,replaceSearchResultPathname:n}}=(0,i.c)();return(0,r.useCallback)((r=>{const a=new URL(r);if((0,o.G)(t,a.href))return r;const i=`${a.pathname+a.hash}`;return e(function(e,t){return t?e.replaceAll(new RegExp(t.from,"g"),t.to):e}(i,n))}),[e,t,n])}},788:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addTrailingSlash=o,t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[i]=e.split(/[#?]/),l="/"===i||i===r?i:(s=i,c=n,c?o(s):a(s));var s,c;return e.replace(i,l)},t.addLeadingSlash=function(e){return(0,r.addPrefix)(e,"/")},t.removeTrailingSlash=a;const r=n(1635);function o(e){return e.endsWith("/")?e:`${e}/`}function a(e){return(0,r.removeSuffix)(e,"/")}},8898:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=function e(t){if(t.cause)return[t,...e(t.cause)];return[t]}},1729:(e,t,n)=>{"use strict";t.rA=t.Ks=void 0;const r=n(3422);var o=n(788);Object.defineProperty(t,"Ks",{enumerable:!0,get:function(){return r.__importDefault(o).default}});var a=n(1635);var i=n(8898);Object.defineProperty(t,"rA",{enumerable:!0,get:function(){return i.getErrorCausalChain}})},1635:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addPrefix=function(e,t){return e.startsWith(t)?e:`${t}${e}`},t.removeSuffix=function(e,t){if(""===t)return e;return e.endsWith(t)?e.slice(0,-t.length):e},t.addSuffix=function(e,t){return e.endsWith(t)?e:`${e}${t}`},t.removePrefix=function(e,t){return e.startsWith(t)?e.slice(t.length):e}},3332:(e,t,n)=>{"use strict";n.d(t,{zR:()=>w,TM:()=>O,yJ:()=>p,sC:()=>A,AO:()=>f});var r=n(9451);function o(e){return"/"===e.charAt(0)}function a(e,t){for(var n=t,r=n+1,o=e.length;r<o;n+=1,r+=1)e[n]=e[r];e.pop()}const i=function(e,t){void 0===t&&(t="");var n,r=e&&e.split("/")||[],i=t&&t.split("/")||[],l=e&&o(e),s=t&&o(t),c=l||s;if(e&&o(e)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";if(i.length){var u=i[i.length-1];n="."===u||".."===u||""===u}else n=!1;for(var d=0,f=i.length;f>=0;f--){var p=i[f];"."===p?a(i,f):".."===p?(a(i,f),d++):d&&(a(i,f),d--)}if(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&o(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var l=n(5385);function s(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function f(e){var t=e.pathname,n=e.search,r=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(o+="#"===r.charAt(0)?r:"#"+r),o}function p(e,t,n,o){var a;"string"==typeof e?(a=function(e){var t=e||"/",n="",r="",o=t.indexOf("#");-1!==o&&(r=t.substr(o),t=t.substr(0,o));var a=t.indexOf("?");return-1!==a&&(n=t.substr(a),t=t.substr(0,a)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),a.state=t):(void 0===(a=(0,r.A)({},e)).pathname&&(a.pathname=""),a.search?"?"!==a.search.charAt(0)&&(a.search="?"+a.search):a.search="",a.hash?"#"!==a.hash.charAt(0)&&(a.hash="#"+a.hash):a.hash="",void 0!==t&&void 0===a.state&&(a.state=t));try{a.pathname=decodeURI(a.pathname)}catch(l){throw l instanceof URIError?new URIError('Pathname "'+a.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):l}return n&&(a.key=n),o?a.pathname?"/"!==a.pathname.charAt(0)&&(a.pathname=i(a.pathname,o.pathname)):a.pathname=o.pathname:a.pathname||(a.pathname="/"),a}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,o){if(null!=e){var a="function"==typeof e?e(t,n):e;"string"==typeof a?"function"==typeof r?r(a,o):o(!0):o(!1!==a)}else o(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];t.forEach((function(e){return e.apply(void 0,n)}))}}}var h=!("undefined"==typeof window||!window.document||!window.document.createElement);function g(e,t){t(window.confirm(e))}var y="popstate",b="hashchange";function v(){try{return window.history.state||{}}catch(e){return{}}}function w(e){void 0===e&&(e={}),h||(0,l.A)(!1);var t,n=window.history,o=(-1===(t=window.navigator.userAgent).indexOf("Android 2.")&&-1===t.indexOf("Android 4.0")||-1===t.indexOf("Mobile Safari")||-1!==t.indexOf("Chrome")||-1!==t.indexOf("Windows Phone"))&&window.history&&"pushState"in window.history,a=!(-1===window.navigator.userAgent.indexOf("Trident")),i=e,c=i.forceRefresh,w=void 0!==c&&c,S=i.getUserConfirmation,k=void 0===S?g:S,x=i.keyLength,E=void 0===x?6:x,_=e.basename?d(s(e.basename)):"";function O(e){var t=e||{},n=t.key,r=t.state,o=window.location,a=o.pathname+o.search+o.hash;return _&&(a=u(a,_)),p(a,r,n)}function C(){return Math.random().toString(36).substr(2,E)}var A=m();function T(e){(0,r.A)($,e),$.length=n.length,A.notifyListeners($.location,$.action)}function j(e){(function(e){return void 0===e.state&&-1===navigator.userAgent.indexOf("CriOS")})(e)||N(O(e.state))}function P(){N(O(v()))}var I=!1;function N(e){if(I)I=!1,T();else{A.confirmTransitionTo(e,"POP",k,(function(t){t?T({action:"POP",location:e}):function(e){var t=$.location,n=L.indexOf(t.key);-1===n&&(n=0);var r=L.indexOf(e.key);-1===r&&(r=0);var o=n-r;o&&(I=!0,M(o))}(e)}))}}var R=O(v()),L=[R.key];function D(e){return _+f(e)}function M(e){n.go(e)}var F=0;function z(e){1===(F+=e)&&1===e?(window.addEventListener(y,j),a&&window.addEventListener(b,P)):0===F&&(window.removeEventListener(y,j),a&&window.removeEventListener(b,P))}var B=!1;var $={length:n.length,action:"POP",location:R,createHref:D,push:function(e,t){var r="PUSH",a=p(e,t,C(),$.location);A.confirmTransitionTo(a,r,k,(function(e){if(e){var t=D(a),i=a.key,l=a.state;if(o)if(n.pushState({key:i,state:l},null,t),w)window.location.href=t;else{var s=L.indexOf($.location.key),c=L.slice(0,s+1);c.push(a.key),L=c,T({action:r,location:a})}else window.location.href=t}}))},replace:function(e,t){var r="REPLACE",a=p(e,t,C(),$.location);A.confirmTransitionTo(a,r,k,(function(e){if(e){var t=D(a),i=a.key,l=a.state;if(o)if(n.replaceState({key:i,state:l},null,t),w)window.location.replace(t);else{var s=L.indexOf($.location.key);-1!==s&&(L[s]=a.key),T({action:r,location:a})}else window.location.replace(t)}}))},go:M,goBack:function(){M(-1)},goForward:function(){M(1)},block:function(e){void 0===e&&(e=!1);var t=A.setPrompt(e);return B||(z(1),B=!0),function(){return B&&(B=!1,z(-1)),t()}},listen:function(e){var t=A.appendListener(e);return z(1),function(){z(-1),t()}}};return $}var S="hashchange",k={hashbang:{encodePath:function(e){return"!"===e.charAt(0)?e:"!/"+c(e)},decodePath:function(e){return"!"===e.charAt(0)?e.substr(1):e}},noslash:{encodePath:c,decodePath:s},slash:{encodePath:s,decodePath:s}};function x(e){var t=e.indexOf("#");return-1===t?e:e.slice(0,t)}function E(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.substring(t+1)}function _(e){window.location.replace(x(window.location.href)+"#"+e)}function O(e){void 0===e&&(e={}),h||(0,l.A)(!1);var t=window.history,n=(window.navigator.userAgent.indexOf("Firefox"),e),o=n.getUserConfirmation,a=void 0===o?g:o,i=n.hashType,c=void 0===i?"slash":i,y=e.basename?d(s(e.basename)):"",b=k[c],v=b.encodePath,w=b.decodePath;function O(){var e=w(E());return y&&(e=u(e,y)),p(e)}var C=m();function A(e){(0,r.A)(B,e),B.length=t.length,C.notifyListeners(B.location,B.action)}var T=!1,j=null;function P(){var e,t,n=E(),r=v(n);if(n!==r)_(r);else{var o=O(),i=B.location;if(!T&&(t=o,(e=i).pathname===t.pathname&&e.search===t.search&&e.hash===t.hash))return;if(j===f(o))return;j=null,function(e){if(T)T=!1,A();else{var t="POP";C.confirmTransitionTo(e,t,a,(function(n){n?A({action:t,location:e}):function(e){var t=B.location,n=L.lastIndexOf(f(t));-1===n&&(n=0);var r=L.lastIndexOf(f(e));-1===r&&(r=0);var o=n-r;o&&(T=!0,D(o))}(e)}))}}(o)}}var I=E(),N=v(I);I!==N&&_(N);var R=O(),L=[f(R)];function D(e){t.go(e)}var M=0;function F(e){1===(M+=e)&&1===e?window.addEventListener(S,P):0===M&&window.removeEventListener(S,P)}var z=!1;var B={length:t.length,action:"POP",location:R,createHref:function(e){var t=document.querySelector("base"),n="";return t&&t.getAttribute("href")&&(n=x(window.location.href)),n+"#"+v(y+f(e))},push:function(e,t){var n="PUSH",r=p(e,void 0,void 0,B.location);C.confirmTransitionTo(r,n,a,(function(e){if(e){var t=f(r),o=v(y+t);if(E()!==o){j=t,function(e){window.location.hash=e}(o);var a=L.lastIndexOf(f(B.location)),i=L.slice(0,a+1);i.push(t),L=i,A({action:n,location:r})}else A()}}))},replace:function(e,t){var n="REPLACE",r=p(e,void 0,void 0,B.location);C.confirmTransitionTo(r,n,a,(function(e){if(e){var t=f(r),o=v(y+t);E()!==o&&(j=t,_(o));var a=L.indexOf(f(B.location));-1!==a&&(L[a]=t),A({action:n,location:r})}}))},go:D,goBack:function(){D(-1)},goForward:function(){D(1)},block:function(e){void 0===e&&(e=!1);var t=C.setPrompt(e);return z||(F(1),z=!0),function(){return z&&(z=!1,F(-1)),t()}},listen:function(e){var t=C.appendListener(e);return F(1),function(){F(-1),t()}}};return B}function C(e,t,n){return Math.min(Math.max(e,t),n)}function A(e){void 0===e&&(e={});var t=e,n=t.getUserConfirmation,o=t.initialEntries,a=void 0===o?["/"]:o,i=t.initialIndex,l=void 0===i?0:i,s=t.keyLength,c=void 0===s?6:s,u=m();function d(e){(0,r.A)(w,e),w.length=w.entries.length,u.notifyListeners(w.location,w.action)}function h(){return Math.random().toString(36).substr(2,c)}var g=C(l,0,a.length-1),y=a.map((function(e){return p(e,void 0,"string"==typeof e?h():e.key||h())})),b=f;function v(e){var t=C(w.index+e,0,w.entries.length-1),r=w.entries[t];u.confirmTransitionTo(r,"POP",n,(function(e){e?d({action:"POP",location:r,index:t}):d()}))}var w={length:y.length,action:"POP",location:y[g],index:g,entries:y,createHref:b,push:function(e,t){var r="PUSH",o=p(e,t,h(),w.location);u.confirmTransitionTo(o,r,n,(function(e){if(e){var t=w.index+1,n=w.entries.slice(0);n.length>t?n.splice(t,n.length-t,o):n.push(o),d({action:r,location:o,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",o=p(e,t,h(),w.location);u.confirmTransitionTo(o,r,n,(function(e){e&&(w.entries[w.index]=o,d({action:r,location:o}))}))},go:v,goBack:function(){v(-1)},goForward:function(){v(1)},canGo:function(e){var t=w.index+e;return t>=0&&t<w.entries.length},block:function(e){return void 0===e&&(e=!1),u.setPrompt(e)},listen:function(e){return u.appendListener(e)}};return w}},1035:(e,t,n)=>{"use strict";var r=n(5959),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},l={};function s(e){return r.isMemo(e)?i:l[e.$$typeof]||o}l[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},l[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,f=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var o=p(n);o&&o!==m&&e(t,o,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var l=s(t),h=s(n),g=0;g<i.length;++g){var y=i[g];if(!(a[y]||r&&r[y]||h&&h[y]||l&&l[y])){var b=f(n,y);try{c(t,y,b)}catch(v){}}}}return t}},9597:e=>{"use strict";e.exports=function(e,t,n,r,o,a,i,l){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,a,i,l],u=0;(s=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw s.framesToPop=1,s}}},5526:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},7263:(e,t,n)=>{"use strict";n.r(t)},6103:(e,t,n)=>{"use strict";n.r(t)},8744:function(e,t,n){var r,o;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};function o(e,t,n){return e<t?t:e>n?n:e}function a(e){return 100*(-1+e)}function i(e,t,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+a(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+a(e)+"%,0)"}:{"margin-left":a(e)+"%"}).transition="all "+t+"ms "+n,o}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,r.minimum,1),n.status=1===e?null:e;var a=n.render(!t),c=a.querySelector(r.barSelector),u=r.speed,d=r.easing;return a.offsetWidth,l((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(c,i(e,u,d)),1===e?(s(a,{transition:"none",opacity:1}),a.offsetWidth,setTimeout((function(){s(a,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var o,i=t.querySelector(r.barSelector),l=e?"-100":a(n.status||0),c=document.querySelector(r.parent);return s(i,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(o=t.querySelector(r.spinnerSelector))&&p(o),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&p(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var l=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),s=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,o=e.length,a=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((r=e[o]+a)in n)return r;return t}function o(e){return e=n(e),t[e]||(t[e]=r(e))}function a(e,t,n){t=o(t),e.style[t]=n}return function(e,t){var n,r,o=arguments;if(2==o.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&a(e,n,r);else a(e,o[1],o[2])}}();function c(e,t){return("string"==typeof e?e:f(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=f(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=f(e);c(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function f(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function p(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(o="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=o)},6150:(e,t,n)=>{var r=n(5526);e.exports=p,e.exports.parse=a,e.exports.compile=function(e,t){return l(a(e,t),t)},e.exports.tokensToFunction=l,e.exports.tokensToRegExp=f;var o=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function a(e,t){for(var n,r=[],a=0,i=0,l="",u=t&&t.delimiter||"/";null!=(n=o.exec(e));){var d=n[0],f=n[1],p=n.index;if(l+=e.slice(i,p),i=p+d.length,f)l+=f[1];else{var m=e[i],h=n[2],g=n[3],y=n[4],b=n[5],v=n[6],w=n[7];l&&(r.push(l),l="");var S=null!=h&&null!=m&&m!==h,k="+"===v||"*"===v,x="?"===v||"*"===v,E=n[2]||u,_=y||b;r.push({name:g||a++,prefix:h||"",delimiter:E,optional:x,repeat:k,partial:S,asterisk:!!w,pattern:_?c(_):w?".*":"[^"+s(E)+"]+?"})}}return i<e.length&&(l+=e.substr(i)),l&&r.push(l),r}function i(e){return encodeURI(e).replace(/[\/?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function l(e,t){for(var n=new Array(e.length),o=0;o<e.length;o++)"object"==typeof e[o]&&(n[o]=new RegExp("^(?:"+e[o].pattern+")$",d(t)));return function(t,o){for(var a="",l=t||{},s=(o||{}).pretty?i:encodeURIComponent,c=0;c<e.length;c++){var u=e[c];if("string"!=typeof u){var d,f=l[u.name];if(null==f){if(u.optional){u.partial&&(a+=u.prefix);continue}throw new TypeError('Expected "'+u.name+'" to be defined')}if(r(f)){if(!u.repeat)throw new TypeError('Expected "'+u.name+'" to not repeat, but received `'+JSON.stringify(f)+"`");if(0===f.length){if(u.optional)continue;throw new TypeError('Expected "'+u.name+'" to not be empty')}for(var p=0;p<f.length;p++){if(d=s(f[p]),!n[c].test(d))throw new TypeError('Expected all "'+u.name+'" to match "'+u.pattern+'", but received `'+JSON.stringify(d)+"`");a+=(0===p?u.prefix:u.delimiter)+d}}else{if(d=u.asterisk?encodeURI(f).replace(/[?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})):s(f),!n[c].test(d))throw new TypeError('Expected "'+u.name+'" to match "'+u.pattern+'", but received "'+d+'"');a+=u.prefix+d}}else a+=u}return a}}function s(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function c(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function u(e,t){return e.keys=t,e}function d(e){return e&&e.sensitive?"":"i"}function f(e,t,n){r(t)||(n=t||n,t=[]);for(var o=(n=n||{}).strict,a=!1!==n.end,i="",l=0;l<e.length;l++){var c=e[l];if("string"==typeof c)i+=s(c);else{var f=s(c.prefix),p="(?:"+c.pattern+")";t.push(c),c.repeat&&(p+="(?:"+f+p+")*"),i+=p=c.optional?c.partial?f+"("+p+")?":"(?:"+f+"("+p+"))?":f+"("+p+")"}}var m=s(n.delimiter||"/"),h=i.slice(-m.length)===m;return o||(i=(h?i.slice(0,-m.length):i)+"(?:"+m+"(?=$))?"),i+=a?"$":o&&h?"":"(?="+m+"|$)",u(new RegExp("^"+i,d(n)),t)}function p(e,t,n){return r(t)||(n=t||n,t=[]),n=n||{},e instanceof RegExp?function(e,t){var n=e.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)t.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return u(e,t)}(e,t):r(e)?function(e,t,n){for(var r=[],o=0;o<e.length;o++)r.push(p(e[o],t,n).source);return u(new RegExp("(?:"+r.join("|")+")",d(n)),t)}(e,t,n):function(e,t,n){return f(a(e,n),t,n)}(e,t,n)}},8520:()=>{!function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var o=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],a=r.variable[1].inside,i=0;i<o.length;i++)a[o[i]]=e.languages.bash[o[i]];e.languages.sh=e.languages.bash,e.languages.shell=e.languages.bash}(Prism)},1274:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,o,a){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(o,(function(e){if("function"==typeof a&&!a(e))return e;for(var o,l=i.length;-1!==n.code.indexOf(o=t(r,l));)++l;return i[l]=e,o})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var o=0,a=Object.keys(n.tokenStack);!function i(l){for(var s=0;s<l.length&&!(o>=a.length);s++){var c=l[s];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=a[o],d=n.tokenStack[u],f="string"==typeof c?c:c.content,p=t(r,u),m=f.indexOf(p);if(m>-1){++o;var h=f.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),y=f.substring(m+p.length),b=[];h&&b.push.apply(b,i([h])),b.push(g),y&&b.push.apply(b,i([y])),"string"==typeof c?l.splice.apply(l,[s,1].concat(b)):c.content=b}}else c.content&&i(c.content)}return l}(n.tokens)}}}})}(Prism)},6290:()=>{!function(e){var t=/(?:[\w-]+|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*")/.source;function n(e){return e.replace(/__/g,(function(){return t}))}e.languages.toml={comment:{pattern:/#.*/,greedy:!0},table:{pattern:RegExp(n(/(^[\t ]*\[\s*(?:\[\s*)?)__(?:\s*\.\s*__)*(?=\s*\])/.source),"m"),lookbehind:!0,greedy:!0,alias:"class-name"},key:{pattern:RegExp(n(/(^[\t ]*|[{,]\s*)__(?:\s*\.\s*__)*(?=\s*=)/.source),"m"),lookbehind:!0,greedy:!0,alias:"property"},string:{pattern:/"""(?:\\[\s\S]|[^\\])*?"""|'''[\s\S]*?'''|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},date:[{pattern:/\b\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)?\b/i,alias:"number"},{pattern:/\b\d{2}:\d{2}:\d{2}(?:\.\d+)?\b/,alias:"number"}],number:/(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\b\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]?\b(?:inf|nan)\b/,boolean:/\b(?:false|true)\b/,punctuation:/[.,=[\]{}]/}}(Prism)},6186:(e,t,n)=>{"use strict";var r=n(2985);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var l=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return n.PropTypes=n,n}},2736:(e,t,n)=>{e.exports=n(6186)()},2985:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},9481:(e,t,n)=>{"use strict";var r=n(758),o=n(1896);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var i=new Set,l={};function s(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(l[e]=t,e=0;e<t.length;e++)i.add(t[e])}var u=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),d=Object.prototype.hasOwnProperty,f=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,p={},m={};function h(e,t,n,r,o,a,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=i}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){g[e]=new h(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];g[t]=new h(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){g[e]=new h(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){g[e]=new h(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){g[e]=new h(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){g[e]=new h(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){g[e]=new h(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){g[e]=new h(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){g[e]=new h(e,5,!1,e.toLowerCase(),null,!1,!1)}));var y=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}function v(e,t,n,r){var o=g.hasOwnProperty(t)?g[t]:null;(null!==o?0!==o.type:r||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,r)&&(n=null),r||null===o?function(e){return!!d.call(m,e)||!d.call(p,e)&&(f.test(e)?m[e]=!0:(p[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,r=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new h(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new h(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(y,b);g[t]=new h(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new h(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new h("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new h(e,1,!1,e.toLowerCase(),null,!0,!0)}));var w=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,S=Symbol.for("react.element"),k=Symbol.for("react.portal"),x=Symbol.for("react.fragment"),E=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),O=Symbol.for("react.provider"),C=Symbol.for("react.context"),A=Symbol.for("react.forward_ref"),T=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),P=Symbol.for("react.memo"),I=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var N=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var R=Symbol.iterator;function L(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=R&&e[R]||e["@@iterator"])?e:null}var D,M=Object.assign;function F(e){if(void 0===D)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);D=t&&t[1]||""}return"\n"+D+e}var z=!1;function B(e,t){if(!e||z)return"";z=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}catch(c){if(c&&r&&"string"==typeof c.stack){for(var o=c.stack.split("\n"),a=r.stack.split("\n"),i=o.length-1,l=a.length-1;1<=i&&0<=l&&o[i]!==a[l];)l--;for(;1<=i&&0<=l;i--,l--)if(o[i]!==a[l]){if(1!==i||1!==l)do{if(i--,0>--l||o[i]!==a[l]){var s="\n"+o[i].replace(" at new "," at ");return e.displayName&&s.includes("<anonymous>")&&(s=s.replace("<anonymous>",e.displayName)),s}}while(1<=i&&0<=l);break}}}finally{z=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?F(e):""}function $(e){switch(e.tag){case 5:return F(e.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 2:case 15:return e=B(e.type,!1);case 11:return e=B(e.type.render,!1);case 1:return e=B(e.type,!0);default:return""}}function U(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case x:return"Fragment";case k:return"Portal";case _:return"Profiler";case E:return"StrictMode";case T:return"Suspense";case j:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case C:return(e.displayName||"Context")+".Consumer";case O:return(e._context.displayName||"Context")+".Provider";case A:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case P:return null!==(t=e.displayName||null)?t:U(e.type)||"Memo";case I:t=e._payload,e=e._init;try{return U(e(t))}catch(n){}}return null}function H(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return U(t);case 8:return t===E?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t}return null}function q(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function V(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function W(e){e._valueTracker||(e._valueTracker=function(e){var t=V(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){r=""+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function G(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=V(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function K(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function Y(e,t){var n=t.checked;return M({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function Q(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=q(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function Z(e,t){null!=(t=t.checked)&&v(e,"checked",t,!1)}function X(e,t){Z(e,t);var n=q(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?ee(e,t.type,n):t.hasOwnProperty("defaultValue")&&ee(e,t.type,q(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function J(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ee(e,t,n){"number"===t&&K(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var te=Array.isArray;function ne(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&r&&(e[n].defaultSelected=!0)}else{for(n=""+q(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(r&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function re(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(a(91));return M({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function oe(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(a(92));if(te(n)){if(1<n.length)throw Error(a(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:q(n)}}function ae(e,t){var n=q(t.value),r=q(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ie(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function le(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function se(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?le(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var ce,ue,de=(ue=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((ce=ce||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ce.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function fe(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var pe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},me=["Webkit","ms","Moz","O"];function he(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||pe.hasOwnProperty(e)&&pe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),o=he(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}Object.keys(pe).forEach((function(e){me.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),pe[t]=pe[e]}))}));var ye=M({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function be(e,t){if(t){if(ye[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(a(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(a(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(a(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(a(62))}}function ve(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function Se(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var ke=null,xe=null,Ee=null;function _e(e){if(e=wo(e)){if("function"!=typeof ke)throw Error(a(280));var t=e.stateNode;t&&(t=ko(t),ke(e.stateNode,e.type,t))}}function Oe(e){xe?Ee?Ee.push(e):Ee=[e]:xe=e}function Ce(){if(xe){var e=xe,t=Ee;if(Ee=xe=null,_e(e),t)for(e=0;e<t.length;e++)_e(t[e])}}function Ae(e,t){return e(t)}function Te(){}var je=!1;function Pe(e,t,n){if(je)return e(t,n);je=!0;try{return Ae(e,t,n)}finally{je=!1,(null!==xe||null!==Ee)&&(Te(),Ce())}}function Ie(e,t){var n=e.stateNode;if(null===n)return null;var r=ko(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(a(231,t,typeof n));return n}var Ne=!1;if(u)try{var Re={};Object.defineProperty(Re,"passive",{get:function(){Ne=!0}}),window.addEventListener("test",Re,Re),window.removeEventListener("test",Re,Re)}catch(ue){Ne=!1}function Le(e,t,n,r,o,a,i,l,s){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(u){this.onError(u)}}var De=!1,Me=null,Fe=!1,ze=null,Be={onError:function(e){De=!0,Me=e}};function $e(e,t,n,r,o,a,i,l,s){De=!1,Me=null,Le.apply(Be,arguments)}function Ue(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function He(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function qe(e){if(Ue(e)!==e)throw Error(a(188))}function Ve(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Ue(e)))throw Error(a(188));return t!==e?null:e}for(var n=e,r=t;;){var o=n.return;if(null===o)break;var i=o.alternate;if(null===i){if(null!==(r=o.return)){n=r;continue}break}if(o.child===i.child){for(i=o.child;i;){if(i===n)return qe(o),e;if(i===r)return qe(o),t;i=i.sibling}throw Error(a(188))}if(n.return!==r.return)n=o,r=i;else{for(var l=!1,s=o.child;s;){if(s===n){l=!0,n=o,r=i;break}if(s===r){l=!0,r=o,n=i;break}s=s.sibling}if(!l){for(s=i.child;s;){if(s===n){l=!0,n=i,r=o;break}if(s===r){l=!0,r=i,n=o;break}s=s.sibling}if(!l)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(3!==n.tag)throw Error(a(188));return n.stateNode.current===n?e:t}(e))?We(e):null}function We(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=We(e);if(null!==t)return t;e=e.sibling}return null}var Ge=o.unstable_scheduleCallback,Ke=o.unstable_cancelCallback,Ye=o.unstable_shouldYield,Qe=o.unstable_requestPaint,Ze=o.unstable_now,Xe=o.unstable_getCurrentPriorityLevel,Je=o.unstable_ImmediatePriority,et=o.unstable_UserBlockingPriority,tt=o.unstable_NormalPriority,nt=o.unstable_LowPriority,rt=o.unstable_IdlePriority,ot=null,at=null;var it=Math.clz32?Math.clz32:function(e){return e>>>=0,0===e?32:31-(lt(e)/st|0)|0},lt=Math.log,st=Math.LN2;var ct=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ft(e,t){var n=e.pendingLanes;if(0===n)return 0;var r=0,o=e.suspendedLanes,a=e.pingedLanes,i=268435455&n;if(0!==i){var l=i&~o;0!==l?r=dt(l):0!==(a&=i)&&(r=dt(a))}else 0!==(i=n&~o)?r=dt(i):0!==a&&(r=dt(a));if(0===r)return 0;if(0!==t&&t!==r&&!(t&o)&&((o=r&-r)>=(a=t&-t)||16===o&&4194240&a))return t;if(4&r&&(r|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)o=1<<(n=31-it(t)),r|=e[n],t&=~o;return r}function pt(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function mt(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function ht(){var e=ct;return!(4194240&(ct<<=1))&&(ct=64),e}function gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function yt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=n}function bt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-it(n),o=1<<r;o&t|e[r]&t&&(e[r]|=t),n&=~o}}var vt=0;function wt(e){return 1<(e&=-e)?4<e?268435455&e?16:536870912:4:1}var St,kt,xt,Et,_t,Ot=!1,Ct=[],At=null,Tt=null,jt=null,Pt=new Map,It=new Map,Nt=[],Rt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Lt(e,t){switch(e){case"focusin":case"focusout":At=null;break;case"dragenter":case"dragleave":Tt=null;break;case"mouseover":case"mouseout":jt=null;break;case"pointerover":case"pointerout":Pt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":It.delete(t.pointerId)}}function Dt(e,t,n,r,o,a){return null===e||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[o]},null!==t&&(null!==(t=wo(t))&&kt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function Mt(e){var t=vo(e.target);if(null!==t){var n=Ue(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=He(n)))return e.blockedOn=t,void _t(e.priority,(function(){xt(n)}))}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Ft(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Yt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=wo(n))&&kt(t),e.blockedOn=n,!1;var r=new(n=e.nativeEvent).constructor(n.type,n);we=r,n.target.dispatchEvent(r),we=null,t.shift()}return!0}function zt(e,t,n){Ft(e)&&n.delete(t)}function Bt(){Ot=!1,null!==At&&Ft(At)&&(At=null),null!==Tt&&Ft(Tt)&&(Tt=null),null!==jt&&Ft(jt)&&(jt=null),Pt.forEach(zt),It.forEach(zt)}function $t(e,t){e.blockedOn===t&&(e.blockedOn=null,Ot||(Ot=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,Bt)))}function Ut(e){function t(t){return $t(t,e)}if(0<Ct.length){$t(Ct[0],e);for(var n=1;n<Ct.length;n++){var r=Ct[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==At&&$t(At,e),null!==Tt&&$t(Tt,e),null!==jt&&$t(jt,e),Pt.forEach(t),It.forEach(t),n=0;n<Nt.length;n++)(r=Nt[n]).blockedOn===e&&(r.blockedOn=null);for(;0<Nt.length&&null===(n=Nt[0]).blockedOn;)Mt(n),null===n.blockedOn&&Nt.shift()}var Ht=w.ReactCurrentBatchConfig,qt=!0;function Vt(e,t,n,r){var o=vt,a=Ht.transition;Ht.transition=null;try{vt=1,Gt(e,t,n,r)}finally{vt=o,Ht.transition=a}}function Wt(e,t,n,r){var o=vt,a=Ht.transition;Ht.transition=null;try{vt=4,Gt(e,t,n,r)}finally{vt=o,Ht.transition=a}}function Gt(e,t,n,r){if(qt){var o=Yt(e,t,n,r);if(null===o)qr(e,t,r,Kt,n),Lt(e,r);else if(function(e,t,n,r,o){switch(t){case"focusin":return At=Dt(At,e,t,n,r,o),!0;case"dragenter":return Tt=Dt(Tt,e,t,n,r,o),!0;case"mouseover":return jt=Dt(jt,e,t,n,r,o),!0;case"pointerover":var a=o.pointerId;return Pt.set(a,Dt(Pt.get(a)||null,e,t,n,r,o)),!0;case"gotpointercapture":return a=o.pointerId,It.set(a,Dt(It.get(a)||null,e,t,n,r,o)),!0}return!1}(o,e,t,n,r))r.stopPropagation();else if(Lt(e,r),4&t&&-1<Rt.indexOf(e)){for(;null!==o;){var a=wo(o);if(null!==a&&St(a),null===(a=Yt(e,t,n,r))&&qr(e,t,r,Kt,n),a===o)break;o=a}null!==o&&r.stopPropagation()}else qr(e,t,r,null,n)}}var Kt=null;function Yt(e,t,n,r){if(Kt=null,null!==(e=vo(e=Se(r))))if(null===(t=Ue(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=He(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Kt=e,null}function Qt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Xe()){case Je:return 1;case et:return 4;case tt:case nt:return 16;case rt:return 536870912;default:return 16}default:return 16}}var Zt=null,Xt=null,Jt=null;function en(){if(Jt)return Jt;var e,t,n=Xt,r=n.length,o="value"in Zt?Zt.value:Zt.textContent,a=o.length;for(e=0;e<r&&n[e]===o[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===o[a-t];t++);return Jt=o.slice(e,1<t?1-t:void 0)}function tn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function nn(){return!0}function rn(){return!1}function on(e){function t(t,n,r,o,a){for(var i in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=o,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?nn:rn,this.isPropagationStopped=rn,this}return M(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=nn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=nn)},persist:function(){},isPersistent:nn}),t}var an,ln,sn,cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},un=on(cn),dn=M({},cn,{view:0,detail:0}),fn=on(dn),pn=M({},dn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:_n,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==sn&&(sn&&"mousemove"===e.type?(an=e.screenX-sn.screenX,ln=e.screenY-sn.screenY):ln=an=0,sn=e),an)},movementY:function(e){return"movementY"in e?e.movementY:ln}}),mn=on(pn),hn=on(M({},pn,{dataTransfer:0})),gn=on(M({},dn,{relatedTarget:0})),yn=on(M({},cn,{animationName:0,elapsedTime:0,pseudoElement:0})),bn=M({},cn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),vn=on(bn),wn=on(M({},cn,{data:0})),Sn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},kn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},xn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function En(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=xn[e])&&!!t[e]}function _n(){return En}var On=M({},dn,{key:function(e){if(e.key){var t=Sn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?kn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:_n,charCode:function(e){return"keypress"===e.type?tn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Cn=on(On),An=on(M({},pn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Tn=on(M({},dn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:_n})),jn=on(M({},cn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Pn=M({},pn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),In=on(Pn),Nn=[9,13,27,32],Rn=u&&"CompositionEvent"in window,Ln=null;u&&"documentMode"in document&&(Ln=document.documentMode);var Dn=u&&"TextEvent"in window&&!Ln,Mn=u&&(!Rn||Ln&&8<Ln&&11>=Ln),Fn=String.fromCharCode(32),zn=!1;function Bn(e,t){switch(e){case"keyup":return-1!==Nn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function $n(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Un=!1;var Hn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function qn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Hn[e.type]:"textarea"===t}function Vn(e,t,n,r){Oe(r),0<(t=Wr(t,"onChange")).length&&(n=new un("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Wn=null,Gn=null;function Kn(e){Fr(e,0)}function Yn(e){if(G(So(e)))return e}function Qn(e,t){if("change"===e)return t}var Zn=!1;if(u){var Xn;if(u){var Jn="oninput"in document;if(!Jn){var er=document.createElement("div");er.setAttribute("oninput","return;"),Jn="function"==typeof er.oninput}Xn=Jn}else Xn=!1;Zn=Xn&&(!document.documentMode||9<document.documentMode)}function tr(){Wn&&(Wn.detachEvent("onpropertychange",nr),Gn=Wn=null)}function nr(e){if("value"===e.propertyName&&Yn(Gn)){var t=[];Vn(t,Gn,e,Se(e)),Pe(Kn,t)}}function rr(e,t,n){"focusin"===e?(tr(),Gn=n,(Wn=t).attachEvent("onpropertychange",nr)):"focusout"===e&&tr()}function or(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Yn(Gn)}function ar(e,t){if("click"===e)return Yn(t)}function ir(e,t){if("input"===e||"change"===e)return Yn(t)}var lr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t};function sr(e,t){if(lr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var o=n[r];if(!d.call(t,o)||!lr(e[o],t[o]))return!1}return!0}function cr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ur(e,t){var n,r=cr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=cr(r)}}function dr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function fr(){for(var e=window,t=K();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=K((e=t.contentWindow).document)}return t}function pr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function mr(e){var t=fr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&dr(n.ownerDocument.documentElement,n)){if(null!==r&&pr(n))if(t=r.start,void 0===(e=r.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=n.textContent.length,a=Math.min(r.start,o);r=void 0===r.end?a:Math.min(r.end,o),!e.extend&&a>r&&(o=r,r=a,a=o),o=ur(n,a);var i=ur(n,r);o&&i&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),a>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"==typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var hr=u&&"documentMode"in document&&11>=document.documentMode,gr=null,yr=null,br=null,vr=!1;function wr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;vr||null==gr||gr!==K(r)||("selectionStart"in(r=gr)&&pr(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},br&&sr(br,r)||(br=r,0<(r=Wr(yr,"onSelect")).length&&(t=new un("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=gr)))}function Sr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var kr={animationend:Sr("Animation","AnimationEnd"),animationiteration:Sr("Animation","AnimationIteration"),animationstart:Sr("Animation","AnimationStart"),transitionend:Sr("Transition","TransitionEnd")},xr={},Er={};function _r(e){if(xr[e])return xr[e];if(!kr[e])return e;var t,n=kr[e];for(t in n)if(n.hasOwnProperty(t)&&t in Er)return xr[e]=n[t];return e}u&&(Er=document.createElement("div").style,"AnimationEvent"in window||(delete kr.animationend.animation,delete kr.animationiteration.animation,delete kr.animationstart.animation),"TransitionEvent"in window||delete kr.transitionend.transition);var Or=_r("animationend"),Cr=_r("animationiteration"),Ar=_r("animationstart"),Tr=_r("transitionend"),jr=new Map,Pr="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Ir(e,t){jr.set(e,t),s(t,[e])}for(var Nr=0;Nr<Pr.length;Nr++){var Rr=Pr[Nr];Ir(Rr.toLowerCase(),"on"+(Rr[0].toUpperCase()+Rr.slice(1)))}Ir(Or,"onAnimationEnd"),Ir(Cr,"onAnimationIteration"),Ir(Ar,"onAnimationStart"),Ir("dblclick","onDoubleClick"),Ir("focusin","onFocus"),Ir("focusout","onBlur"),Ir(Tr,"onTransitionEnd"),c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),s("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),s("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),s("onBeforeInput",["compositionend","keypress","textInput","paste"]),s("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Lr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Dr=new Set("cancel close invalid load scroll toggle".split(" ").concat(Lr));function Mr(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,o,i,l,s,c){if($e.apply(this,arguments),De){if(!De)throw Error(a(198));var u=Me;De=!1,Me=null,Fe||(Fe=!0,ze=u)}}(r,t,void 0,e),e.currentTarget=null}function Fr(e,t){t=!!(4&t);for(var n=0;n<e.length;n++){var r=e[n],o=r.event;r=r.listeners;e:{var a=void 0;if(t)for(var i=r.length-1;0<=i;i--){var l=r[i],s=l.instance,c=l.currentTarget;if(l=l.listener,s!==a&&o.isPropagationStopped())break e;Mr(o,l,c),a=s}else for(i=0;i<r.length;i++){if(s=(l=r[i]).instance,c=l.currentTarget,l=l.listener,s!==a&&o.isPropagationStopped())break e;Mr(o,l,c),a=s}}}if(Fe)throw e=ze,Fe=!1,ze=null,e}function zr(e,t){var n=t[go];void 0===n&&(n=t[go]=new Set);var r=e+"__bubble";n.has(r)||(Hr(t,e,2,!1),n.add(r))}function Br(e,t,n){var r=0;t&&(r|=4),Hr(n,e,r,t)}var $r="_reactListening"+Math.random().toString(36).slice(2);function Ur(e){if(!e[$r]){e[$r]=!0,i.forEach((function(t){"selectionchange"!==t&&(Dr.has(t)||Br(t,!1,e),Br(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[$r]||(t[$r]=!0,Br("selectionchange",!1,t))}}function Hr(e,t,n,r){switch(Qt(t)){case 1:var o=Vt;break;case 4:o=Wt;break;default:o=Gt}n=o.bind(null,t,n,e),o=void 0,!Ne||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),r?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function qr(e,t,n,r,o){var a=r;if(!(1&t||2&t||null===r))e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var l=r.stateNode.containerInfo;if(l===o||8===l.nodeType&&l.parentNode===o)break;if(4===i)for(i=r.return;null!==i;){var s=i.tag;if((3===s||4===s)&&((s=i.stateNode.containerInfo)===o||8===s.nodeType&&s.parentNode===o))return;i=i.return}for(;null!==l;){if(null===(i=vo(l)))return;if(5===(s=i.tag)||6===s){r=a=i;continue e}l=l.parentNode}}r=r.return}Pe((function(){var r=a,o=Se(n),i=[];e:{var l=jr.get(e);if(void 0!==l){var s=un,c=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":s=Cn;break;case"focusin":c="focus",s=gn;break;case"focusout":c="blur",s=gn;break;case"beforeblur":case"afterblur":s=gn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":s=mn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":s=hn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":s=Tn;break;case Or:case Cr:case Ar:s=yn;break;case Tr:s=jn;break;case"scroll":s=fn;break;case"wheel":s=In;break;case"copy":case"cut":case"paste":s=vn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":s=An}var u=!!(4&t),d=!u&&"scroll"===e,f=u?null!==l?l+"Capture":null:l;u=[];for(var p,m=r;null!==m;){var h=(p=m).stateNode;if(5===p.tag&&null!==h&&(p=h,null!==f&&(null!=(h=Ie(m,f))&&u.push(Vr(m,h,p)))),d)break;m=m.return}0<u.length&&(l=new s(l,c,null,n,o),i.push({event:l,listeners:u}))}}if(!(7&t)){if(s="mouseout"===e||"pointerout"===e,(!(l="mouseover"===e||"pointerover"===e)||n===we||!(c=n.relatedTarget||n.fromElement)||!vo(c)&&!c[ho])&&(s||l)&&(l=o.window===o?o:(l=o.ownerDocument)?l.defaultView||l.parentWindow:window,s?(s=r,null!==(c=(c=n.relatedTarget||n.toElement)?vo(c):null)&&(c!==(d=Ue(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(s=null,c=r),s!==c)){if(u=mn,h="onMouseLeave",f="onMouseEnter",m="mouse","pointerout"!==e&&"pointerover"!==e||(u=An,h="onPointerLeave",f="onPointerEnter",m="pointer"),d=null==s?l:So(s),p=null==c?l:So(c),(l=new u(h,m+"leave",s,n,o)).target=d,l.relatedTarget=p,h=null,vo(o)===r&&((u=new u(f,m+"enter",c,n,o)).target=p,u.relatedTarget=d,h=u),d=h,s&&c)e:{for(f=c,m=0,p=u=s;p;p=Gr(p))m++;for(p=0,h=f;h;h=Gr(h))p++;for(;0<m-p;)u=Gr(u),m--;for(;0<p-m;)f=Gr(f),p--;for(;m--;){if(u===f||null!==f&&u===f.alternate)break e;u=Gr(u),f=Gr(f)}u=null}else u=null;null!==s&&Kr(i,l,s,u,!1),null!==c&&null!==d&&Kr(i,d,c,u,!0)}if("select"===(s=(l=r?So(r):window).nodeName&&l.nodeName.toLowerCase())||"input"===s&&"file"===l.type)var g=Qn;else if(qn(l))if(Zn)g=ir;else{g=or;var y=rr}else(s=l.nodeName)&&"input"===s.toLowerCase()&&("checkbox"===l.type||"radio"===l.type)&&(g=ar);switch(g&&(g=g(e,r))?Vn(i,g,n,o):(y&&y(e,l,r),"focusout"===e&&(y=l._wrapperState)&&y.controlled&&"number"===l.type&&ee(l,"number",l.value)),y=r?So(r):window,e){case"focusin":(qn(y)||"true"===y.contentEditable)&&(gr=y,yr=r,br=null);break;case"focusout":br=yr=gr=null;break;case"mousedown":vr=!0;break;case"contextmenu":case"mouseup":case"dragend":vr=!1,wr(i,n,o);break;case"selectionchange":if(hr)break;case"keydown":case"keyup":wr(i,n,o)}var b;if(Rn)e:{switch(e){case"compositionstart":var v="onCompositionStart";break e;case"compositionend":v="onCompositionEnd";break e;case"compositionupdate":v="onCompositionUpdate";break e}v=void 0}else Un?Bn(e,n)&&(v="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(v="onCompositionStart");v&&(Mn&&"ko"!==n.locale&&(Un||"onCompositionStart"!==v?"onCompositionEnd"===v&&Un&&(b=en()):(Xt="value"in(Zt=o)?Zt.value:Zt.textContent,Un=!0)),0<(y=Wr(r,v)).length&&(v=new wn(v,e,null,n,o),i.push({event:v,listeners:y}),b?v.data=b:null!==(b=$n(n))&&(v.data=b))),(b=Dn?function(e,t){switch(e){case"compositionend":return $n(t);case"keypress":return 32!==t.which?null:(zn=!0,Fn);case"textInput":return(e=t.data)===Fn&&zn?null:e;default:return null}}(e,n):function(e,t){if(Un)return"compositionend"===e||!Rn&&Bn(e,t)?(e=en(),Jt=Xt=Zt=null,Un=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Mn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(r=Wr(r,"onBeforeInput")).length&&(o=new wn("onBeforeInput","beforeinput",null,n,o),i.push({event:o,listeners:r}),o.data=b))}Fr(i,t)}))}function Vr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Wr(e,t){for(var n=t+"Capture",r=[];null!==e;){var o=e,a=o.stateNode;5===o.tag&&null!==a&&(o=a,null!=(a=Ie(e,n))&&r.unshift(Vr(e,a,o)),null!=(a=Ie(e,t))&&r.push(Vr(e,a,o))),e=e.return}return r}function Gr(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Kr(e,t,n,r,o){for(var a=t._reactName,i=[];null!==n&&n!==r;){var l=n,s=l.alternate,c=l.stateNode;if(null!==s&&s===r)break;5===l.tag&&null!==c&&(l=c,o?null!=(s=Ie(n,a))&&i.unshift(Vr(n,s,l)):o||null!=(s=Ie(n,a))&&i.push(Vr(n,s,l))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}var Yr=/\r\n?/g,Qr=/\u0000|\uFFFD/g;function Zr(e){return("string"==typeof e?e:""+e).replace(Yr,"\n").replace(Qr,"")}function Xr(e,t,n){if(t=Zr(t),Zr(e)!==t&&n)throw Error(a(425))}function Jr(){}var eo=null,to=null;function no(e,t){return"textarea"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var ro="function"==typeof setTimeout?setTimeout:void 0,oo="function"==typeof clearTimeout?clearTimeout:void 0,ao="function"==typeof Promise?Promise:void 0,io="function"==typeof queueMicrotask?queueMicrotask:void 0!==ao?function(e){return ao.resolve(null).then(e).catch(lo)}:ro;function lo(e){setTimeout((function(){throw e}))}function so(e,t){var n=t,r=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&8===o.nodeType)if("/$"===(n=o.data)){if(0===r)return e.removeChild(o),void Ut(t);r--}else"$"!==n&&"$?"!==n&&"$!"!==n||r++;n=o}while(n);Ut(t)}function co(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function uo(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var fo=Math.random().toString(36).slice(2),po="__reactFiber$"+fo,mo="__reactProps$"+fo,ho="__reactContainer$"+fo,go="__reactEvents$"+fo,yo="__reactListeners$"+fo,bo="__reactHandles$"+fo;function vo(e){var t=e[po];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ho]||n[po]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=uo(e);null!==e;){if(n=e[po])return n;e=uo(e)}return t}n=(e=n).parentNode}return null}function wo(e){return!(e=e[po]||e[ho])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function So(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(a(33))}function ko(e){return e[mo]||null}var xo=[],Eo=-1;function _o(e){return{current:e}}function Oo(e){0>Eo||(e.current=xo[Eo],xo[Eo]=null,Eo--)}function Co(e,t){Eo++,xo[Eo]=e.current,e.current=t}var Ao={},To=_o(Ao),jo=_o(!1),Po=Ao;function Io(e,t){var n=e.type.contextTypes;if(!n)return Ao;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o,a={};for(o in n)a[o]=t[o];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function No(e){return null!=(e=e.childContextTypes)}function Ro(){Oo(jo),Oo(To)}function Lo(e,t,n){if(To.current!==Ao)throw Error(a(168));Co(To,t),Co(jo,n)}function Do(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in t))throw Error(a(108,H(e)||"Unknown",o));return M({},n,r)}function Mo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Ao,Po=To.current,Co(To,e),Co(jo,jo.current),!0}function Fo(e,t,n){var r=e.stateNode;if(!r)throw Error(a(169));n?(e=Do(e,t,Po),r.__reactInternalMemoizedMergedChildContext=e,Oo(jo),Oo(To),Co(To,e)):Oo(jo),Co(jo,n)}var zo=null,Bo=!1,$o=!1;function Uo(e){null===zo?zo=[e]:zo.push(e)}function Ho(){if(!$o&&null!==zo){$o=!0;var e=0,t=vt;try{var n=zo;for(vt=1;e<n.length;e++){var r=n[e];do{r=r(!0)}while(null!==r)}zo=null,Bo=!1}catch(o){throw null!==zo&&(zo=zo.slice(e+1)),Ge(Je,Ho),o}finally{vt=t,$o=!1}}return null}var qo=[],Vo=0,Wo=null,Go=0,Ko=[],Yo=0,Qo=null,Zo=1,Xo="";function Jo(e,t){qo[Vo++]=Go,qo[Vo++]=Wo,Wo=e,Go=t}function ea(e,t,n){Ko[Yo++]=Zo,Ko[Yo++]=Xo,Ko[Yo++]=Qo,Qo=e;var r=Zo;e=Xo;var o=32-it(r)-1;r&=~(1<<o),n+=1;var a=32-it(t)+o;if(30<a){var i=o-o%5;a=(r&(1<<i)-1).toString(32),r>>=i,o-=i,Zo=1<<32-it(t)+o|n<<o|r,Xo=a+e}else Zo=1<<a|n<<o|r,Xo=e}function ta(e){null!==e.return&&(Jo(e,1),ea(e,1,0))}function na(e){for(;e===Wo;)Wo=qo[--Vo],qo[Vo]=null,Go=qo[--Vo],qo[Vo]=null;for(;e===Qo;)Qo=Ko[--Yo],Ko[Yo]=null,Xo=Ko[--Yo],Ko[Yo]=null,Zo=Ko[--Yo],Ko[Yo]=null}var ra=null,oa=null,aa=!1,ia=null;function la(e,t){var n=Pc(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function sa(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,ra=e,oa=co(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,ra=e,oa=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Qo?{id:Zo,overflow:Xo}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Pc(18,null,null,0)).stateNode=t,n.return=e,e.child=n,ra=e,oa=null,!0);default:return!1}}function ca(e){return!(!(1&e.mode)||128&e.flags)}function ua(e){if(aa){var t=oa;if(t){var n=t;if(!sa(e,t)){if(ca(e))throw Error(a(418));t=co(n.nextSibling);var r=ra;t&&sa(e,t)?la(r,n):(e.flags=-4097&e.flags|2,aa=!1,ra=e)}}else{if(ca(e))throw Error(a(418));e.flags=-4097&e.flags|2,aa=!1,ra=e}}}function da(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;ra=e}function fa(e){if(e!==ra)return!1;if(!aa)return da(e),aa=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!no(e.type,e.memoizedProps)),t&&(t=oa)){if(ca(e))throw pa(),Error(a(418));for(;t;)la(e,t),t=co(t.nextSibling)}if(da(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(a(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){oa=co(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}oa=null}}else oa=ra?co(e.stateNode.nextSibling):null;return!0}function pa(){for(var e=oa;e;)e=co(e.nextSibling)}function ma(){oa=ra=null,aa=!1}function ha(e){null===ia?ia=[e]:ia.push(e)}var ga=w.ReactCurrentBatchConfig;function ya(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(a(309));var r=n.stateNode}if(!r)throw Error(a(147,e));var o=r,i=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===i?t.ref:(t=function(e){var t=o.refs;null===e?delete t[i]:t[i]=e},t._stringRef=i,t)}if("string"!=typeof e)throw Error(a(284));if(!n._owner)throw Error(a(290,e))}return e}function ba(e,t){throw e=Object.prototype.toString.call(t),Error(a(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function va(e){return(0,e._init)(e._payload)}function wa(e){function t(t,n){if(e){var r=t.deletions;null===r?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=Nc(e,t)).index=0,e.sibling=null,e}function i(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags|=2,n):r:(t.flags|=2,n):(t.flags|=1048576,n)}function l(t){return e&&null===t.alternate&&(t.flags|=2),t}function s(e,t,n,r){return null===t||6!==t.tag?((t=Mc(n,e.mode,r)).return=e,t):((t=o(t,n)).return=e,t)}function c(e,t,n,r){var a=n.type;return a===x?d(e,t,n.props.children,r,n.key):null!==t&&(t.elementType===a||"object"==typeof a&&null!==a&&a.$$typeof===I&&va(a)===t.type)?((r=o(t,n.props)).ref=ya(e,t,n),r.return=e,r):((r=Rc(n.type,n.key,n.props,null,e.mode,r)).ref=ya(e,t,n),r.return=e,r)}function u(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Fc(n,e.mode,r)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function d(e,t,n,r,a){return null===t||7!==t.tag?((t=Lc(n,e.mode,r,a)).return=e,t):((t=o(t,n)).return=e,t)}function f(e,t,n){if("string"==typeof t&&""!==t||"number"==typeof t)return(t=Mc(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case S:return(n=Rc(t.type,t.key,t.props,null,e.mode,n)).ref=ya(e,null,t),n.return=e,n;case k:return(t=Fc(t,e.mode,n)).return=e,t;case I:return f(e,(0,t._init)(t._payload),n)}if(te(t)||L(t))return(t=Lc(t,e.mode,n,null)).return=e,t;ba(e,t)}return null}function p(e,t,n,r){var o=null!==t?t.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==o?null:s(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case S:return n.key===o?c(e,t,n,r):null;case k:return n.key===o?u(e,t,n,r):null;case I:return p(e,t,(o=n._init)(n._payload),r)}if(te(n)||L(n))return null!==o?null:d(e,t,n,r,null);ba(e,n)}return null}function m(e,t,n,r,o){if("string"==typeof r&&""!==r||"number"==typeof r)return s(t,e=e.get(n)||null,""+r,o);if("object"==typeof r&&null!==r){switch(r.$$typeof){case S:return c(t,e=e.get(null===r.key?n:r.key)||null,r,o);case k:return u(t,e=e.get(null===r.key?n:r.key)||null,r,o);case I:return m(e,t,n,(0,r._init)(r._payload),o)}if(te(r)||L(r))return d(t,e=e.get(n)||null,r,o,null);ba(t,r)}return null}function h(o,a,l,s){for(var c=null,u=null,d=a,h=a=0,g=null;null!==d&&h<l.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var y=p(o,d,l[h],s);if(null===y){null===d&&(d=g);break}e&&d&&null===y.alternate&&t(o,d),a=i(y,a,h),null===u?c=y:u.sibling=y,u=y,d=g}if(h===l.length)return n(o,d),aa&&Jo(o,h),c;if(null===d){for(;h<l.length;h++)null!==(d=f(o,l[h],s))&&(a=i(d,a,h),null===u?c=d:u.sibling=d,u=d);return aa&&Jo(o,h),c}for(d=r(o,d);h<l.length;h++)null!==(g=m(d,o,h,l[h],s))&&(e&&null!==g.alternate&&d.delete(null===g.key?h:g.key),a=i(g,a,h),null===u?c=g:u.sibling=g,u=g);return e&&d.forEach((function(e){return t(o,e)})),aa&&Jo(o,h),c}function g(o,l,s,c){var u=L(s);if("function"!=typeof u)throw Error(a(150));if(null==(s=u.call(s)))throw Error(a(151));for(var d=u=null,h=l,g=l=0,y=null,b=s.next();null!==h&&!b.done;g++,b=s.next()){h.index>g?(y=h,h=null):y=h.sibling;var v=p(o,h,b.value,c);if(null===v){null===h&&(h=y);break}e&&h&&null===v.alternate&&t(o,h),l=i(v,l,g),null===d?u=v:d.sibling=v,d=v,h=y}if(b.done)return n(o,h),aa&&Jo(o,g),u;if(null===h){for(;!b.done;g++,b=s.next())null!==(b=f(o,b.value,c))&&(l=i(b,l,g),null===d?u=b:d.sibling=b,d=b);return aa&&Jo(o,g),u}for(h=r(o,h);!b.done;g++,b=s.next())null!==(b=m(h,o,g,b.value,c))&&(e&&null!==b.alternate&&h.delete(null===b.key?g:b.key),l=i(b,l,g),null===d?u=b:d.sibling=b,d=b);return e&&h.forEach((function(e){return t(o,e)})),aa&&Jo(o,g),u}return function e(r,a,i,s){if("object"==typeof i&&null!==i&&i.type===x&&null===i.key&&(i=i.props.children),"object"==typeof i&&null!==i){switch(i.$$typeof){case S:e:{for(var c=i.key,u=a;null!==u;){if(u.key===c){if((c=i.type)===x){if(7===u.tag){n(r,u.sibling),(a=o(u,i.props.children)).return=r,r=a;break e}}else if(u.elementType===c||"object"==typeof c&&null!==c&&c.$$typeof===I&&va(c)===u.type){n(r,u.sibling),(a=o(u,i.props)).ref=ya(r,u,i),a.return=r,r=a;break e}n(r,u);break}t(r,u),u=u.sibling}i.type===x?((a=Lc(i.props.children,r.mode,s,i.key)).return=r,r=a):((s=Rc(i.type,i.key,i.props,null,r.mode,s)).ref=ya(r,a,i),s.return=r,r=s)}return l(r);case k:e:{for(u=i.key;null!==a;){if(a.key===u){if(4===a.tag&&a.stateNode.containerInfo===i.containerInfo&&a.stateNode.implementation===i.implementation){n(r,a.sibling),(a=o(a,i.children||[])).return=r,r=a;break e}n(r,a);break}t(r,a),a=a.sibling}(a=Fc(i,r.mode,s)).return=r,r=a}return l(r);case I:return e(r,a,(u=i._init)(i._payload),s)}if(te(i))return h(r,a,i,s);if(L(i))return g(r,a,i,s);ba(r,i)}return"string"==typeof i&&""!==i||"number"==typeof i?(i=""+i,null!==a&&6===a.tag?(n(r,a.sibling),(a=o(a,i)).return=r,r=a):(n(r,a),(a=Mc(i,r.mode,s)).return=r,r=a),l(r)):n(r,a)}}var Sa=wa(!0),ka=wa(!1),xa=_o(null),Ea=null,_a=null,Oa=null;function Ca(){Oa=_a=Ea=null}function Aa(e){var t=xa.current;Oo(xa),e._currentValue=t}function Ta(e,t,n){for(;null!==e;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==r&&(r.childLanes|=t)):null!==r&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function ja(e,t){Ea=e,Oa=_a=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(!!(e.lanes&t)&&(vl=!0),e.firstContext=null)}function Pa(e){var t=e._currentValue;if(Oa!==e)if(e={context:e,memoizedValue:t,next:null},null===_a){if(null===Ea)throw Error(a(308));_a=e,Ea.dependencies={lanes:0,firstContext:e}}else _a=_a.next=e;return t}var Ia=null;function Na(e){null===Ia?Ia=[e]:Ia.push(e)}function Ra(e,t,n,r){var o=t.interleaved;return null===o?(n.next=n,Na(t)):(n.next=o.next,o.next=n),t.interleaved=n,La(e,r)}function La(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}var Da=!1;function Ma(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Fa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function za(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Ba(e,t,n){var r=e.updateQueue;if(null===r)return null;if(r=r.shared,2&As){var o=r.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),r.pending=t,La(e,n)}return null===(o=r.interleaved)?(t.next=t,Na(r)):(t.next=o.next,o.next=t),r.interleaved=t,La(e,n)}function $a(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,4194240&n)){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,bt(e,n)}}function Ua(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var o=null,a=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===a?o=a=i:a=a.next=i,n=n.next}while(null!==n);null===a?o=a=t:a=a.next=t}else o=a=t;return n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:a,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Ha(e,t,n,r){var o=e.updateQueue;Da=!1;var a=o.firstBaseUpdate,i=o.lastBaseUpdate,l=o.shared.pending;if(null!==l){o.shared.pending=null;var s=l,c=s.next;s.next=null,null===i?a=c:i.next=c,i=s;var u=e.alternate;null!==u&&((l=(u=u.updateQueue).lastBaseUpdate)!==i&&(null===l?u.firstBaseUpdate=c:l.next=c,u.lastBaseUpdate=s))}if(null!==a){var d=o.baseState;for(i=0,u=c=s=null,l=a;;){var f=l.lane,p=l.eventTime;if((r&f)===f){null!==u&&(u=u.next={eventTime:p,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var m=e,h=l;switch(f=t,p=n,h.tag){case 1:if("function"==typeof(m=h.payload)){d=m.call(p,d,f);break e}d=m;break e;case 3:m.flags=-65537&m.flags|128;case 0:if(null==(f="function"==typeof(m=h.payload)?m.call(p,d,f):m))break e;d=M({},d,f);break e;case 2:Da=!0}}null!==l.callback&&0!==l.lane&&(e.flags|=64,null===(f=o.effects)?o.effects=[l]:f.push(l))}else p={eventTime:p,lane:f,tag:l.tag,payload:l.payload,callback:l.callback,next:null},null===u?(c=u=p,s=d):u=u.next=p,i|=f;if(null===(l=l.next)){if(null===(l=o.shared.pending))break;l=(f=l).next,f.next=null,o.lastBaseUpdate=f,o.shared.pending=null}}if(null===u&&(s=d),o.baseState=s,o.firstBaseUpdate=c,o.lastBaseUpdate=u,null!==(t=o.shared.interleaved)){o=t;do{i|=o.lane,o=o.next}while(o!==t)}else null===a&&(o.shared.lanes=0);Ds|=i,e.lanes=i,e.memoizedState=d}}function qa(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],o=r.callback;if(null!==o){if(r.callback=null,r=n,"function"!=typeof o)throw Error(a(191,o));o.call(r)}}}var Va={},Wa=_o(Va),Ga=_o(Va),Ka=_o(Va);function Ya(e){if(e===Va)throw Error(a(174));return e}function Qa(e,t){switch(Co(Ka,t),Co(Ga,e),Co(Wa,Va),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:se(null,"");break;default:t=se(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Oo(Wa),Co(Wa,t)}function Za(){Oo(Wa),Oo(Ga),Oo(Ka)}function Xa(e){Ya(Ka.current);var t=Ya(Wa.current),n=se(t,e.type);t!==n&&(Co(Ga,e),Co(Wa,n))}function Ja(e){Ga.current===e&&(Oo(Wa),Oo(Ga))}var ei=_o(0);function ti(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(128&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ni=[];function ri(){for(var e=0;e<ni.length;e++)ni[e]._workInProgressVersionPrimary=null;ni.length=0}var oi=w.ReactCurrentDispatcher,ai=w.ReactCurrentBatchConfig,ii=0,li=null,si=null,ci=null,ui=!1,di=!1,fi=0,pi=0;function mi(){throw Error(a(321))}function hi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!lr(e[n],t[n]))return!1;return!0}function gi(e,t,n,r,o,i){if(ii=i,li=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,oi.current=null===e||null===e.memoizedState?Ji:el,e=n(r,o),di){i=0;do{if(di=!1,fi=0,25<=i)throw Error(a(301));i+=1,ci=si=null,t.updateQueue=null,oi.current=tl,e=n(r,o)}while(di)}if(oi.current=Xi,t=null!==si&&null!==si.next,ii=0,ci=si=li=null,ui=!1,t)throw Error(a(300));return e}function yi(){var e=0!==fi;return fi=0,e}function bi(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ci?li.memoizedState=ci=e:ci=ci.next=e,ci}function vi(){if(null===si){var e=li.alternate;e=null!==e?e.memoizedState:null}else e=si.next;var t=null===ci?li.memoizedState:ci.next;if(null!==t)ci=t,si=e;else{if(null===e)throw Error(a(310));e={memoizedState:(si=e).memoizedState,baseState:si.baseState,baseQueue:si.baseQueue,queue:si.queue,next:null},null===ci?li.memoizedState=ci=e:ci=ci.next=e}return ci}function wi(e,t){return"function"==typeof t?t(e):t}function Si(e){var t=vi(),n=t.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=e;var r=si,o=r.baseQueue,i=n.pending;if(null!==i){if(null!==o){var l=o.next;o.next=i.next,i.next=l}r.baseQueue=o=i,n.pending=null}if(null!==o){i=o.next,r=r.baseState;var s=l=null,c=null,u=i;do{var d=u.lane;if((ii&d)===d)null!==c&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===c?(s=c=f,l=r):c=c.next=f,li.lanes|=d,Ds|=d}u=u.next}while(null!==u&&u!==i);null===c?l=r:c.next=s,lr(r,t.memoizedState)||(vl=!0),t.memoizedState=r,t.baseState=l,t.baseQueue=c,n.lastRenderedState=r}if(null!==(e=n.interleaved)){o=e;do{i=o.lane,li.lanes|=i,Ds|=i,o=o.next}while(o!==e)}else null===o&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function ki(e){var t=vi(),n=t.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=e;var r=n.dispatch,o=n.pending,i=t.memoizedState;if(null!==o){n.pending=null;var l=o=o.next;do{i=e(i,l.action),l=l.next}while(l!==o);lr(i,t.memoizedState)||(vl=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function xi(){}function Ei(e,t){var n=li,r=vi(),o=t(),i=!lr(r.memoizedState,o);if(i&&(r.memoizedState=o,vl=!0),r=r.queue,Di(Ci.bind(null,n,r,e),[e]),r.getSnapshot!==t||i||null!==ci&&1&ci.memoizedState.tag){if(n.flags|=2048,Pi(9,Oi.bind(null,n,r,o,t),void 0,null),null===Ts)throw Error(a(349));30&ii||_i(n,t,o)}return o}function _i(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=li.updateQueue)?(t={lastEffect:null,stores:null},li.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Oi(e,t,n,r){t.value=n,t.getSnapshot=r,Ai(t)&&Ti(e)}function Ci(e,t,n){return n((function(){Ai(t)&&Ti(e)}))}function Ai(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!lr(e,n)}catch(r){return!0}}function Ti(e){var t=La(e,1);null!==t&&nc(t,e,1,-1)}function ji(e){var t=bi();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:wi,lastRenderedState:e},t.queue=e,e=e.dispatch=Ki.bind(null,li,e),[t.memoizedState,e]}function Pi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=li.updateQueue)?(t={lastEffect:null,stores:null},li.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function Ii(){return vi().memoizedState}function Ni(e,t,n,r){var o=bi();li.flags|=e,o.memoizedState=Pi(1|t,n,void 0,void 0===r?null:r)}function Ri(e,t,n,r){var o=vi();r=void 0===r?null:r;var a=void 0;if(null!==si){var i=si.memoizedState;if(a=i.destroy,null!==r&&hi(r,i.deps))return void(o.memoizedState=Pi(t,n,a,r))}li.flags|=e,o.memoizedState=Pi(1|t,n,a,r)}function Li(e,t){return Ni(8390656,8,e,t)}function Di(e,t){return Ri(2048,8,e,t)}function Mi(e,t){return Ri(4,2,e,t)}function Fi(e,t){return Ri(4,4,e,t)}function zi(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Bi(e,t,n){return n=null!=n?n.concat([e]):null,Ri(4,4,zi.bind(null,t,e),n)}function $i(){}function Ui(e,t){var n=vi();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&hi(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Hi(e,t){var n=vi();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&hi(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function qi(e,t,n){return 21&ii?(lr(n,t)||(n=ht(),li.lanes|=n,Ds|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,vl=!0),e.memoizedState=n)}function Vi(e,t){var n=vt;vt=0!==n&&4>n?n:4,e(!0);var r=ai.transition;ai.transition={};try{e(!1),t()}finally{vt=n,ai.transition=r}}function Wi(){return vi().memoizedState}function Gi(e,t,n){var r=tc(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Yi(e))Qi(t,n);else if(null!==(n=Ra(e,t,n,r))){nc(n,e,r,ec()),Zi(n,t,r)}}function Ki(e,t,n){var r=tc(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Yi(e))Qi(t,o);else{var a=e.alternate;if(0===e.lanes&&(null===a||0===a.lanes)&&null!==(a=t.lastRenderedReducer))try{var i=t.lastRenderedState,l=a(i,n);if(o.hasEagerState=!0,o.eagerState=l,lr(l,i)){var s=t.interleaved;return null===s?(o.next=o,Na(t)):(o.next=s.next,s.next=o),void(t.interleaved=o)}}catch(c){}null!==(n=Ra(e,t,o,r))&&(nc(n,e,r,o=ec()),Zi(n,t,r))}}function Yi(e){var t=e.alternate;return e===li||null!==t&&t===li}function Qi(e,t){di=ui=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Zi(e,t,n){if(4194240&n){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,bt(e,n)}}var Xi={readContext:Pa,useCallback:mi,useContext:mi,useEffect:mi,useImperativeHandle:mi,useInsertionEffect:mi,useLayoutEffect:mi,useMemo:mi,useReducer:mi,useRef:mi,useState:mi,useDebugValue:mi,useDeferredValue:mi,useTransition:mi,useMutableSource:mi,useSyncExternalStore:mi,useId:mi,unstable_isNewReconciler:!1},Ji={readContext:Pa,useCallback:function(e,t){return bi().memoizedState=[e,void 0===t?null:t],e},useContext:Pa,useEffect:Li,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Ni(4194308,4,zi.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ni(4194308,4,e,t)},useInsertionEffect:function(e,t){return Ni(4,2,e,t)},useMemo:function(e,t){var n=bi();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=bi();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Gi.bind(null,li,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},bi().memoizedState=e},useState:ji,useDebugValue:$i,useDeferredValue:function(e){return bi().memoizedState=e},useTransition:function(){var e=ji(!1),t=e[0];return e=Vi.bind(null,e[1]),bi().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=li,o=bi();if(aa){if(void 0===n)throw Error(a(407));n=n()}else{if(n=t(),null===Ts)throw Error(a(349));30&ii||_i(r,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,Li(Ci.bind(null,r,i,e),[e]),r.flags|=2048,Pi(9,Oi.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=bi(),t=Ts.identifierPrefix;if(aa){var n=Xo;t=":"+t+"R"+(n=(Zo&~(1<<32-it(Zo)-1)).toString(32)+n),0<(n=fi++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=pi++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},el={readContext:Pa,useCallback:Ui,useContext:Pa,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Mi,useLayoutEffect:Fi,useMemo:Hi,useReducer:Si,useRef:Ii,useState:function(){return Si(wi)},useDebugValue:$i,useDeferredValue:function(e){return qi(vi(),si.memoizedState,e)},useTransition:function(){return[Si(wi)[0],vi().memoizedState]},useMutableSource:xi,useSyncExternalStore:Ei,useId:Wi,unstable_isNewReconciler:!1},tl={readContext:Pa,useCallback:Ui,useContext:Pa,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Mi,useLayoutEffect:Fi,useMemo:Hi,useReducer:ki,useRef:Ii,useState:function(){return ki(wi)},useDebugValue:$i,useDeferredValue:function(e){var t=vi();return null===si?t.memoizedState=e:qi(t,si.memoizedState,e)},useTransition:function(){return[ki(wi)[0],vi().memoizedState]},useMutableSource:xi,useSyncExternalStore:Ei,useId:Wi,unstable_isNewReconciler:!1};function nl(e,t){if(e&&e.defaultProps){for(var n in t=M({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}function rl(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:M({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var ol={isMounted:function(e){return!!(e=e._reactInternals)&&Ue(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ec(),o=tc(e),a=za(r,o);a.payload=t,null!=n&&(a.callback=n),null!==(t=Ba(e,a,o))&&(nc(t,e,o,r),$a(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ec(),o=tc(e),a=za(r,o);a.tag=1,a.payload=t,null!=n&&(a.callback=n),null!==(t=Ba(e,a,o))&&(nc(t,e,o,r),$a(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ec(),r=tc(e),o=za(n,r);o.tag=2,null!=t&&(o.callback=t),null!==(t=Ba(e,o,r))&&(nc(t,e,r,n),$a(t,e,r))}};function al(e,t,n,r,o,a,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,a,i):!t.prototype||!t.prototype.isPureReactComponent||(!sr(n,r)||!sr(o,a))}function il(e,t,n){var r=!1,o=Ao,a=t.contextType;return"object"==typeof a&&null!==a?a=Pa(a):(o=No(t)?Po:To.current,a=(r=null!=(r=t.contextTypes))?Io(e,o):Ao),t=new t(n,a),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=ol,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=a),t}function ll(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&ol.enqueueReplaceState(t,t.state,null)}function sl(e,t,n,r){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs={},Ma(e);var a=t.contextType;"object"==typeof a&&null!==a?o.context=Pa(a):(a=No(t)?Po:To.current,o.context=Io(e,a)),o.state=e.memoizedState,"function"==typeof(a=t.getDerivedStateFromProps)&&(rl(e,t,a,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&ol.enqueueReplaceState(o,o.state,null),Ha(e,n,o,r),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4194308)}function cl(e,t){try{var n="",r=t;do{n+=$(r),r=r.return}while(r);var o=n}catch(a){o="\nError generating stack: "+a.message+"\n"+a.stack}return{value:e,source:t,stack:o,digest:null}}function ul(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function dl(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}var fl="function"==typeof WeakMap?WeakMap:Map;function pl(e,t,n){(n=za(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){qs||(qs=!0,Vs=r),dl(0,t)},n}function ml(e,t,n){(n=za(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var o=t.value;n.payload=function(){return r(o)},n.callback=function(){dl(0,t)}}var a=e.stateNode;return null!==a&&"function"==typeof a.componentDidCatch&&(n.callback=function(){dl(0,t),"function"!=typeof r&&(null===Ws?Ws=new Set([this]):Ws.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function hl(e,t,n){var r=e.pingCache;if(null===r){r=e.pingCache=new fl;var o=new Set;r.set(t,o)}else void 0===(o=r.get(t))&&(o=new Set,r.set(t,o));o.has(n)||(o.add(n),e=_c.bind(null,e,t,n),t.then(e,e))}function gl(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function yl(e,t,n,r,o){return 1&e.mode?(e.flags|=65536,e.lanes=o,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=za(-1,1)).tag=2,Ba(n,t,1))),n.lanes|=1),e)}var bl=w.ReactCurrentOwner,vl=!1;function wl(e,t,n,r){t.child=null===e?ka(t,null,n,r):Sa(t,e.child,n,r)}function Sl(e,t,n,r,o){n=n.render;var a=t.ref;return ja(t,o),r=gi(e,t,n,r,a,o),n=yi(),null===e||vl?(aa&&n&&ta(t),t.flags|=1,wl(e,t,r,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,ql(e,t,o))}function kl(e,t,n,r,o){if(null===e){var a=n.type;return"function"!=typeof a||Ic(a)||void 0!==a.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Rc(n.type,null,r,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=a,xl(e,t,a,r,o))}if(a=e.child,!(e.lanes&o)){var i=a.memoizedProps;if((n=null!==(n=n.compare)?n:sr)(i,r)&&e.ref===t.ref)return ql(e,t,o)}return t.flags|=1,(e=Nc(a,r)).ref=t.ref,e.return=t,t.child=e}function xl(e,t,n,r,o){if(null!==e){var a=e.memoizedProps;if(sr(a,r)&&e.ref===t.ref){if(vl=!1,t.pendingProps=r=a,!(e.lanes&o))return t.lanes=e.lanes,ql(e,t,o);131072&e.flags&&(vl=!0)}}return Ol(e,t,n,r,o)}function El(e,t,n){var r=t.pendingProps,o=r.children,a=null!==e?e.memoizedState:null;if("hidden"===r.mode)if(1&t.mode){if(!(1073741824&n))return e=null!==a?a.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Co(Ns,Is),Is|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=null!==a?a.baseLanes:n,Co(Ns,Is),Is|=r}else t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Co(Ns,Is),Is|=n;else null!==a?(r=a.baseLanes|n,t.memoizedState=null):r=n,Co(Ns,Is),Is|=r;return wl(e,t,o,n),t.child}function _l(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Ol(e,t,n,r,o){var a=No(n)?Po:To.current;return a=Io(t,a),ja(t,o),n=gi(e,t,n,r,a,o),r=yi(),null===e||vl?(aa&&r&&ta(t),t.flags|=1,wl(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,ql(e,t,o))}function Cl(e,t,n,r,o){if(No(n)){var a=!0;Mo(t)}else a=!1;if(ja(t,o),null===t.stateNode)Hl(e,t),il(t,n,r),sl(t,n,r,o),r=!0;else if(null===e){var i=t.stateNode,l=t.memoizedProps;i.props=l;var s=i.context,c=n.contextType;"object"==typeof c&&null!==c?c=Pa(c):c=Io(t,c=No(n)?Po:To.current);var u=n.getDerivedStateFromProps,d="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==r||s!==c)&&ll(t,i,r,c),Da=!1;var f=t.memoizedState;i.state=f,Ha(t,r,i,o),s=t.memoizedState,l!==r||f!==s||jo.current||Da?("function"==typeof u&&(rl(t,n,u,r),s=t.memoizedState),(l=Da||al(t,n,l,r,f,s,c))?(d||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4194308)):("function"==typeof i.componentDidMount&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=s),i.props=r,i.state=s,i.context=c,r=l):("function"==typeof i.componentDidMount&&(t.flags|=4194308),r=!1)}else{i=t.stateNode,Fa(e,t),l=t.memoizedProps,c=t.type===t.elementType?l:nl(t.type,l),i.props=c,d=t.pendingProps,f=i.context,"object"==typeof(s=n.contextType)&&null!==s?s=Pa(s):s=Io(t,s=No(n)?Po:To.current);var p=n.getDerivedStateFromProps;(u="function"==typeof p||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==d||f!==s)&&ll(t,i,r,s),Da=!1,f=t.memoizedState,i.state=f,Ha(t,r,i,o);var m=t.memoizedState;l!==d||f!==m||jo.current||Da?("function"==typeof p&&(rl(t,n,p,r),m=t.memoizedState),(c=Da||al(t,n,c,r,f,m,s)||!1)?(u||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(r,m,s),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,m,s)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),i.props=r,i.state=m,i.context=s,r=c):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return Al(e,t,n,r,a,o)}function Al(e,t,n,r,o,a){_l(e,t);var i=!!(128&t.flags);if(!r&&!i)return o&&Fo(t,n,!1),ql(e,t,a);r=t.stateNode,bl.current=t;var l=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=Sa(t,e.child,null,a),t.child=Sa(t,null,l,a)):wl(e,t,l,a),t.memoizedState=r.state,o&&Fo(t,n,!0),t.child}function Tl(e){var t=e.stateNode;t.pendingContext?Lo(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Lo(0,t.context,!1),Qa(e,t.containerInfo)}function jl(e,t,n,r,o){return ma(),ha(o),t.flags|=256,wl(e,t,n,r),t.child}var Pl,Il,Nl,Rl,Ll={dehydrated:null,treeContext:null,retryLane:0};function Dl(e){return{baseLanes:e,cachePool:null,transitions:null}}function Ml(e,t,n){var r,o=t.pendingProps,i=ei.current,l=!1,s=!!(128&t.flags);if((r=s)||(r=(null===e||null!==e.memoizedState)&&!!(2&i)),r?(l=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(i|=1),Co(ei,1&i),null===e)return ua(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(1&t.mode?"$!"===e.data?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(s=o.children,e=o.fallback,l?(o=t.mode,l=t.child,s={mode:"hidden",children:s},1&o||null===l?l=Dc(s,o,0,null):(l.childLanes=0,l.pendingProps=s),e=Lc(e,o,n,null),l.return=t,e.return=t,l.sibling=e,t.child=l,t.child.memoizedState=Dl(n),t.memoizedState=Ll,e):Fl(t,s));if(null!==(i=e.memoizedState)&&null!==(r=i.dehydrated))return function(e,t,n,r,o,i,l){if(n)return 256&t.flags?(t.flags&=-257,zl(e,t,l,r=ul(Error(a(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(i=r.fallback,o=t.mode,r=Dc({mode:"visible",children:r.children},o,0,null),(i=Lc(i,o,l,null)).flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,1&t.mode&&Sa(t,e.child,null,l),t.child.memoizedState=Dl(l),t.memoizedState=Ll,i);if(!(1&t.mode))return zl(e,t,l,null);if("$!"===o.data){if(r=o.nextSibling&&o.nextSibling.dataset)var s=r.dgst;return r=s,zl(e,t,l,r=ul(i=Error(a(419)),r,void 0))}if(s=!!(l&e.childLanes),vl||s){if(null!==(r=Ts)){switch(l&-l){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}0!==(o=o&(r.suspendedLanes|l)?0:o)&&o!==i.retryLane&&(i.retryLane=o,La(e,o),nc(r,e,o,-1))}return hc(),zl(e,t,l,r=ul(Error(a(421))))}return"$?"===o.data?(t.flags|=128,t.child=e.child,t=Cc.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,oa=co(o.nextSibling),ra=t,aa=!0,ia=null,null!==e&&(Ko[Yo++]=Zo,Ko[Yo++]=Xo,Ko[Yo++]=Qo,Zo=e.id,Xo=e.overflow,Qo=t),t=Fl(t,r.children),t.flags|=4096,t)}(e,t,s,o,r,i,n);if(l){l=o.fallback,s=t.mode,r=(i=e.child).sibling;var c={mode:"hidden",children:o.children};return 1&s||t.child===i?(o=Nc(i,c)).subtreeFlags=14680064&i.subtreeFlags:((o=t.child).childLanes=0,o.pendingProps=c,t.deletions=null),null!==r?l=Nc(r,l):(l=Lc(l,s,n,null)).flags|=2,l.return=t,o.return=t,o.sibling=l,t.child=o,o=l,l=t.child,s=null===(s=e.child.memoizedState)?Dl(n):{baseLanes:s.baseLanes|n,cachePool:null,transitions:s.transitions},l.memoizedState=s,l.childLanes=e.childLanes&~n,t.memoizedState=Ll,o}return e=(l=e.child).sibling,o=Nc(l,{mode:"visible",children:o.children}),!(1&t.mode)&&(o.lanes=n),o.return=t,o.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=o,t.memoizedState=null,o}function Fl(e,t){return(t=Dc({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function zl(e,t,n,r){return null!==r&&ha(r),Sa(t,e.child,null,n),(e=Fl(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Bl(e,t,n){e.lanes|=t;var r=e.alternate;null!==r&&(r.lanes|=t),Ta(e.return,t,n)}function $l(e,t,n,r,o){var a=e.memoizedState;null===a?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailMode=o)}function Ul(e,t,n){var r=t.pendingProps,o=r.revealOrder,a=r.tail;if(wl(e,t,r.children,n),2&(r=ei.current))r=1&r|2,t.flags|=128;else{if(null!==e&&128&e.flags)e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Bl(e,n,t);else if(19===e.tag)Bl(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(Co(ei,r),1&t.mode)switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===ti(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),$l(t,!1,o,n,a);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ti(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}$l(t,!0,n,null,a);break;case"together":$l(t,!1,null,null,void 0);break;default:t.memoizedState=null}else t.memoizedState=null;return t.child}function Hl(e,t){!(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function ql(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Ds|=t.lanes,!(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(a(153));if(null!==t.child){for(n=Nc(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Nc(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Vl(e,t){if(!aa)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Wl(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=14680064&o.subtreeFlags,r|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Gl(e,t,n){var r=t.pendingProps;switch(na(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Wl(t),null;case 1:case 17:return No(t.type)&&Ro(),Wl(t),null;case 3:return r=t.stateNode,Za(),Oo(jo),Oo(To),ri(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(fa(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&!(256&t.flags)||(t.flags|=1024,null!==ia&&(ic(ia),ia=null))),Il(e,t),Wl(t),null;case 5:Ja(t);var o=Ya(Ka.current);if(n=t.type,null!==e&&null!=t.stateNode)Nl(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(null===t.stateNode)throw Error(a(166));return Wl(t),null}if(e=Ya(Wa.current),fa(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[po]=t,r[mo]=i,e=!!(1&t.mode),n){case"dialog":zr("cancel",r),zr("close",r);break;case"iframe":case"object":case"embed":zr("load",r);break;case"video":case"audio":for(o=0;o<Lr.length;o++)zr(Lr[o],r);break;case"source":zr("error",r);break;case"img":case"image":case"link":zr("error",r),zr("load",r);break;case"details":zr("toggle",r);break;case"input":Q(r,i),zr("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},zr("invalid",r);break;case"textarea":oe(r,i),zr("invalid",r)}for(var s in be(n,i),o=null,i)if(i.hasOwnProperty(s)){var c=i[s];"children"===s?"string"==typeof c?r.textContent!==c&&(!0!==i.suppressHydrationWarning&&Xr(r.textContent,c,e),o=["children",c]):"number"==typeof c&&r.textContent!==""+c&&(!0!==i.suppressHydrationWarning&&Xr(r.textContent,c,e),o=["children",""+c]):l.hasOwnProperty(s)&&null!=c&&"onScroll"===s&&zr("scroll",r)}switch(n){case"input":W(r),J(r,i,!0);break;case"textarea":W(r),ie(r);break;case"select":case"option":break;default:"function"==typeof i.onClick&&(r.onclick=Jr)}r=o,t.updateQueue=r,null!==r&&(t.flags|=4)}else{s=9===o.nodeType?o:o.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=le(n)),"http://www.w3.org/1999/xhtml"===e?"script"===n?((e=s.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),"select"===n&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[po]=t,e[mo]=r,Pl(e,t,!1,!1),t.stateNode=e;e:{switch(s=ve(n,r),n){case"dialog":zr("cancel",e),zr("close",e),o=r;break;case"iframe":case"object":case"embed":zr("load",e),o=r;break;case"video":case"audio":for(o=0;o<Lr.length;o++)zr(Lr[o],e);o=r;break;case"source":zr("error",e),o=r;break;case"img":case"image":case"link":zr("error",e),zr("load",e),o=r;break;case"details":zr("toggle",e),o=r;break;case"input":Q(e,r),o=Y(e,r),zr("invalid",e);break;case"option":default:o=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=M({},r,{value:void 0}),zr("invalid",e);break;case"textarea":oe(e,r),o=re(e,r),zr("invalid",e)}for(i in be(n,o),c=o)if(c.hasOwnProperty(i)){var u=c[i];"style"===i?ge(e,u):"dangerouslySetInnerHTML"===i?null!=(u=u?u.__html:void 0)&&de(e,u):"children"===i?"string"==typeof u?("textarea"!==n||""!==u)&&fe(e,u):"number"==typeof u&&fe(e,""+u):"suppressContentEditableWarning"!==i&&"suppressHydrationWarning"!==i&&"autoFocus"!==i&&(l.hasOwnProperty(i)?null!=u&&"onScroll"===i&&zr("scroll",e):null!=u&&v(e,i,u,s))}switch(n){case"input":W(e),J(e,r,!1);break;case"textarea":W(e),ie(e);break;case"option":null!=r.value&&e.setAttribute("value",""+q(r.value));break;case"select":e.multiple=!!r.multiple,null!=(i=r.value)?ne(e,!!r.multiple,i,!1):null!=r.defaultValue&&ne(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=Jr)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return Wl(t),null;case 6:if(e&&null!=t.stateNode)Rl(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(a(166));if(n=Ya(Ka.current),Ya(Wa.current),fa(t)){if(r=t.stateNode,n=t.memoizedProps,r[po]=t,(i=r.nodeValue!==n)&&null!==(e=ra))switch(e.tag){case 3:Xr(r.nodeValue,n,!!(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Xr(r.nodeValue,n,!!(1&e.mode))}i&&(t.flags|=4)}else(r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[po]=t,t.stateNode=r}return Wl(t),null;case 13:if(Oo(ei),r=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(aa&&null!==oa&&1&t.mode&&!(128&t.flags))pa(),ma(),t.flags|=98560,i=!1;else if(i=fa(t),null!==r&&null!==r.dehydrated){if(null===e){if(!i)throw Error(a(318));if(!(i=null!==(i=t.memoizedState)?i.dehydrated:null))throw Error(a(317));i[po]=t}else ma(),!(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Wl(t),i=!1}else null!==ia&&(ic(ia),ia=null),i=!0;if(!i)return 65536&t.flags?t:null}return 128&t.flags?(t.lanes=n,t):((r=null!==r)!==(null!==e&&null!==e.memoizedState)&&r&&(t.child.flags|=8192,1&t.mode&&(null===e||1&ei.current?0===Rs&&(Rs=3):hc())),null!==t.updateQueue&&(t.flags|=4),Wl(t),null);case 4:return Za(),Il(e,t),null===e&&Ur(t.stateNode.containerInfo),Wl(t),null;case 10:return Aa(t.type._context),Wl(t),null;case 19:if(Oo(ei),null===(i=t.memoizedState))return Wl(t),null;if(r=!!(128&t.flags),null===(s=i.rendering))if(r)Vl(i,!1);else{if(0!==Rs||null!==e&&128&e.flags)for(e=t.child;null!==e;){if(null!==(s=ti(e))){for(t.flags|=128,Vl(i,!1),null!==(r=s.updateQueue)&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;null!==n;)e=r,(i=n).flags&=14680066,null===(s=i.alternate)?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=s.childLanes,i.lanes=s.lanes,i.child=s.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=s.memoizedProps,i.memoizedState=s.memoizedState,i.updateQueue=s.updateQueue,i.type=s.type,e=s.dependencies,i.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Co(ei,1&ei.current|2),t.child}e=e.sibling}null!==i.tail&&Ze()>Us&&(t.flags|=128,r=!0,Vl(i,!1),t.lanes=4194304)}else{if(!r)if(null!==(e=ti(s))){if(t.flags|=128,r=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),Vl(i,!0),null===i.tail&&"hidden"===i.tailMode&&!s.alternate&&!aa)return Wl(t),null}else 2*Ze()-i.renderingStartTime>Us&&1073741824!==n&&(t.flags|=128,r=!0,Vl(i,!1),t.lanes=4194304);i.isBackwards?(s.sibling=t.child,t.child=s):(null!==(n=i.last)?n.sibling=s:t.child=s,i.last=s)}return null!==i.tail?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Ze(),t.sibling=null,n=ei.current,Co(ei,r?1&n|2:1&n),t):(Wl(t),null);case 22:case 23:return dc(),r=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==r&&(t.flags|=8192),r&&1&t.mode?!!(1073741824&Is)&&(Wl(t),6&t.subtreeFlags&&(t.flags|=8192)):Wl(t),null;case 24:case 25:return null}throw Error(a(156,t.tag))}function Kl(e,t){switch(na(t),t.tag){case 1:return No(t.type)&&Ro(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return Za(),Oo(jo),Oo(To),ri(),65536&(e=t.flags)&&!(128&e)?(t.flags=-65537&e|128,t):null;case 5:return Ja(t),null;case 13:if(Oo(ei),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(a(340));ma()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Oo(ei),null;case 4:return Za(),null;case 10:return Aa(t.type._context),null;case 22:case 23:return dc(),null;default:return null}}Pl=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Il=function(){},Nl=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,Ya(Wa.current);var a,i=null;switch(n){case"input":o=Y(e,o),r=Y(e,r),i=[];break;case"select":o=M({},o,{value:void 0}),r=M({},r,{value:void 0}),i=[];break;case"textarea":o=re(e,o),r=re(e,r),i=[];break;default:"function"!=typeof o.onClick&&"function"==typeof r.onClick&&(e.onclick=Jr)}for(u in be(n,r),n=null,o)if(!r.hasOwnProperty(u)&&o.hasOwnProperty(u)&&null!=o[u])if("style"===u){var s=o[u];for(a in s)s.hasOwnProperty(a)&&(n||(n={}),n[a]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(l.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in r){var c=r[u];if(s=null!=o?o[u]:void 0,r.hasOwnProperty(u)&&c!==s&&(null!=c||null!=s))if("style"===u)if(s){for(a in s)!s.hasOwnProperty(a)||c&&c.hasOwnProperty(a)||(n||(n={}),n[a]="");for(a in c)c.hasOwnProperty(a)&&s[a]!==c[a]&&(n||(n={}),n[a]=c[a])}else n||(i||(i=[]),i.push(u,n)),n=c;else"dangerouslySetInnerHTML"===u?(c=c?c.__html:void 0,s=s?s.__html:void 0,null!=c&&s!==c&&(i=i||[]).push(u,c)):"children"===u?"string"!=typeof c&&"number"!=typeof c||(i=i||[]).push(u,""+c):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(l.hasOwnProperty(u)?(null!=c&&"onScroll"===u&&zr("scroll",e),i||s===c||(i=[])):(i=i||[]).push(u,c))}n&&(i=i||[]).push("style",n);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Rl=function(e,t,n,r){n!==r&&(t.flags|=4)};var Yl=!1,Ql=!1,Zl="function"==typeof WeakSet?WeakSet:Set,Xl=null;function Jl(e,t){var n=e.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(r){Ec(e,t,r)}else n.current=null}function es(e,t,n){try{n()}catch(r){Ec(e,t,r)}}var ts=!1;function ns(e,t,n){var r=t.updateQueue;if(null!==(r=null!==r?r.lastEffect:null)){var o=r=r.next;do{if((o.tag&e)===e){var a=o.destroy;o.destroy=void 0,void 0!==a&&es(t,n,a)}o=o.next}while(o!==r)}}function rs(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function os(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"==typeof t?t(e):t.current=e}}function as(e){var t=e.alternate;null!==t&&(e.alternate=null,as(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[po],delete t[mo],delete t[go],delete t[yo],delete t[bo])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function is(e){return 5===e.tag||3===e.tag||4===e.tag}function ls(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||is(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function ss(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=Jr));else if(4!==r&&null!==(e=e.child))for(ss(e,t,n),e=e.sibling;null!==e;)ss(e,t,n),e=e.sibling}function cs(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(cs(e,t,n),e=e.sibling;null!==e;)cs(e,t,n),e=e.sibling}var us=null,ds=!1;function fs(e,t,n){for(n=n.child;null!==n;)ps(e,t,n),n=n.sibling}function ps(e,t,n){if(at&&"function"==typeof at.onCommitFiberUnmount)try{at.onCommitFiberUnmount(ot,n)}catch(l){}switch(n.tag){case 5:Ql||Jl(n,t);case 6:var r=us,o=ds;us=null,fs(e,t,n),ds=o,null!==(us=r)&&(ds?(e=us,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):us.removeChild(n.stateNode));break;case 18:null!==us&&(ds?(e=us,n=n.stateNode,8===e.nodeType?so(e.parentNode,n):1===e.nodeType&&so(e,n),Ut(e)):so(us,n.stateNode));break;case 4:r=us,o=ds,us=n.stateNode.containerInfo,ds=!0,fs(e,t,n),us=r,ds=o;break;case 0:case 11:case 14:case 15:if(!Ql&&(null!==(r=n.updateQueue)&&null!==(r=r.lastEffect))){o=r=r.next;do{var a=o,i=a.destroy;a=a.tag,void 0!==i&&(2&a||4&a)&&es(n,t,i),o=o.next}while(o!==r)}fs(e,t,n);break;case 1:if(!Ql&&(Jl(n,t),"function"==typeof(r=n.stateNode).componentWillUnmount))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Ec(n,t,l)}fs(e,t,n);break;case 21:fs(e,t,n);break;case 22:1&n.mode?(Ql=(r=Ql)||null!==n.memoizedState,fs(e,t,n),Ql=r):fs(e,t,n);break;default:fs(e,t,n)}}function ms(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Zl),t.forEach((function(t){var r=Ac.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function hs(e,t){var n=t.deletions;if(null!==n)for(var r=0;r<n.length;r++){var o=n[r];try{var i=e,l=t,s=l;e:for(;null!==s;){switch(s.tag){case 5:us=s.stateNode,ds=!1;break e;case 3:case 4:us=s.stateNode.containerInfo,ds=!0;break e}s=s.return}if(null===us)throw Error(a(160));ps(i,l,o),us=null,ds=!1;var c=o.alternate;null!==c&&(c.return=null),o.return=null}catch(u){Ec(o,t,u)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)gs(t,e),t=t.sibling}function gs(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(hs(t,e),ys(e),4&r){try{ns(3,e,e.return),rs(3,e)}catch(g){Ec(e,e.return,g)}try{ns(5,e,e.return)}catch(g){Ec(e,e.return,g)}}break;case 1:hs(t,e),ys(e),512&r&&null!==n&&Jl(n,n.return);break;case 5:if(hs(t,e),ys(e),512&r&&null!==n&&Jl(n,n.return),32&e.flags){var o=e.stateNode;try{fe(o,"")}catch(g){Ec(e,e.return,g)}}if(4&r&&null!=(o=e.stateNode)){var i=e.memoizedProps,l=null!==n?n.memoizedProps:i,s=e.type,c=e.updateQueue;if(e.updateQueue=null,null!==c)try{"input"===s&&"radio"===i.type&&null!=i.name&&Z(o,i),ve(s,l);var u=ve(s,i);for(l=0;l<c.length;l+=2){var d=c[l],f=c[l+1];"style"===d?ge(o,f):"dangerouslySetInnerHTML"===d?de(o,f):"children"===d?fe(o,f):v(o,d,f,u)}switch(s){case"input":X(o,i);break;case"textarea":ae(o,i);break;case"select":var p=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!i.multiple;var m=i.value;null!=m?ne(o,!!i.multiple,m,!1):p!==!!i.multiple&&(null!=i.defaultValue?ne(o,!!i.multiple,i.defaultValue,!0):ne(o,!!i.multiple,i.multiple?[]:"",!1))}o[mo]=i}catch(g){Ec(e,e.return,g)}}break;case 6:if(hs(t,e),ys(e),4&r){if(null===e.stateNode)throw Error(a(162));o=e.stateNode,i=e.memoizedProps;try{o.nodeValue=i}catch(g){Ec(e,e.return,g)}}break;case 3:if(hs(t,e),ys(e),4&r&&null!==n&&n.memoizedState.isDehydrated)try{Ut(t.containerInfo)}catch(g){Ec(e,e.return,g)}break;case 4:default:hs(t,e),ys(e);break;case 13:hs(t,e),ys(e),8192&(o=e.child).flags&&(i=null!==o.memoizedState,o.stateNode.isHidden=i,!i||null!==o.alternate&&null!==o.alternate.memoizedState||($s=Ze())),4&r&&ms(e);break;case 22:if(d=null!==n&&null!==n.memoizedState,1&e.mode?(Ql=(u=Ql)||d,hs(t,e),Ql=u):hs(t,e),ys(e),8192&r){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!d&&1&e.mode)for(Xl=e,d=e.child;null!==d;){for(f=Xl=d;null!==Xl;){switch(m=(p=Xl).child,p.tag){case 0:case 11:case 14:case 15:ns(4,p,p.return);break;case 1:Jl(p,p.return);var h=p.stateNode;if("function"==typeof h.componentWillUnmount){r=p,n=p.return;try{t=r,h.props=t.memoizedProps,h.state=t.memoizedState,h.componentWillUnmount()}catch(g){Ec(r,n,g)}}break;case 5:Jl(p,p.return);break;case 22:if(null!==p.memoizedState){Ss(f);continue}}null!==m?(m.return=p,Xl=m):Ss(f)}d=d.sibling}e:for(d=null,f=e;;){if(5===f.tag){if(null===d){d=f;try{o=f.stateNode,u?"function"==typeof(i=o.style).setProperty?i.setProperty("display","none","important"):i.display="none":(s=f.stateNode,l=null!=(c=f.memoizedProps.style)&&c.hasOwnProperty("display")?c.display:null,s.style.display=he("display",l))}catch(g){Ec(e,e.return,g)}}}else if(6===f.tag){if(null===d)try{f.stateNode.nodeValue=u?"":f.memoizedProps}catch(g){Ec(e,e.return,g)}}else if((22!==f.tag&&23!==f.tag||null===f.memoizedState||f===e)&&null!==f.child){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;null===f.sibling;){if(null===f.return||f.return===e)break e;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:hs(t,e),ys(e),4&r&&ms(e);case 21:}}function ys(e){var t=e.flags;if(2&t){try{e:{for(var n=e.return;null!==n;){if(is(n)){var r=n;break e}n=n.return}throw Error(a(160))}switch(r.tag){case 5:var o=r.stateNode;32&r.flags&&(fe(o,""),r.flags&=-33),cs(e,ls(e),o);break;case 3:case 4:var i=r.stateNode.containerInfo;ss(e,ls(e),i);break;default:throw Error(a(161))}}catch(l){Ec(e,e.return,l)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function bs(e,t,n){Xl=e,vs(e,t,n)}function vs(e,t,n){for(var r=!!(1&e.mode);null!==Xl;){var o=Xl,a=o.child;if(22===o.tag&&r){var i=null!==o.memoizedState||Yl;if(!i){var l=o.alternate,s=null!==l&&null!==l.memoizedState||Ql;l=Yl;var c=Ql;if(Yl=i,(Ql=s)&&!c)for(Xl=o;null!==Xl;)s=(i=Xl).child,22===i.tag&&null!==i.memoizedState?ks(o):null!==s?(s.return=i,Xl=s):ks(o);for(;null!==a;)Xl=a,vs(a,t,n),a=a.sibling;Xl=o,Yl=l,Ql=c}ws(e)}else 8772&o.subtreeFlags&&null!==a?(a.return=o,Xl=a):ws(e)}}function ws(e){for(;null!==Xl;){var t=Xl;if(8772&t.flags){var n=t.alternate;try{if(8772&t.flags)switch(t.tag){case 0:case 11:case 15:Ql||rs(5,t);break;case 1:var r=t.stateNode;if(4&t.flags&&!Ql)if(null===n)r.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:nl(t.type,n.memoizedProps);r.componentDidUpdate(o,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;null!==i&&qa(t,i,r);break;case 3:var l=t.updateQueue;if(null!==l){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}qa(t,l,n)}break;case 5:var s=t.stateNode;if(null===n&&4&t.flags){n=s;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var d=u.memoizedState;if(null!==d){var f=d.dehydrated;null!==f&&Ut(f)}}}break;default:throw Error(a(163))}Ql||512&t.flags&&os(t)}catch(p){Ec(t,t.return,p)}}if(t===e){Xl=null;break}if(null!==(n=t.sibling)){n.return=t.return,Xl=n;break}Xl=t.return}}function Ss(e){for(;null!==Xl;){var t=Xl;if(t===e){Xl=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Xl=n;break}Xl=t.return}}function ks(e){for(;null!==Xl;){var t=Xl;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{rs(4,t)}catch(s){Ec(t,n,s)}break;case 1:var r=t.stateNode;if("function"==typeof r.componentDidMount){var o=t.return;try{r.componentDidMount()}catch(s){Ec(t,o,s)}}var a=t.return;try{os(t)}catch(s){Ec(t,a,s)}break;case 5:var i=t.return;try{os(t)}catch(s){Ec(t,i,s)}}}catch(s){Ec(t,t.return,s)}if(t===e){Xl=null;break}var l=t.sibling;if(null!==l){l.return=t.return,Xl=l;break}Xl=t.return}}var xs,Es=Math.ceil,_s=w.ReactCurrentDispatcher,Os=w.ReactCurrentOwner,Cs=w.ReactCurrentBatchConfig,As=0,Ts=null,js=null,Ps=0,Is=0,Ns=_o(0),Rs=0,Ls=null,Ds=0,Ms=0,Fs=0,zs=null,Bs=null,$s=0,Us=1/0,Hs=null,qs=!1,Vs=null,Ws=null,Gs=!1,Ks=null,Ys=0,Qs=0,Zs=null,Xs=-1,Js=0;function ec(){return 6&As?Ze():-1!==Xs?Xs:Xs=Ze()}function tc(e){return 1&e.mode?2&As&&0!==Ps?Ps&-Ps:null!==ga.transition?(0===Js&&(Js=ht()),Js):0!==(e=vt)?e:e=void 0===(e=window.event)?16:Qt(e.type):1}function nc(e,t,n,r){if(50<Qs)throw Qs=0,Zs=null,Error(a(185));yt(e,n,r),2&As&&e===Ts||(e===Ts&&(!(2&As)&&(Ms|=n),4===Rs&&lc(e,Ps)),rc(e,r),1===n&&0===As&&!(1&t.mode)&&(Us=Ze()+500,Bo&&Ho()))}function rc(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,o=e.expirationTimes,a=e.pendingLanes;0<a;){var i=31-it(a),l=1<<i,s=o[i];-1===s?l&n&&!(l&r)||(o[i]=pt(l,t)):s<=t&&(e.expiredLanes|=l),a&=~l}}(e,t);var r=ft(e,e===Ts?Ps:0);if(0===r)null!==n&&Ke(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(null!=n&&Ke(n),1===t)0===e.tag?function(e){Bo=!0,Uo(e)}(sc.bind(null,e)):Uo(sc.bind(null,e)),io((function(){!(6&As)&&Ho()})),n=null;else{switch(wt(r)){case 1:n=Je;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=rt}n=Tc(n,oc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function oc(e,t){if(Xs=-1,Js=0,6&As)throw Error(a(327));var n=e.callbackNode;if(kc()&&e.callbackNode!==n)return null;var r=ft(e,e===Ts?Ps:0);if(0===r)return null;if(30&r||r&e.expiredLanes||t)t=gc(e,r);else{t=r;var o=As;As|=2;var i=mc();for(Ts===e&&Ps===t||(Hs=null,Us=Ze()+500,fc(e,t));;)try{bc();break}catch(s){pc(e,s)}Ca(),_s.current=i,As=o,null!==js?t=0:(Ts=null,Ps=0,t=Rs)}if(0!==t){if(2===t&&(0!==(o=mt(e))&&(r=o,t=ac(e,o))),1===t)throw n=Ls,fc(e,0),lc(e,r),rc(e,Ze()),n;if(6===t)lc(e,r);else{if(o=e.current.alternate,!(30&r||function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var r=0;r<n.length;r++){var o=n[r],a=o.getSnapshot;o=o.value;try{if(!lr(a(),o))return!1}catch(l){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(o)||(t=gc(e,r),2===t&&(i=mt(e),0!==i&&(r=i,t=ac(e,i))),1!==t)))throw n=Ls,fc(e,0),lc(e,r),rc(e,Ze()),n;switch(e.finishedWork=o,e.finishedLanes=r,t){case 0:case 1:throw Error(a(345));case 2:case 5:Sc(e,Bs,Hs);break;case 3:if(lc(e,r),(130023424&r)===r&&10<(t=$s+500-Ze())){if(0!==ft(e,0))break;if(((o=e.suspendedLanes)&r)!==r){ec(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=ro(Sc.bind(null,e,Bs,Hs),t);break}Sc(e,Bs,Hs);break;case 4:if(lc(e,r),(4194240&r)===r)break;for(t=e.eventTimes,o=-1;0<r;){var l=31-it(r);i=1<<l,(l=t[l])>o&&(o=l),r&=~i}if(r=o,10<(r=(120>(r=Ze()-r)?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Es(r/1960))-r)){e.timeoutHandle=ro(Sc.bind(null,e,Bs,Hs),r);break}Sc(e,Bs,Hs);break;default:throw Error(a(329))}}}return rc(e,Ze()),e.callbackNode===n?oc.bind(null,e):null}function ac(e,t){var n=zs;return e.current.memoizedState.isDehydrated&&(fc(e,t).flags|=256),2!==(e=gc(e,t))&&(t=Bs,Bs=n,null!==t&&ic(t)),e}function ic(e){null===Bs?Bs=e:Bs.push.apply(Bs,e)}function lc(e,t){for(t&=~Fs,t&=~Ms,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-it(t),r=1<<n;e[n]=-1,t&=~r}}function sc(e){if(6&As)throw Error(a(327));kc();var t=ft(e,0);if(!(1&t))return rc(e,Ze()),null;var n=gc(e,t);if(0!==e.tag&&2===n){var r=mt(e);0!==r&&(t=r,n=ac(e,r))}if(1===n)throw n=Ls,fc(e,0),lc(e,t),rc(e,Ze()),n;if(6===n)throw Error(a(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Sc(e,Bs,Hs),rc(e,Ze()),null}function cc(e,t){var n=As;As|=1;try{return e(t)}finally{0===(As=n)&&(Us=Ze()+500,Bo&&Ho())}}function uc(e){null!==Ks&&0===Ks.tag&&!(6&As)&&kc();var t=As;As|=1;var n=Cs.transition,r=vt;try{if(Cs.transition=null,vt=1,e)return e()}finally{vt=r,Cs.transition=n,!(6&(As=t))&&Ho()}}function dc(){Is=Ns.current,Oo(Ns)}function fc(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,oo(n)),null!==js)for(n=js.return;null!==n;){var r=n;switch(na(r),r.tag){case 1:null!=(r=r.type.childContextTypes)&&Ro();break;case 3:Za(),Oo(jo),Oo(To),ri();break;case 5:Ja(r);break;case 4:Za();break;case 13:case 19:Oo(ei);break;case 10:Aa(r.type._context);break;case 22:case 23:dc()}n=n.return}if(Ts=e,js=e=Nc(e.current,null),Ps=Is=t,Rs=0,Ls=null,Fs=Ms=Ds=0,Bs=zs=null,null!==Ia){for(t=0;t<Ia.length;t++)if(null!==(r=(n=Ia[t]).interleaved)){n.interleaved=null;var o=r.next,a=n.pending;if(null!==a){var i=a.next;a.next=o,r.next=i}n.pending=r}Ia=null}return e}function pc(e,t){for(;;){var n=js;try{if(Ca(),oi.current=Xi,ui){for(var r=li.memoizedState;null!==r;){var o=r.queue;null!==o&&(o.pending=null),r=r.next}ui=!1}if(ii=0,ci=si=li=null,di=!1,fi=0,Os.current=null,null===n||null===n.return){Rs=1,Ls=t,js=null;break}e:{var i=e,l=n.return,s=n,c=t;if(t=Ps,s.flags|=32768,null!==c&&"object"==typeof c&&"function"==typeof c.then){var u=c,d=s,f=d.tag;if(!(1&d.mode||0!==f&&11!==f&&15!==f)){var p=d.alternate;p?(d.updateQueue=p.updateQueue,d.memoizedState=p.memoizedState,d.lanes=p.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=gl(l);if(null!==m){m.flags&=-257,yl(m,l,s,0,t),1&m.mode&&hl(i,u,t),c=u;var h=(t=m).updateQueue;if(null===h){var g=new Set;g.add(c),t.updateQueue=g}else h.add(c);break e}if(!(1&t)){hl(i,u,t),hc();break e}c=Error(a(426))}else if(aa&&1&s.mode){var y=gl(l);if(null!==y){!(65536&y.flags)&&(y.flags|=256),yl(y,l,s,0,t),ha(cl(c,s));break e}}i=c=cl(c,s),4!==Rs&&(Rs=2),null===zs?zs=[i]:zs.push(i),i=l;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t,Ua(i,pl(0,c,t));break e;case 1:s=c;var b=i.type,v=i.stateNode;if(!(128&i.flags||"function"!=typeof b.getDerivedStateFromError&&(null===v||"function"!=typeof v.componentDidCatch||null!==Ws&&Ws.has(v)))){i.flags|=65536,t&=-t,i.lanes|=t,Ua(i,ml(i,s,t));break e}}i=i.return}while(null!==i)}wc(n)}catch(w){t=w,js===n&&null!==n&&(js=n=n.return);continue}break}}function mc(){var e=_s.current;return _s.current=Xi,null===e?Xi:e}function hc(){0!==Rs&&3!==Rs&&2!==Rs||(Rs=4),null===Ts||!(268435455&Ds)&&!(268435455&Ms)||lc(Ts,Ps)}function gc(e,t){var n=As;As|=2;var r=mc();for(Ts===e&&Ps===t||(Hs=null,fc(e,t));;)try{yc();break}catch(o){pc(e,o)}if(Ca(),As=n,_s.current=r,null!==js)throw Error(a(261));return Ts=null,Ps=0,Rs}function yc(){for(;null!==js;)vc(js)}function bc(){for(;null!==js&&!Ye();)vc(js)}function vc(e){var t=xs(e.alternate,e,Is);e.memoizedProps=e.pendingProps,null===t?wc(e):js=t,Os.current=null}function wc(e){var t=e;do{var n=t.alternate;if(e=t.return,32768&t.flags){if(null!==(n=Kl(n,t)))return n.flags&=32767,void(js=n);if(null===e)return Rs=6,void(js=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}else if(null!==(n=Gl(n,t,Is)))return void(js=n);if(null!==(t=t.sibling))return void(js=t);js=t=e}while(null!==t);0===Rs&&(Rs=5)}function Sc(e,t,n){var r=vt,o=Cs.transition;try{Cs.transition=null,vt=1,function(e,t,n,r){do{kc()}while(null!==Ks);if(6&As)throw Error(a(327));n=e.finishedWork;var o=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(a(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-it(n),a=1<<o;t[o]=0,r[o]=-1,e[o]=-1,n&=~a}}(e,i),e===Ts&&(js=Ts=null,Ps=0),!(2064&n.subtreeFlags)&&!(2064&n.flags)||Gs||(Gs=!0,Tc(tt,(function(){return kc(),null}))),i=!!(15990&n.flags),!!(15990&n.subtreeFlags)||i){i=Cs.transition,Cs.transition=null;var l=vt;vt=1;var s=As;As|=4,Os.current=null,function(e,t){if(eo=qt,pr(e=fr())){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{var r=(n=(n=e.ownerDocument)&&n.defaultView||window).getSelection&&n.getSelection();if(r&&0!==r.rangeCount){n=r.anchorNode;var o=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch(S){n=null;break e}var l=0,s=-1,c=-1,u=0,d=0,f=e,p=null;t:for(;;){for(var m;f!==n||0!==o&&3!==f.nodeType||(s=l+o),f!==i||0!==r&&3!==f.nodeType||(c=l+r),3===f.nodeType&&(l+=f.nodeValue.length),null!==(m=f.firstChild);)p=f,f=m;for(;;){if(f===e)break t;if(p===n&&++u===o&&(s=l),p===i&&++d===r&&(c=l),null!==(m=f.nextSibling))break;p=(f=p).parentNode}f=m}n=-1===s||-1===c?null:{start:s,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(to={focusedElem:e,selectionRange:n},qt=!1,Xl=t;null!==Xl;)if(e=(t=Xl).child,1028&t.subtreeFlags&&null!==e)e.return=t,Xl=e;else for(;null!==Xl;){t=Xl;try{var h=t.alternate;if(1024&t.flags)switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==h){var g=h.memoizedProps,y=h.memoizedState,b=t.stateNode,v=b.getSnapshotBeforeUpdate(t.elementType===t.type?g:nl(t.type,g),y);b.__reactInternalSnapshotBeforeUpdate=v}break;case 3:var w=t.stateNode.containerInfo;1===w.nodeType?w.textContent="":9===w.nodeType&&w.documentElement&&w.removeChild(w.documentElement);break;default:throw Error(a(163))}}catch(S){Ec(t,t.return,S)}if(null!==(e=t.sibling)){e.return=t.return,Xl=e;break}Xl=t.return}h=ts,ts=!1}(e,n),gs(n,e),mr(to),qt=!!eo,to=eo=null,e.current=n,bs(n,e,o),Qe(),As=s,vt=l,Cs.transition=i}else e.current=n;if(Gs&&(Gs=!1,Ks=e,Ys=o),i=e.pendingLanes,0===i&&(Ws=null),function(e){if(at&&"function"==typeof at.onCommitFiberRoot)try{at.onCommitFiberRoot(ot,e,void 0,!(128&~e.current.flags))}catch(t){}}(n.stateNode),rc(e,Ze()),null!==t)for(r=e.onRecoverableError,n=0;n<t.length;n++)o=t[n],r(o.value,{componentStack:o.stack,digest:o.digest});if(qs)throw qs=!1,e=Vs,Vs=null,e;!!(1&Ys)&&0!==e.tag&&kc(),i=e.pendingLanes,1&i?e===Zs?Qs++:(Qs=0,Zs=e):Qs=0,Ho()}(e,t,n,r)}finally{Cs.transition=o,vt=r}return null}function kc(){if(null!==Ks){var e=wt(Ys),t=Cs.transition,n=vt;try{if(Cs.transition=null,vt=16>e?16:e,null===Ks)var r=!1;else{if(e=Ks,Ks=null,Ys=0,6&As)throw Error(a(331));var o=As;for(As|=4,Xl=e.current;null!==Xl;){var i=Xl,l=i.child;if(16&Xl.flags){var s=i.deletions;if(null!==s){for(var c=0;c<s.length;c++){var u=s[c];for(Xl=u;null!==Xl;){var d=Xl;switch(d.tag){case 0:case 11:case 15:ns(8,d,i)}var f=d.child;if(null!==f)f.return=d,Xl=f;else for(;null!==Xl;){var p=(d=Xl).sibling,m=d.return;if(as(d),d===u){Xl=null;break}if(null!==p){p.return=m,Xl=p;break}Xl=m}}}var h=i.alternate;if(null!==h){var g=h.child;if(null!==g){h.child=null;do{var y=g.sibling;g.sibling=null,g=y}while(null!==g)}}Xl=i}}if(2064&i.subtreeFlags&&null!==l)l.return=i,Xl=l;else e:for(;null!==Xl;){if(2048&(i=Xl).flags)switch(i.tag){case 0:case 11:case 15:ns(9,i,i.return)}var b=i.sibling;if(null!==b){b.return=i.return,Xl=b;break e}Xl=i.return}}var v=e.current;for(Xl=v;null!==Xl;){var w=(l=Xl).child;if(2064&l.subtreeFlags&&null!==w)w.return=l,Xl=w;else e:for(l=v;null!==Xl;){if(2048&(s=Xl).flags)try{switch(s.tag){case 0:case 11:case 15:rs(9,s)}}catch(k){Ec(s,s.return,k)}if(s===l){Xl=null;break e}var S=s.sibling;if(null!==S){S.return=s.return,Xl=S;break e}Xl=s.return}}if(As=o,Ho(),at&&"function"==typeof at.onPostCommitFiberRoot)try{at.onPostCommitFiberRoot(ot,e)}catch(k){}r=!0}return r}finally{vt=n,Cs.transition=t}}return!1}function xc(e,t,n){e=Ba(e,t=pl(0,t=cl(n,t),1),1),t=ec(),null!==e&&(yt(e,1,t),rc(e,t))}function Ec(e,t,n){if(3===e.tag)xc(e,e,n);else for(;null!==t;){if(3===t.tag){xc(t,e,n);break}if(1===t.tag){var r=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Ws||!Ws.has(r))){t=Ba(t,e=ml(t,e=cl(n,e),1),1),e=ec(),null!==t&&(yt(t,1,e),rc(t,e));break}}t=t.return}}function _c(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=ec(),e.pingedLanes|=e.suspendedLanes&n,Ts===e&&(Ps&n)===n&&(4===Rs||3===Rs&&(130023424&Ps)===Ps&&500>Ze()-$s?fc(e,0):Fs|=n),rc(e,t)}function Oc(e,t){0===t&&(1&e.mode?(t=ut,!(130023424&(ut<<=1))&&(ut=4194304)):t=1);var n=ec();null!==(e=La(e,t))&&(yt(e,t,n),rc(e,n))}function Cc(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Oc(e,n)}function Ac(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(a(314))}null!==r&&r.delete(t),Oc(e,n)}function Tc(e,t){return Ge(e,t)}function jc(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pc(e,t,n,r){return new jc(e,t,n,r)}function Ic(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Nc(e,t){var n=e.alternate;return null===n?((n=Pc(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Rc(e,t,n,r,o,i){var l=2;if(r=e,"function"==typeof e)Ic(e)&&(l=1);else if("string"==typeof e)l=5;else e:switch(e){case x:return Lc(n.children,o,i,t);case E:l=8,o|=8;break;case _:return(e=Pc(12,n,t,2|o)).elementType=_,e.lanes=i,e;case T:return(e=Pc(13,n,t,o)).elementType=T,e.lanes=i,e;case j:return(e=Pc(19,n,t,o)).elementType=j,e.lanes=i,e;case N:return Dc(n,o,i,t);default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case O:l=10;break e;case C:l=9;break e;case A:l=11;break e;case P:l=14;break e;case I:l=16,r=null;break e}throw Error(a(130,null==e?e:typeof e,""))}return(t=Pc(l,n,t,o)).elementType=e,t.type=r,t.lanes=i,t}function Lc(e,t,n,r){return(e=Pc(7,e,r,t)).lanes=n,e}function Dc(e,t,n,r){return(e=Pc(22,e,r,t)).elementType=N,e.lanes=n,e.stateNode={isHidden:!1},e}function Mc(e,t,n){return(e=Pc(6,e,null,t)).lanes=n,e}function Fc(e,t,n){return(t=Pc(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function zc(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Bc(e,t,n,r,o,a,i,l,s){return e=new zc(e,t,n,l,s),1===t?(t=1,!0===a&&(t|=8)):t=0,a=Pc(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ma(a),e}function $c(e){if(!e)return Ao;e:{if(Ue(e=e._reactInternals)!==e||1!==e.tag)throw Error(a(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(No(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(a(171))}if(1===e.tag){var n=e.type;if(No(n))return Do(e,n,t)}return t}function Uc(e,t,n,r,o,a,i,l,s){return(e=Bc(n,r,!0,e,0,a,0,l,s)).context=$c(null),n=e.current,(a=za(r=ec(),o=tc(n))).callback=null!=t?t:null,Ba(n,a,o),e.current.lanes=o,yt(e,o,r),rc(e,r),e}function Hc(e,t,n,r){var o=t.current,a=ec(),i=tc(o);return n=$c(n),null===t.context?t.context=n:t.pendingContext=n,(t=za(a,i)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),null!==(e=Ba(o,t,i))&&(nc(e,o,i,a),$a(e,o,i)),i}function qc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Vc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Wc(e,t){Vc(e,t),(e=e.alternate)&&Vc(e,t)}xs=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||jo.current)vl=!0;else{if(!(e.lanes&n||128&t.flags))return vl=!1,function(e,t,n){switch(t.tag){case 3:Tl(t),ma();break;case 5:Xa(t);break;case 1:No(t.type)&&Mo(t);break;case 4:Qa(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,o=t.memoizedProps.value;Co(xa,r._currentValue),r._currentValue=o;break;case 13:if(null!==(r=t.memoizedState))return null!==r.dehydrated?(Co(ei,1&ei.current),t.flags|=128,null):n&t.child.childLanes?Ml(e,t,n):(Co(ei,1&ei.current),null!==(e=ql(e,t,n))?e.sibling:null);Co(ei,1&ei.current);break;case 19:if(r=!!(n&t.childLanes),128&e.flags){if(r)return Ul(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),Co(ei,ei.current),r)break;return null;case 22:case 23:return t.lanes=0,El(e,t,n)}return ql(e,t,n)}(e,t,n);vl=!!(131072&e.flags)}else vl=!1,aa&&1048576&t.flags&&ea(t,Go,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Hl(e,t),e=t.pendingProps;var o=Io(t,To.current);ja(t,n),o=gi(null,t,r,e,o,n);var i=yi();return t.flags|=1,"object"==typeof o&&null!==o&&"function"==typeof o.render&&void 0===o.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,No(r)?(i=!0,Mo(t)):i=!1,t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,Ma(t),o.updater=ol,t.stateNode=o,o._reactInternals=t,sl(t,r,e,n),t=Al(null,t,r,!0,i,n)):(t.tag=0,aa&&i&&ta(t),wl(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Hl(e,t),e=t.pendingProps,r=(o=r._init)(r._payload),t.type=r,o=t.tag=function(e){if("function"==typeof e)return Ic(e)?1:0;if(null!=e){if((e=e.$$typeof)===A)return 11;if(e===P)return 14}return 2}(r),e=nl(r,e),o){case 0:t=Ol(null,t,r,e,n);break e;case 1:t=Cl(null,t,r,e,n);break e;case 11:t=Sl(null,t,r,e,n);break e;case 14:t=kl(null,t,r,nl(r.type,e),n);break e}throw Error(a(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,Ol(e,t,r,o=t.elementType===r?o:nl(r,o),n);case 1:return r=t.type,o=t.pendingProps,Cl(e,t,r,o=t.elementType===r?o:nl(r,o),n);case 3:e:{if(Tl(t),null===e)throw Error(a(387));r=t.pendingProps,o=(i=t.memoizedState).element,Fa(e,t),Ha(t,r,null,n);var l=t.memoizedState;if(r=l.element,i.isDehydrated){if(i={element:r,isDehydrated:!1,cache:l.cache,pendingSuspenseBoundaries:l.pendingSuspenseBoundaries,transitions:l.transitions},t.updateQueue.baseState=i,t.memoizedState=i,256&t.flags){t=jl(e,t,r,n,o=cl(Error(a(423)),t));break e}if(r!==o){t=jl(e,t,r,n,o=cl(Error(a(424)),t));break e}for(oa=co(t.stateNode.containerInfo.firstChild),ra=t,aa=!0,ia=null,n=ka(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(ma(),r===o){t=ql(e,t,n);break e}wl(e,t,r,n)}t=t.child}return t;case 5:return Xa(t),null===e&&ua(t),r=t.type,o=t.pendingProps,i=null!==e?e.memoizedProps:null,l=o.children,no(r,o)?l=null:null!==i&&no(r,i)&&(t.flags|=32),_l(e,t),wl(e,t,l,n),t.child;case 6:return null===e&&ua(t),null;case 13:return Ml(e,t,n);case 4:return Qa(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=Sa(t,null,r,n):wl(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,Sl(e,t,r,o=t.elementType===r?o:nl(r,o),n);case 7:return wl(e,t,t.pendingProps,n),t.child;case 8:case 12:return wl(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,i=t.memoizedProps,l=o.value,Co(xa,r._currentValue),r._currentValue=l,null!==i)if(lr(i.value,l)){if(i.children===o.children&&!jo.current){t=ql(e,t,n);break e}}else for(null!==(i=t.child)&&(i.return=t);null!==i;){var s=i.dependencies;if(null!==s){l=i.child;for(var c=s.firstContext;null!==c;){if(c.context===r){if(1===i.tag){(c=za(-1,n&-n)).tag=2;var u=i.updateQueue;if(null!==u){var d=(u=u.shared).pending;null===d?c.next=c:(c.next=d.next,d.next=c),u.pending=c}}i.lanes|=n,null!==(c=i.alternate)&&(c.lanes|=n),Ta(i.return,n,t),s.lanes|=n;break}c=c.next}}else if(10===i.tag)l=i.type===t.type?null:i.child;else if(18===i.tag){if(null===(l=i.return))throw Error(a(341));l.lanes|=n,null!==(s=l.alternate)&&(s.lanes|=n),Ta(l,n,t),l=i.sibling}else l=i.child;if(null!==l)l.return=i;else for(l=i;null!==l;){if(l===t){l=null;break}if(null!==(i=l.sibling)){i.return=l.return,l=i;break}l=l.return}i=l}wl(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,ja(t,n),r=r(o=Pa(o)),t.flags|=1,wl(e,t,r,n),t.child;case 14:return o=nl(r=t.type,t.pendingProps),kl(e,t,r,o=nl(r.type,o),n);case 15:return xl(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:nl(r,o),Hl(e,t),t.tag=1,No(r)?(e=!0,Mo(t)):e=!1,ja(t,n),il(t,r,o),sl(t,r,o,n),Al(null,t,r,!0,e,n);case 19:return Ul(e,t,n);case 22:return El(e,t,n)}throw Error(a(156,t.tag))};var Gc="function"==typeof reportError?reportError:function(e){console.error(e)};function Kc(e){this._internalRoot=e}function Yc(e){this._internalRoot=e}function Qc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Zc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Xc(){}function Jc(e,t,n,r,o){var a=n._reactRootContainer;if(a){var i=a;if("function"==typeof o){var l=o;o=function(){var e=qc(i);l.call(e)}}Hc(t,i,e,o)}else i=function(e,t,n,r,o){if(o){if("function"==typeof r){var a=r;r=function(){var e=qc(i);a.call(e)}}var i=Uc(t,r,e,0,null,!1,0,"",Xc);return e._reactRootContainer=i,e[ho]=i.current,Ur(8===e.nodeType?e.parentNode:e),uc(),i}for(;o=e.lastChild;)e.removeChild(o);if("function"==typeof r){var l=r;r=function(){var e=qc(s);l.call(e)}}var s=Bc(e,0,!1,null,0,!1,0,"",Xc);return e._reactRootContainer=s,e[ho]=s.current,Ur(8===e.nodeType?e.parentNode:e),uc((function(){Hc(t,s,n,r)})),s}(n,t,e,o,r);return qc(i)}Yc.prototype.render=Kc.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(a(409));Hc(e,t,null,null)},Yc.prototype.unmount=Kc.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;uc((function(){Hc(null,e,null,null)})),t[ho]=null}},Yc.prototype.unstable_scheduleHydration=function(e){if(e){var t=Et();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Nt.length&&0!==t&&t<Nt[n].priority;n++);Nt.splice(n,0,e),0===n&&Mt(e)}},St=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=dt(t.pendingLanes);0!==n&&(bt(t,1|n),rc(t,Ze()),!(6&As)&&(Us=Ze()+500,Ho()))}break;case 13:uc((function(){var t=La(e,1);if(null!==t){var n=ec();nc(t,e,1,n)}})),Wc(e,1)}},kt=function(e){if(13===e.tag){var t=La(e,134217728);if(null!==t)nc(t,e,134217728,ec());Wc(e,134217728)}},xt=function(e){if(13===e.tag){var t=tc(e),n=La(e,t);if(null!==n)nc(n,e,t,ec());Wc(e,t)}},Et=function(){return vt},_t=function(e,t){var n=vt;try{return vt=e,t()}finally{vt=n}},ke=function(e,t,n){switch(t){case"input":if(X(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=ko(r);if(!o)throw Error(a(90));G(r),X(r,o)}}}break;case"textarea":ae(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},Ae=cc,Te=uc;var eu={usingClientEntryPoint:!1,Events:[wo,So,ko,Oe,Ce,cc]},tu={findFiberByHostInstance:vo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},nu={bundleType:tu.bundleType,version:tu.version,rendererPackageName:tu.rendererPackageName,rendererConfig:tu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:w.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ve(e))?null:e.stateNode},findFiberByHostInstance:tu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var ru=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!ru.isDisabled&&ru.supportsFiber)try{ot=ru.inject(nu),at=ru}catch(ue){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=eu,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Qc(t))throw Error(a(200));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:k,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.createRoot=function(e,t){if(!Qc(e))throw Error(a(299));var n=!1,r="",o=Gc;return null!=t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(r=t.identifierPrefix),void 0!==t.onRecoverableError&&(o=t.onRecoverableError)),t=Bc(e,1,!1,null,0,n,0,r,o),e[ho]=t.current,Ur(8===e.nodeType?e.parentNode:e),new Kc(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(a(188));throw e=Object.keys(e).join(","),Error(a(268,e))}return e=null===(e=Ve(t))?null:e.stateNode},t.flushSync=function(e){return uc(e)},t.hydrate=function(e,t,n){if(!Zc(t))throw Error(a(200));return Jc(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Qc(e))throw Error(a(405));var r=null!=n&&n.hydratedSources||null,o=!1,i="",l=Gc;if(null!=n&&(!0===n.unstable_strictMode&&(o=!0),void 0!==n.identifierPrefix&&(i=n.identifierPrefix),void 0!==n.onRecoverableError&&(l=n.onRecoverableError)),t=Uc(t,null,e,1,null!=n?n:null,o,0,i,l),e[ho]=t.current,Ur(e),r)for(e=0;e<r.length;e++)o=(o=(n=r[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new Yc(t)},t.render=function(e,t,n){if(!Zc(t))throw Error(a(200));return Jc(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Zc(e))throw Error(a(40));return!!e._reactRootContainer&&(uc((function(){Jc(null,null,e,!1,(function(){e._reactRootContainer=null,e[ho]=null}))})),!0)},t.unstable_batchedUpdates=cc,t.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Zc(n))throw Error(a(200));if(null==e||void 0===e._reactInternals)throw Error(a(38));return Jc(e,t,n,!1,r)},t.version="18.3.1-next-f1338f8080-20240426"},9576:(e,t,n)=>{"use strict";var r=n(8143);t.createRoot=r.createRoot,t.hydrateRoot=r.hydrateRoot},8143:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(9481)},4072:e=>{var t="undefined"!=typeof Element,n="function"==typeof Map,r="function"==typeof Set,o="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;function a(e,i){if(e===i)return!0;if(e&&i&&"object"==typeof e&&"object"==typeof i){if(e.constructor!==i.constructor)return!1;var l,s,c,u;if(Array.isArray(e)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(!a(e[s],i[s]))return!1;return!0}if(n&&e instanceof Map&&i instanceof Map){if(e.size!==i.size)return!1;for(u=e.entries();!(s=u.next()).done;)if(!i.has(s.value[0]))return!1;for(u=e.entries();!(s=u.next()).done;)if(!a(s.value[1],i.get(s.value[0])))return!1;return!0}if(r&&e instanceof Set&&i instanceof Set){if(e.size!==i.size)return!1;for(u=e.entries();!(s=u.next()).done;)if(!i.has(s.value[0]))return!1;return!0}if(o&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(i)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(e[s]!==i[s])return!1;return!0}if(e.constructor===RegExp)return e.source===i.source&&e.flags===i.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"==typeof e.valueOf&&"function"==typeof i.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString&&"function"==typeof e.toString&&"function"==typeof i.toString)return e.toString()===i.toString();if((l=(c=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(s=l;0!=s--;)if(!Object.prototype.hasOwnProperty.call(i,c[s]))return!1;if(t&&e instanceof Element)return!1;for(s=l;0!=s--;)if(("_owner"!==c[s]&&"__v"!==c[s]&&"__o"!==c[s]||!e.$$typeof)&&!a(e[c[s]],i[c[s]]))return!1;return!0}return e!=e&&i!=i}e.exports=function(e,t){try{return a(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},932:(e,t,n)=>{"use strict";n.d(t,{mg:()=>J,vd:()=>V});var r=n(758),o=n(2736),a=n.n(o),i=n(4072),l=n.n(i),s=n(9597),c=n.n(s),u=n(2945),d=n.n(u);function f(){return f=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},f.apply(this,arguments)}function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,m(e,t)}function m(e,t){return m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},m(e,t)}function h(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)t.indexOf(n=a[r])>=0||(o[n]=e[n]);return o}var g={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},y={rel:["amphtml","canonical","alternate"]},b={type:["application/ld+json"]},v={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},w=Object.keys(g).map((function(e){return g[e]})),S={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},k=Object.keys(S).reduce((function(e,t){return e[S[t]]=t,e}),{}),x=function(e,t){for(var n=e.length-1;n>=0;n-=1){var r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},E=function(e){var t=x(e,g.TITLE),n=x(e,"titleTemplate");if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(function(){return t}));var r=x(e,"defaultTitle");return t||r||void 0},_=function(e){return x(e,"onChangeClientState")||function(){}},O=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return f({},e,t)}),{})},C=function(e,t){return t.filter((function(e){return void 0!==e[g.BASE]})).map((function(e){return e[g.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),o=0;o<r.length;o+=1){var a=r[o].toLowerCase();if(-1!==e.indexOf(a)&&n[a])return t.concat(n)}return t}),[])},A=function(e,t,n){var r={};return n.filter((function(t){return!!Array.isArray(t[e])||(void 0!==t[e]&&console&&"function"==typeof console.warn&&console.warn("Helmet: "+e+' should be of type "Array". Instead found type "'+typeof t[e]+'"'),!1)})).map((function(t){return t[e]})).reverse().reduce((function(e,n){var o={};n.filter((function(e){for(var n,a=Object.keys(e),i=0;i<a.length;i+=1){var l=a[i],s=l.toLowerCase();-1===t.indexOf(s)||"rel"===n&&"canonical"===e[n].toLowerCase()||"rel"===s&&"stylesheet"===e[s].toLowerCase()||(n=s),-1===t.indexOf(l)||"innerHTML"!==l&&"cssText"!==l&&"itemprop"!==l||(n=l)}if(!n||!e[n])return!1;var c=e[n].toLowerCase();return r[n]||(r[n]={}),o[n]||(o[n]={}),!r[n][c]&&(o[n][c]=!0,!0)})).reverse().forEach((function(t){return e.push(t)}));for(var a=Object.keys(o),i=0;i<a.length;i+=1){var l=a[i],s=f({},r[l],o[l]);r[l]=s}return e}),[]).reverse()},T=function(e,t){if(Array.isArray(e)&&e.length)for(var n=0;n<e.length;n+=1)if(e[n][t])return!0;return!1},j=function(e){return Array.isArray(e)?e.join(""):e},P=function(e,t){return Array.isArray(e)?e.reduce((function(e,n){return function(e,t){for(var n=Object.keys(e),r=0;r<n.length;r+=1)if(t[n[r]]&&t[n[r]].includes(e[n[r]]))return!0;return!1}(n,t)?e.priority.push(n):e.default.push(n),e}),{priority:[],default:[]}):{default:e}},I=function(e,t){var n;return f({},e,((n={})[t]=void 0,n))},N=[g.NOSCRIPT,g.SCRIPT,g.STYLE],R=function(e,t){return void 0===t&&(t=!0),!1===t?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},L=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},D=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[S[n]||n]=e[n],t}),t)},M=function(e,t){return t.map((function(t,n){var o,a=((o={key:n})["data-rh"]=!0,o);return Object.keys(t).forEach((function(e){var n=S[e]||e;"innerHTML"===n||"cssText"===n?a.dangerouslySetInnerHTML={__html:t.innerHTML||t.cssText}:a[n]=t[e]})),r.createElement(e,a)}))},F=function(e,t,n){switch(e){case g.TITLE:return{toComponent:function(){return n=t.titleAttributes,(o={key:e=t.title})["data-rh"]=!0,a=D(n,o),[r.createElement(g.TITLE,a,e)];var e,n,o,a},toString:function(){return function(e,t,n,r){var o=L(n),a=j(t);return o?"<"+e+' data-rh="true" '+o+">"+R(a,r)+"</"+e+">":"<"+e+' data-rh="true">'+R(a,r)+"</"+e+">"}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return D(t)},toString:function(){return L(t)}};default:return{toComponent:function(){return M(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var o=Object.keys(r).filter((function(e){return!("innerHTML"===e||"cssText"===e)})).reduce((function(e,t){var o=void 0===r[t]?t:t+'="'+R(r[t],n)+'"';return e?e+" "+o:o}),""),a=r.innerHTML||r.cssText||"",i=-1===N.indexOf(e);return t+"<"+e+' data-rh="true" '+o+(i?"/>":">"+a+"</"+e+">")}),"")}(e,t,n)}}}},z=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,o=e.htmlAttributes,a=e.noscriptTags,i=e.styleTags,l=e.title,s=void 0===l?"":l,c=e.titleAttributes,u=e.linkTags,d=e.metaTags,f=e.scriptTags,p={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var m=function(e){var t=e.linkTags,n=e.scriptTags,r=e.encode,o=P(e.metaTags,v),a=P(t,y),i=P(n,b);return{priorityMethods:{toComponent:function(){return[].concat(M(g.META,o.priority),M(g.LINK,a.priority),M(g.SCRIPT,i.priority))},toString:function(){return F(g.META,o.priority,r)+" "+F(g.LINK,a.priority,r)+" "+F(g.SCRIPT,i.priority,r)}},metaTags:o.default,linkTags:a.default,scriptTags:i.default}}(e);p=m.priorityMethods,u=m.linkTags,d=m.metaTags,f=m.scriptTags}return{priority:p,base:F(g.BASE,t,r),bodyAttributes:F("bodyAttributes",n,r),htmlAttributes:F("htmlAttributes",o,r),link:F(g.LINK,u,r),meta:F(g.META,d,r),noscript:F(g.NOSCRIPT,a,r),script:F(g.SCRIPT,f,r),style:F(g.STYLE,i,r),title:F(g.TITLE,{title:s,titleAttributes:c},r)}},B=[],$=function(e,t){var n=this;void 0===t&&(t="undefined"!=typeof document),this.instances=[],this.value={setHelmet:function(e){n.context.helmet=e},helmetInstances:{get:function(){return n.canUseDOM?B:n.instances},add:function(e){(n.canUseDOM?B:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?B:n.instances).indexOf(e);(n.canUseDOM?B:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=z({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},U=r.createContext({}),H=a().shape({setHelmet:a().func,helmetInstances:a().shape({get:a().func,add:a().func,remove:a().func})}),q="undefined"!=typeof document,V=function(e){function t(n){var r;return(r=e.call(this,n)||this).helmetData=new $(r.props.context,t.canUseDOM),r}return p(t,e),t.prototype.render=function(){return r.createElement(U.Provider,{value:this.helmetData.value},this.props.children)},t}(r.Component);V.canUseDOM=q,V.propTypes={context:a().shape({helmet:a().shape()}),children:a().node.isRequired},V.defaultProps={context:{}},V.displayName="HelmetProvider";var W=function(e,t){var n,r=document.head||document.querySelector(g.HEAD),o=r.querySelectorAll(e+"[data-rh]"),a=[].slice.call(o),i=[];return t&&t.length&&t.forEach((function(t){var r=document.createElement(e);for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&("innerHTML"===o?r.innerHTML=t.innerHTML:"cssText"===o?r.styleSheet?r.styleSheet.cssText=t.cssText:r.appendChild(document.createTextNode(t.cssText)):r.setAttribute(o,void 0===t[o]?"":t[o]));r.setAttribute("data-rh","true"),a.some((function(e,t){return n=t,r.isEqualNode(e)}))?a.splice(n,1):i.push(r)})),a.forEach((function(e){return e.parentNode.removeChild(e)})),i.forEach((function(e){return r.appendChild(e)})),{oldTags:a,newTags:i}},G=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute("data-rh"),o=r?r.split(","):[],a=[].concat(o),i=Object.keys(t),l=0;l<i.length;l+=1){var s=i[l],c=t[s]||"";n.getAttribute(s)!==c&&n.setAttribute(s,c),-1===o.indexOf(s)&&o.push(s);var u=a.indexOf(s);-1!==u&&a.splice(u,1)}for(var d=a.length-1;d>=0;d-=1)n.removeAttribute(a[d]);o.length===a.length?n.removeAttribute("data-rh"):n.getAttribute("data-rh")!==i.join(",")&&n.setAttribute("data-rh",i.join(","))}},K=function(e,t){var n=e.baseTag,r=e.htmlAttributes,o=e.linkTags,a=e.metaTags,i=e.noscriptTags,l=e.onChangeClientState,s=e.scriptTags,c=e.styleTags,u=e.title,d=e.titleAttributes;G(g.BODY,e.bodyAttributes),G(g.HTML,r),function(e,t){void 0!==e&&document.title!==e&&(document.title=j(e)),G(g.TITLE,t)}(u,d);var f={baseTag:W(g.BASE,n),linkTags:W(g.LINK,o),metaTags:W(g.META,a),noscriptTags:W(g.NOSCRIPT,i),scriptTags:W(g.SCRIPT,s),styleTags:W(g.STYLE,c)},p={},m={};Object.keys(f).forEach((function(e){var t=f[e],n=t.newTags,r=t.oldTags;n.length&&(p[e]=n),r.length&&(m[e]=f[e].oldTags)})),t&&t(),l(e,p,m)},Y=null,Q=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(t=e.call.apply(e,[this].concat(r))||this).rendered=!1,t}p(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!d()(e,this.props)},n.componentDidUpdate=function(){this.emitChange()},n.componentWillUnmount=function(){this.props.context.helmetInstances.remove(this),this.emitChange()},n.emitChange=function(){var e,t,n=this.props.context,r=n.setHelmet,o=null,a=(e=n.helmetInstances.get().map((function(e){var t=f({},e.props);return delete t.context,t})),{baseTag:C(["href"],e),bodyAttributes:O("bodyAttributes",e),defer:x(e,"defer"),encode:x(e,"encodeSpecialCharacters"),htmlAttributes:O("htmlAttributes",e),linkTags:A(g.LINK,["rel","href"],e),metaTags:A(g.META,["name","charset","http-equiv","property","itemprop"],e),noscriptTags:A(g.NOSCRIPT,["innerHTML"],e),onChangeClientState:_(e),scriptTags:A(g.SCRIPT,["src","innerHTML"],e),styleTags:A(g.STYLE,["cssText"],e),title:E(e),titleAttributes:O("titleAttributes",e),prioritizeSeoTags:T(e,"prioritizeSeoTags")});V.canUseDOM?(t=a,Y&&cancelAnimationFrame(Y),t.defer?Y=requestAnimationFrame((function(){K(t,(function(){Y=null}))})):(K(t),Y=null)):z&&(o=z(a)),r(o)},n.init=function(){this.rendered||(this.rendered=!0,this.props.context.helmetInstances.add(this),this.emitChange())},n.render=function(){return this.init(),null},t}(r.Component);Q.propTypes={context:H.isRequired},Q.displayName="HelmetDispatcher";var Z=["children"],X=["children"],J=function(e){function t(){return e.apply(this,arguments)||this}p(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!l()(I(this.props,"helmetData"),I(e,"helmetData"))},n.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case g.SCRIPT:case g.NOSCRIPT:return{innerHTML:t};case g.STYLE:return{cssText:t};default:throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")}},n.flattenArrayTypeChildren=function(e){var t,n=e.child,r=e.arrayTypeChildren;return f({},r,((t={})[n.type]=[].concat(r[n.type]||[],[f({},e.newChildProps,this.mapNestedChildrenToProps(n,e.nestedChildren))]),t))},n.mapObjectTypeChildren=function(e){var t,n,r=e.child,o=e.newProps,a=e.newChildProps,i=e.nestedChildren;switch(r.type){case g.TITLE:return f({},o,((t={})[r.type]=i,t.titleAttributes=f({},a),t));case g.BODY:return f({},o,{bodyAttributes:f({},a)});case g.HTML:return f({},o,{htmlAttributes:f({},a)});default:return f({},o,((n={})[r.type]=f({},a),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=f({},t);return Object.keys(e).forEach((function(t){var r;n=f({},n,((r={})[t]=e[t],r))})),n},n.warnOnInvalidChildren=function(e,t){return c()(w.some((function(t){return e.type===t})),"function"==typeof e.type?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":"Only elements types "+w.join(", ")+" are allowed. Helmet does not support rendering <"+e.type+"> elements. Refer to our API for more information."),c()(!t||"string"==typeof t||Array.isArray(t)&&!t.some((function(e){return"string"!=typeof e})),"Helmet expects a string as a child of <"+e.type+">. Did you forget to wrap your children in braces? ( <"+e.type+">{``}</"+e.type+"> ) Refer to our API for more information."),!0},n.mapChildrenToProps=function(e,t){var n=this,o={};return r.Children.forEach(e,(function(e){if(e&&e.props){var r=e.props,a=r.children,i=h(r,Z),l=Object.keys(i).reduce((function(e,t){return e[k[t]||t]=i[t],e}),{}),s=e.type;switch("symbol"==typeof s?s=s.toString():n.warnOnInvalidChildren(e,a),s){case g.FRAGMENT:t=n.mapChildrenToProps(a,t);break;case g.LINK:case g.META:case g.NOSCRIPT:case g.SCRIPT:case g.STYLE:o=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:o,newChildProps:l,nestedChildren:a});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:l,nestedChildren:a})}}})),this.mapArrayTypeChildrenToProps(o,t)},n.render=function(){var e=this.props,t=e.children,n=h(e,X),o=f({},n),a=n.helmetData;return t&&(o=this.mapChildrenToProps(t,o)),!a||a instanceof $||(a=new $(a.context,a.instances)),a?r.createElement(Q,f({},o,{context:a.value,helmetData:void 0})):r.createElement(U.Consumer,null,(function(e){return r.createElement(Q,f({},o,{context:e}))}))},t}(r.Component);J.propTypes={base:a().object,bodyAttributes:a().object,children:a().oneOfType([a().arrayOf(a().node),a().node]),defaultTitle:a().string,defer:a().bool,encodeSpecialCharacters:a().bool,htmlAttributes:a().object,link:a().arrayOf(a().object),meta:a().arrayOf(a().object),noscript:a().arrayOf(a().object),onChangeClientState:a().func,script:a().arrayOf(a().object),style:a().arrayOf(a().object),title:a().string,titleAttributes:a().object,titleTemplate:a().string,prioritizeSeoTags:a().bool,helmetData:a().object},J.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},J.displayName="Helmet"},5843:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,o=n?Symbol.for("react.portal"):60106,a=n?Symbol.for("react.fragment"):60107,i=n?Symbol.for("react.strict_mode"):60108,l=n?Symbol.for("react.profiler"):60114,s=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,f=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,h=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,y=n?Symbol.for("react.block"):60121,b=n?Symbol.for("react.fundamental"):60117,v=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function S(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case d:case a:case l:case i:case p:return e;default:switch(e=e&&e.$$typeof){case c:case f:case g:case h:case s:return e;default:return t}}case o:return t}}}function k(e){return S(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=s,t.Element=r,t.ForwardRef=f,t.Fragment=a,t.Lazy=g,t.Memo=h,t.Portal=o,t.Profiler=l,t.StrictMode=i,t.Suspense=p,t.isAsyncMode=function(e){return k(e)||S(e)===u},t.isConcurrentMode=k,t.isContextConsumer=function(e){return S(e)===c},t.isContextProvider=function(e){return S(e)===s},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return S(e)===f},t.isFragment=function(e){return S(e)===a},t.isLazy=function(e){return S(e)===g},t.isMemo=function(e){return S(e)===h},t.isPortal=function(e){return S(e)===o},t.isProfiler=function(e){return S(e)===l},t.isStrictMode=function(e){return S(e)===i},t.isSuspense=function(e){return S(e)===p},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===a||e===d||e===l||e===i||e===p||e===m||"object"==typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===h||e.$$typeof===s||e.$$typeof===c||e.$$typeof===f||e.$$typeof===b||e.$$typeof===v||e.$$typeof===w||e.$$typeof===y)},t.typeOf=S},5959:(e,t,n)=>{"use strict";e.exports=n(5843)},1977:(e,t,n)=>{"use strict";n.d(t,{u:()=>i,v:()=>l});var r=n(5557),o=n(9451),a=n(758);function i(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var o=e.path?(0,r.B6)(t,e):n.length?n[n.length-1].match:r.Ix.computeRootMatch(t);return o&&(n.push({route:e,match:o}),e.routes&&i(e.routes,t,n)),o})),n}function l(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),e?a.createElement(r.dO,n,e.map((function(e,n){return a.createElement(r.qh,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,o.A)({},n,{},t,{route:e})):a.createElement(e.component,(0,o.A)({},n,t,{route:e}))}})}))):null}},1742:(e,t,n)=>{"use strict";n.d(t,{I9:()=>d,Kd:()=>u,N_:()=>y,k2:()=>w});var r=n(5557),o=n(7065),a=n(758),i=n(3332),l=n(9451),s=n(1522),c=n(5385),u=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(t=e.call.apply(e,[this].concat(r))||this).history=(0,i.zR)(t.props),t}return(0,o.A)(t,e),t.prototype.render=function(){return a.createElement(r.Ix,{history:this.history,children:this.props.children})},t}(a.Component);var d=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(t=e.call.apply(e,[this].concat(r))||this).history=(0,i.TM)(t.props),t}return(0,o.A)(t,e),t.prototype.render=function(){return a.createElement(r.Ix,{history:this.history,children:this.props.children})},t}(a.Component);var f=function(e,t){return"function"==typeof e?e(t):e},p=function(e,t){return"string"==typeof e?(0,i.yJ)(e,null,null,t):e},m=function(e){return e},h=a.forwardRef;void 0===h&&(h=m);var g=h((function(e,t){var n=e.innerRef,r=e.navigate,o=e.onClick,i=(0,s.A)(e,["innerRef","navigate","onClick"]),c=i.target,u=(0,l.A)({},i,{onClick:function(e){try{o&&o(e)}catch(t){throw e.preventDefault(),t}e.defaultPrevented||0!==e.button||c&&"_self"!==c||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)||(e.preventDefault(),r())}});return u.ref=m!==h&&t||n,a.createElement("a",u)}));var y=h((function(e,t){var n=e.component,o=void 0===n?g:n,u=e.replace,d=e.to,y=e.innerRef,b=(0,s.A)(e,["component","replace","to","innerRef"]);return a.createElement(r.XZ.Consumer,null,(function(e){e||(0,c.A)(!1);var n=e.history,r=p(f(d,e.location),e.location),s=r?n.createHref(r):"",g=(0,l.A)({},b,{href:s,navigate:function(){var t=f(d,e.location),r=(0,i.AO)(e.location)===(0,i.AO)(p(t));(u||r?n.replace:n.push)(t)}});return m!==h?g.ref=t||y:g.innerRef=y,a.createElement(o,g)}))})),b=function(e){return e},v=a.forwardRef;void 0===v&&(v=b);var w=v((function(e,t){var n=e["aria-current"],o=void 0===n?"page":n,i=e.activeClassName,u=void 0===i?"active":i,d=e.activeStyle,m=e.className,h=e.exact,g=e.isActive,w=e.location,S=e.sensitive,k=e.strict,x=e.style,E=e.to,_=e.innerRef,O=(0,s.A)(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return a.createElement(r.XZ.Consumer,null,(function(e){e||(0,c.A)(!1);var n=w||e.location,i=p(f(E,n),n),s=i.pathname,C=s&&s.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),A=C?(0,r.B6)(n.pathname,{path:C,exact:h,sensitive:S,strict:k}):null,T=!!(g?g(A,n):A),j="function"==typeof m?m(T):m,P="function"==typeof x?x(T):x;T&&(j=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).join(" ")}(j,u),P=(0,l.A)({},P,d));var I=(0,l.A)({"aria-current":T&&o||null,className:j,style:P,to:i},O);return b!==v?I.ref=t||_:I.innerRef=_,a.createElement(y,I)}))}))},5557:(e,t,n)=>{"use strict";n.d(t,{B6:()=>x,Ix:()=>v,W6:()=>I,XZ:()=>b,dO:()=>j,qh:()=>E,zy:()=>N});var r=n(7065),o=n(758),a=n(2736),i=n.n(a),l=n(3332),s=n(5385),c=n(9451),u=n(6150),d=n.n(u),f=(n(5959),n(1522)),p=(n(1035),1073741823),m="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};var h=o.createContext||function(e,t){var n,a,l="__create-react-context-"+function(){var e="__global_unique_id__";return m[e]=(m[e]||0)+1}()+"__",s=function(e){function n(){for(var t,n,r,o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];return(t=e.call.apply(e,[this].concat(a))||this).emitter=(n=t.props.value,r=[],{on:function(e){r.push(e)},off:function(e){r=r.filter((function(t){return t!==e}))},get:function(){return n},set:function(e,t){n=e,r.forEach((function(e){return e(n,t)}))}}),t}(0,r.A)(n,e);var o=n.prototype;return o.getChildContext=function(){var e;return(e={})[l]=this.emitter,e},o.componentWillReceiveProps=function(e){if(this.props.value!==e.value){var n,r=this.props.value,o=e.value;((a=r)===(i=o)?0!==a||1/a==1/i:a!=a&&i!=i)?n=0:(n="function"==typeof t?t(r,o):p,0!==(n|=0)&&this.emitter.set(e.value,n))}var a,i},o.render=function(){return this.props.children},n}(o.Component);s.childContextTypes=((n={})[l]=i().object.isRequired,n);var c=function(t){function n(){for(var e,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(e=t.call.apply(t,[this].concat(r))||this).observedBits=void 0,e.state={value:e.getValue()},e.onUpdate=function(t,n){(0|e.observedBits)&n&&e.setState({value:e.getValue()})},e}(0,r.A)(n,t);var o=n.prototype;return o.componentWillReceiveProps=function(e){var t=e.observedBits;this.observedBits=null==t?p:t},o.componentDidMount=function(){this.context[l]&&this.context[l].on(this.onUpdate);var e=this.props.observedBits;this.observedBits=null==e?p:e},o.componentWillUnmount=function(){this.context[l]&&this.context[l].off(this.onUpdate)},o.getValue=function(){return this.context[l]?this.context[l].get():e},o.render=function(){return(e=this.props.children,Array.isArray(e)?e[0]:e)(this.state.value);var e},n}(o.Component);return c.contextTypes=((a={})[l]=i().object,a),{Provider:s,Consumer:c}},g=function(e){var t=h();return t.displayName=e,t},y=g("Router-History"),b=g("Router"),v=function(e){function t(t){var n;return(n=e.call(this,t)||this).state={location:t.history.location},n._isMounted=!1,n._pendingLocation=null,t.staticContext||(n.unlisten=t.history.listen((function(e){n._pendingLocation=e}))),n}(0,r.A)(t,e),t.computeRootMatch=function(e){return{path:"/",url:"/",params:{},isExact:"/"===e}};var n=t.prototype;return n.componentDidMount=function(){var e=this;this._isMounted=!0,this.unlisten&&this.unlisten(),this.props.staticContext||(this.unlisten=this.props.history.listen((function(t){e._isMounted&&e.setState({location:t})}))),this._pendingLocation&&this.setState({location:this._pendingLocation})},n.componentWillUnmount=function(){this.unlisten&&(this.unlisten(),this._isMounted=!1,this._pendingLocation=null)},n.render=function(){return o.createElement(b.Provider,{value:{history:this.props.history,location:this.state.location,match:t.computeRootMatch(this.state.location.pathname),staticContext:this.props.staticContext}},o.createElement(y.Provider,{children:this.props.children||null,value:this.props.history}))},t}(o.Component);o.Component;o.Component;var w={},S=1e4,k=0;function x(e,t){void 0===t&&(t={}),("string"==typeof t||Array.isArray(t))&&(t={path:t});var n=t,r=n.path,o=n.exact,a=void 0!==o&&o,i=n.strict,l=void 0!==i&&i,s=n.sensitive,c=void 0!==s&&s;return[].concat(r).reduce((function(t,n){if(!n&&""!==n)return null;if(t)return t;var r=function(e,t){var n=""+t.end+t.strict+t.sensitive,r=w[n]||(w[n]={});if(r[e])return r[e];var o=[],a={regexp:d()(e,o,t),keys:o};return k<S&&(r[e]=a,k++),a}(n,{end:a,strict:l,sensitive:c}),o=r.regexp,i=r.keys,s=o.exec(e);if(!s)return null;var u=s[0],f=s.slice(1),p=e===u;return a&&!p?null:{path:n,url:"/"===n&&""===u?"/":u,isExact:p,params:i.reduce((function(e,t,n){return e[t.name]=f[n],e}),{})}}),null)}var E=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.A)(t,e),t.prototype.render=function(){var e=this;return o.createElement(b.Consumer,null,(function(t){t||(0,s.A)(!1);var n=e.props.location||t.location,r=e.props.computedMatch?e.props.computedMatch:e.props.path?x(n.pathname,e.props):t.match,a=(0,c.A)({},t,{location:n,match:r}),i=e.props,l=i.children,u=i.component,d=i.render;return Array.isArray(l)&&function(e){return 0===o.Children.count(e)}(l)&&(l=null),o.createElement(b.Provider,{value:a},a.match?l?"function"==typeof l?l(a):l:u?o.createElement(u,a):d?d(a):null:"function"==typeof l?l(a):null)}))},t}(o.Component);function _(e){return"/"===e.charAt(0)?e:"/"+e}function O(e,t){if(!e)return t;var n=_(e);return 0!==t.pathname.indexOf(n)?t:(0,c.A)({},t,{pathname:t.pathname.substr(n.length)})}function C(e){return"string"==typeof e?e:(0,l.AO)(e)}function A(e){return function(){(0,s.A)(!1)}}function T(){}o.Component;var j=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.A)(t,e),t.prototype.render=function(){var e=this;return o.createElement(b.Consumer,null,(function(t){t||(0,s.A)(!1);var n,r,a=e.props.location||t.location;return o.Children.forEach(e.props.children,(function(e){if(null==r&&o.isValidElement(e)){n=e;var i=e.props.path||e.props.from;r=i?x(a.pathname,(0,c.A)({},e.props,{path:i})):t.match}})),r?o.cloneElement(n,{location:a,computedMatch:r}):null}))},t}(o.Component);var P=o.useContext;function I(){return P(y)}function N(){return P(b).location}},7462:(e,t,n)=>{"use strict";var r=n(758),o=Symbol.for("react.element"),a=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,l=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,a={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)i.call(t,r)&&!s.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===a[r]&&(a[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:a,_owner:l.current}}t.Fragment=a,t.jsx=c,t.jsxs=c},2713:(e,t)=>{"use strict";var n=Symbol.for("react.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),l=Symbol.for("react.provider"),s=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),p=Symbol.iterator;var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h=Object.assign,g={};function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}function b(){}function v(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=y.prototype;var w=v.prototype=new b;w.constructor=v,h(w,y.prototype),w.isPureReactComponent=!0;var S=Array.isArray,k=Object.prototype.hasOwnProperty,x={current:null},E={key:!0,ref:!0,__self:!0,__source:!0};function _(e,t,r){var o,a={},i=null,l=null;if(null!=t)for(o in void 0!==t.ref&&(l=t.ref),void 0!==t.key&&(i=""+t.key),t)k.call(t,o)&&!E.hasOwnProperty(o)&&(a[o]=t[o]);var s=arguments.length-2;if(1===s)a.children=r;else if(1<s){for(var c=Array(s),u=0;u<s;u++)c[u]=arguments[u+2];a.children=c}if(e&&e.defaultProps)for(o in s=e.defaultProps)void 0===a[o]&&(a[o]=s[o]);return{$$typeof:n,type:e,key:i,ref:l,props:a,_owner:x.current}}function O(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var C=/\/+/g;function A(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(e,t,o,a,i){var l=typeof e;"undefined"!==l&&"boolean"!==l||(e=null);var s=!1;if(null===e)s=!0;else switch(l){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case n:case r:s=!0}}if(s)return i=i(s=e),e=""===a?"."+A(s,0):a,S(i)?(o="",null!=e&&(o=e.replace(C,"$&/")+"/"),T(i,t,o,"",(function(e){return e}))):null!=i&&(O(i)&&(i=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,o+(!i.key||s&&s.key===i.key?"":(""+i.key).replace(C,"$&/")+"/")+e)),t.push(i)),1;if(s=0,a=""===a?".":a+":",S(e))for(var c=0;c<e.length;c++){var u=a+A(l=e[c],c);s+=T(l,t,o,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=p&&e[p]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),c=0;!(l=e.next()).done;)s+=T(l=l.value,t,o,u=a+A(l,c++),i);else if("object"===l)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return s}function j(e,t,n){if(null==e)return e;var r=[],o=0;return T(e,r,"","",(function(e){return t.call(n,e,o++)})),r}function P(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var I={current:null},N={transition:null},R={ReactCurrentDispatcher:I,ReactCurrentBatchConfig:N,ReactCurrentOwner:x};function L(){throw Error("act(...) is not supported in production builds of React.")}t.Children={map:j,forEach:function(e,t,n){j(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return j(e,(function(){t++})),t},toArray:function(e){return j(e,(function(e){return e}))||[]},only:function(e){if(!O(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=y,t.Fragment=o,t.Profiler=i,t.PureComponent=v,t.StrictMode=a,t.Suspense=u,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=R,t.act=L,t.cloneElement=function(e,t,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o=h({},e.props),a=e.key,i=e.ref,l=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,l=x.current),void 0!==t.key&&(a=""+t.key),e.type&&e.type.defaultProps)var s=e.type.defaultProps;for(c in t)k.call(t,c)&&!E.hasOwnProperty(c)&&(o[c]=void 0===t[c]&&void 0!==s?s[c]:t[c])}var c=arguments.length-2;if(1===c)o.children=r;else if(1<c){s=Array(c);for(var u=0;u<c;u++)s[u]=arguments[u+2];o.children=s}return{$$typeof:n,type:e.type,key:a,ref:i,props:o,_owner:l}},t.createContext=function(e){return(e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:l,_context:e},e.Consumer=e},t.createElement=_,t.createFactory=function(e){var t=_.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:c,render:e}},t.isValidElement=O,t.lazy=function(e){return{$$typeof:f,_payload:{_status:-1,_result:e},_init:P}},t.memo=function(e,t){return{$$typeof:d,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=N.transition;N.transition={};try{e()}finally{N.transition=t}},t.unstable_act=L,t.useCallback=function(e,t){return I.current.useCallback(e,t)},t.useContext=function(e){return I.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return I.current.useDeferredValue(e)},t.useEffect=function(e,t){return I.current.useEffect(e,t)},t.useId=function(){return I.current.useId()},t.useImperativeHandle=function(e,t,n){return I.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return I.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return I.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return I.current.useMemo(e,t)},t.useReducer=function(e,t,n){return I.current.useReducer(e,t,n)},t.useRef=function(e){return I.current.useRef(e)},t.useState=function(e){return I.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return I.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return I.current.useTransition()},t.version="18.3.1"},758:(e,t,n)=>{"use strict";e.exports=n(2713)},6070:(e,t,n)=>{"use strict";e.exports=n(7462)},4733:(e,t)=>{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var r=n-1>>>1,o=e[r];if(!(0<a(o,t)))break e;e[r]=t,e[n]=o,n=r}}function r(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,o=e.length,i=o>>>1;r<i;){var l=2*(r+1)-1,s=e[l],c=l+1,u=e[c];if(0>a(s,n))c<o&&0>a(u,s)?(e[r]=u,e[c]=n,r=c):(e[r]=s,e[l]=n,r=l);else{if(!(c<o&&0>a(u,n)))break e;e[r]=u,e[c]=n,r=c}}}return t}function a(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var l=Date,s=l.now();t.unstable_now=function(){return l.now()-s}}var c=[],u=[],d=1,f=null,p=3,m=!1,h=!1,g=!1,y="function"==typeof setTimeout?setTimeout:null,b="function"==typeof clearTimeout?clearTimeout:null,v="undefined"!=typeof setImmediate?setImmediate:null;function w(e){for(var t=r(u);null!==t;){if(null===t.callback)o(u);else{if(!(t.startTime<=e))break;o(u),t.sortIndex=t.expirationTime,n(c,t)}t=r(u)}}function S(e){if(g=!1,w(e),!h)if(null!==r(c))h=!0,N(k);else{var t=r(u);null!==t&&R(S,t.startTime-e)}}function k(e,n){h=!1,g&&(g=!1,b(O),O=-1),m=!0;var a=p;try{for(w(n),f=r(c);null!==f&&(!(f.expirationTime>n)||e&&!T());){var i=f.callback;if("function"==typeof i){f.callback=null,p=f.priorityLevel;var l=i(f.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?f.callback=l:f===r(c)&&o(c),w(n)}else o(c);f=r(c)}if(null!==f)var s=!0;else{var d=r(u);null!==d&&R(S,d.startTime-n),s=!1}return s}finally{f=null,p=a,m=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var x,E=!1,_=null,O=-1,C=5,A=-1;function T(){return!(t.unstable_now()-A<C)}function j(){if(null!==_){var e=t.unstable_now();A=e;var n=!0;try{n=_(!0,e)}finally{n?x():(E=!1,_=null)}}else E=!1}if("function"==typeof v)x=function(){v(j)};else if("undefined"!=typeof MessageChannel){var P=new MessageChannel,I=P.port2;P.port1.onmessage=j,x=function(){I.postMessage(null)}}else x=function(){y(j,0)};function N(e){_=e,E||(E=!0,x())}function R(e,n){O=y((function(){e(t.unstable_now())}),n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){h||m||(h=!0,N(k))},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):C=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return p},t.unstable_getFirstCallbackNode=function(){return r(c)},t.unstable_next=function(e){switch(p){case 1:case 2:case 3:var t=3;break;default:t=p}var n=p;p=t;try{return e()}finally{p=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=p;p=e;try{return t()}finally{p=n}},t.unstable_scheduleCallback=function(e,o,a){var i=t.unstable_now();switch("object"==typeof a&&null!==a?a="number"==typeof(a=a.delay)&&0<a?i+a:i:a=i,e){case 1:var l=-1;break;case 2:l=250;break;case 5:l=1073741823;break;case 4:l=1e4;break;default:l=5e3}return e={id:d++,callback:o,priorityLevel:e,startTime:a,expirationTime:l=a+l,sortIndex:-1},a>i?(e.sortIndex=a,n(u,e),null===r(c)&&e===r(u)&&(g?(b(O),O=-1):g=!0,R(S,a-i))):(e.sortIndex=l,n(c,e),h||m||(h=!0,N(k))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=p;return function(){var n=p;p=t;try{return e.apply(this,arguments)}finally{p=n}}}},1896:(e,t,n)=>{"use strict";e.exports=n(4733)},2945:e=>{e.exports=function(e,t,n,r){var o=n?n.call(r,e,t):void 0;if(void 0!==o)return!!o;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var a=Object.keys(e),i=Object.keys(t);if(a.length!==i.length)return!1;for(var l=Object.prototype.hasOwnProperty.bind(t),s=0;s<a.length;s++){var c=a[s];if(!l(c))return!1;var u=e[c],d=t[c];if(!1===(o=n?n.call(r,u,d,c):void 0)||void 0===o&&u!==d)return!1}return!0}},4784:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>r});const r={title:"Calimero 2.0",tagline:"Calimero Network is a framework which enables building fully decentralized applications, ensuring everyone's data privacy.",favicon:"img/favicon.ico",url:"https://calimero-network.github.io",baseUrl:"/",organizationName:"calimero-network",projectName:"calimero-2.0",onBrokenLinks:"throw",onBrokenMarkdownLinks:"warn",i18n:{defaultLocale:"en",locales:["en"],path:"i18n",localeConfigs:{}},headTags:[{tagName:"script",attributes:{"data-collect-dnt":"true",src:"https://scripts.simpleanalyticscdn.com/latest.js",async:"async",defer:"defer"}}],presets:[["classic",{docs:{sidebarPath:"./sidebars.ts",routeBasePath:"/",breadcrumbs:!0,showLastUpdateTime:!0},blog:!1,theme:{customCss:"./src/css/custom.scss"}}]],plugins:["docusaurus-plugin-sass"],themeConfig:{colorMode:{disableSwitch:!1,defaultMode:"dark",respectPrefersColorScheme:!0},announcementBar:{id:"id-0002",content:'**\ud83c\udf89 Come check <a href="https://www.calimero.network/">our new website</a> \ud83c\udf89**',backgroundColor:"#247E80",textColor:"#fff",isCloseable:!0},docs:{sidebar:{hideable:!0,autoCollapseCategories:!1},versionPersistence:"localStorage"},navbar:{style:"dark",logo:{alt:"Calimero Network",src:"img/logo.svg"},items:[{to:"/explore/intro",position:"left",label:"Explore"},{to:"/learn/architecture",position:"left",label:"Learn"},{to:"/build/quickstart",position:"left",label:"Build"},{to:"/contribute/github",position:"left",label:"Contribute"},{to:"/resources/community-and-support",position:"left",label:"Resources"},{to:"/getting-started/setup",position:"right",label:"Getting started"},{type:"search",position:"right"},{href:"https://github.com/calimero-network/core",label:"GitHub",position:"right"}],hideOnScroll:!1},footer:{style:"dark",copyright:"Copyright \xa9 2024 Calimero Limited LLC.",links:[]},prism:{theme:{plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},darkTheme:{plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},additionalLanguages:["bash","toml"],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},algolia:{appId:"W1H5P6IW4T",apiKey:"f18239c312d6cc30d128a382d330278d",indexName:"calimero-networkio",contextualSearch:!0,searchPagePath:"search",searchParameters:{clickAnalytics:!0,analytics:!0,enableReRanking:!0,attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","type","url","title","description","headers","headersLevels"]},insights:!0},blog:{sidebar:{groupByYear:!0}},metadata:[],tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},baseUrlIssueBanner:!0,future:{experimental_storage:{type:"localStorage",namespace:!1},experimental_router:"browser"},onBrokenAnchors:"warn",onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},themes:[],scripts:[],stylesheets:[],clientModules:[],titleDelimiter:"|",noIndex:!1,markdown:{format:"mdx",mermaid:!1,mdx1Compat:{comments:!0,admonitions:!0,headingIds:!0},anchors:{maintainCase:!1}}}},9451:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(null,arguments)}n.d(t,{A:()=>r})},7065:(e,t,n)=>{"use strict";function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}function o(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,r(e,t)}n.d(t,{A:()=>o})},1522:(e,t,n)=>{"use strict";function r(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;n[r]=e[r]}return n}n.d(t,{A:()=>r})},3526:(e,t,n)=>{"use strict";function r(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=r(e[t]))&&(o&&(o+=" "),o+=n)}else for(n in e)e[n]&&(o&&(o+=" "),o+=n);return o}n.d(t,{A:()=>o});const o=function(){for(var e,t,n=0,o="",a=arguments.length;n<a;n++)(e=arguments[n])&&(t=r(e))&&(o&&(o+=" "),o+=t);return o}},3477:(e,t,n)=>{"use strict";n.d(t,{My:()=>S,f4:()=>K});var r,o,a=n(758),i=n(3526),l=Object.create,s=Object.defineProperty,c=Object.defineProperties,u=Object.getOwnPropertyDescriptor,d=Object.getOwnPropertyDescriptors,f=Object.getOwnPropertyNames,p=Object.getOwnPropertySymbols,m=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty,g=Object.prototype.propertyIsEnumerable,y=(e,t,n)=>t in e?s(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,b=(e,t)=>{for(var n in t||(t={}))h.call(t,n)&&y(e,n,t[n]);if(p)for(var n of p(t))g.call(t,n)&&y(e,n,t[n]);return e},v=(e,t)=>c(e,d(t)),w=(e,t)=>{var n={};for(var r in e)h.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&p)for(var r of p(e))t.indexOf(r)<0&&g.call(e,r)&&(n[r]=e[r]);return n},S=((e,t,n)=>(n=null!=e?l(m(e)):{},((e,t,n,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let o of f(t))h.call(e,o)||o===n||s(e,o,{get:()=>t[o],enumerable:!(r=u(t,o))||r.enumerable});return e})(!t&&e&&e.__esModule?n:s(n,"default",{value:e,enumerable:!0}),e)))((r={"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js"(e,t){var n=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof o?new o(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++t}),e.__id},clone:function e(t,n){var o,a;switch(n=n||{},r.util.type(t)){case"Object":if(a=r.util.objId(t),n[a])return n[a];for(var i in o={},n[a]=o,t)t.hasOwnProperty(i)&&(o[i]=e(t[i],n));return o;case"Array":return a=r.util.objId(t),n[a]?n[a]:(o=[],n[a]=o,t.forEach((function(t,r){o[r]=e(t,n)})),o);default:return t}},getLanguage:function(t){for(;t;){var n=e.exec(t.className);if(n)return n[1].toLowerCase();t=t.parentElement}return"none"},setLanguage:function(t,n){t.className=t.className.replace(RegExp(e,"gi"),""),t.classList.add("language-"+n)},isActive:function(e,t,n){for(var r="no-"+t;e;){var o=e.classList;if(o.contains(t))return!0;if(o.contains(r))return!1;e=e.parentElement}return!!n}},languages:{plain:n,plaintext:n,text:n,txt:n,extend:function(e,t){var n=r.util.clone(r.languages[e]);for(var o in t)n[o]=t[o];return n},insertBefore:function(e,t,n,o){var a=(o=o||r.languages)[e],i={};for(var l in a)if(a.hasOwnProperty(l)){if(l==t)for(var s in n)n.hasOwnProperty(s)&&(i[s]=n[s]);n.hasOwnProperty(l)||(i[l]=a[l])}var c=o[e];return o[e]=i,r.languages.DFS(r.languages,(function(t,n){n===c&&t!=e&&(this[t]=i)})),i},DFS:function e(t,n,o,a){a=a||{};var i=r.util.objId;for(var l in t)if(t.hasOwnProperty(l)){n.call(t,l,t[l],o||l);var s=t[l],c=r.util.type(s);"Object"!==c||a[i(s)]?"Array"!==c||a[i(s)]||(a[i(s)]=!0,e(s,n,l,a)):(a[i(s)]=!0,e(s,n,null,a))}}},plugins:{},highlight:function(e,t,n){var a={code:e,grammar:t,language:n};if(r.hooks.run("before-tokenize",a),!a.grammar)throw new Error('The language "'+a.language+'" has no grammar.');return a.tokens=r.tokenize(a.code,a.grammar),r.hooks.run("after-tokenize",a),o.stringify(r.util.encode(a.tokens),a.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var o=new l;return s(o,o.head,e),i(e,o,t,o.head,0),function(e){for(var t=[],n=e.head.next;n!==e.tail;)t.push(n.value),n=n.next;return t}(o)},hooks:{all:{},add:function(e,t){var n=r.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=r.hooks.all[e];if(n&&n.length)for(var o,a=0;o=n[a++];)o(t)}},Token:o};function o(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length}function a(e,t,n,r){e.lastIndex=t;var o=e.exec(n);if(o&&r&&o[1]){var a=o[1].length;o.index+=a,o[0]=o[0].slice(a)}return o}function i(e,t,n,l,u,d){for(var f in n)if(n.hasOwnProperty(f)&&n[f]){var p=n[f];p=Array.isArray(p)?p:[p];for(var m=0;m<p.length;++m){if(d&&d.cause==f+","+m)return;var h=p[m],g=h.inside,y=!!h.lookbehind,b=!!h.greedy,v=h.alias;if(b&&!h.pattern.global){var w=h.pattern.toString().match(/[imsuy]*$/)[0];h.pattern=RegExp(h.pattern.source,w+"g")}for(var S=h.pattern||h,k=l.next,x=u;k!==t.tail&&!(d&&x>=d.reach);x+=k.value.length,k=k.next){var E=k.value;if(t.length>e.length)return;if(!(E instanceof o)){var _,O=1;if(b){if(!(_=a(S,x,e,y))||_.index>=e.length)break;var C=_.index,A=_.index+_[0].length,T=x;for(T+=k.value.length;C>=T;)T+=(k=k.next).value.length;if(x=T-=k.value.length,k.value instanceof o)continue;for(var j=k;j!==t.tail&&(T<A||"string"==typeof j.value);j=j.next)O++,T+=j.value.length;O--,E=e.slice(x,T),_.index-=x}else if(!(_=a(S,0,E,y)))continue;C=_.index;var P=_[0],I=E.slice(0,C),N=E.slice(C+P.length),R=x+E.length;d&&R>d.reach&&(d.reach=R);var L=k.prev;if(I&&(L=s(t,L,I),x+=I.length),c(t,L,O),k=s(t,L,new o(f,g?r.tokenize(P,g):P,v,P)),N&&s(t,k,N),O>1){var D={cause:f+","+m,reach:R};i(e,t,n,k.prev,x,D),d&&D.reach>d.reach&&(d.reach=D.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function s(e,t,n){var r=t.next,o={value:n,prev:t,next:r};return t.next=o,r.prev=o,e.length++,o}function c(e,t,n){for(var r=t.next,o=0;o<n&&r!==e.tail;o++)r=r.next;t.next=r,r.prev=t,e.length-=o}return o.stringify=function e(t,n){if("string"==typeof t)return t;if(Array.isArray(t)){var o="";return t.forEach((function(t){o+=e(t,n)})),o}var a={type:t.type,content:e(t.content,n),tag:"span",classes:["token",t.type],attributes:{},language:n},i=t.alias;i&&(Array.isArray(i)?Array.prototype.push.apply(a.classes,i):a.classes.push(i)),r.hooks.run("wrap",a);var l="";for(var s in a.attributes)l+=" "+s+'="'+(a.attributes[s]||"").replace(/"/g,""")+'"';return"<"+a.tag+' class="'+a.classes.join(" ")+'"'+l+">"+a.content+"</"+a.tag+">"},r}();t.exports=n,n.default=n}},function(){return o||(0,r[f(r)[0]])((o={exports:{}}).exports,o),o.exports})());S.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},S.languages.markup.tag.inside["attr-value"].inside.entity=S.languages.markup.entity,S.languages.markup.doctype.inside["internal-subset"].inside=S.languages.markup,S.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(S.languages.markup.tag,"addInlined",{value:function(e,t){var n;(t=((n=((n={})["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:S.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i,{"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}}))["language-"+t]={pattern:/[\s\S]+/,inside:S.languages[t]},{}))[e]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},S.languages.insertBefore("markup","cdata",t)}}),Object.defineProperty(S.languages.markup.tag,"addAttribute",{value:function(e,t){S.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:S.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),S.languages.html=S.languages.markup,S.languages.mathml=S.languages.markup,S.languages.svg=S.languages.markup,S.languages.xml=S.languages.extend("markup",{}),S.languages.ssml=S.languages.xml,S.languages.atom=S.languages.xml,S.languages.rss=S.languages.xml,function(e){var t={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},n=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,r="(?:[^\\\\-]|"+n.source+")",o=(r=RegExp(r+"-"+r),{pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"});e.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:r,inside:{escape:n,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":t,"char-set":{pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},escape:n}},"special-escape":t,"char-set":{pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":o}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:n,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,alias:"punctuation",inside:{"group-name":o}},{pattern:/\)/,alias:"punctuation"}],quantifier:{pattern:/(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/,alias:"number"},alternation:{pattern:/\|/,alias:"keyword"}}}(S),S.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},S.languages.javascript=S.languages.extend("clike",{"class-name":[S.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),S.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,S.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:S.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:S.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:S.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:S.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:S.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),S.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:S.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),S.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),S.languages.markup&&(S.languages.markup.tag.addInlined("script","javascript"),S.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),S.languages.js=S.languages.javascript,S.languages.actionscript=S.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<<?|>>?>?|[!=]=?)=?|[~?@]/}),S.languages.actionscript["class-name"].alias="function",delete S.languages.actionscript.parameter,delete S.languages.actionscript["literal-property"],S.languages.markup&&S.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:S.languages.markup}}),function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(S),function(e){var t=e.languages.javadoclike={parameter:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};Object.defineProperty(t,"addSupport",{value:function(t,n){(t="string"==typeof t?[t]:t).forEach((function(t){var r=function(e){e.inside||(e.inside={}),e.inside.rest=n},o="doc-comment";if(a=e.languages[t]){var a,i=a[o];if((i=i||(a=e.languages.insertBefore(t,"comment",{"doc-comment":{pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,lookbehind:!0,alias:"comment"}}))[o])instanceof RegExp&&(i=a[o]={pattern:i}),Array.isArray(i))for(var l=0,s=i.length;l<s;l++)i[l]instanceof RegExp&&(i[l]={pattern:i[l]}),r(i[l]);else r(i)}}))}}),t.addSupport(["java","javascript","php"],t)}(S),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;(t=(e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css,e.languages.markup))&&(t.tag.addInlined("style","css"),t.tag.addAttribute("style","css"))}(S),function(e){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,n=(t=(e.languages.css.selector={pattern:e.languages.css.selector.pattern,lookbehind:!0,inside:t={"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-\w]+/,id:/#[-\w]+/,attribute:{pattern:RegExp("\\[(?:[^[\\]\"']|"+t.source+")*\\]"),greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},"attr-name":{pattern:/^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,lookbehind:!0},"attr-value":[t,{pattern:/(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],combinator:/>|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}}),{pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0}),{pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0});e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,number:n})}(S),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",o=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),a=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<value>>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<key>>/g,(function(){return"(?:"+o+"|"+a+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:i(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:i(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:i(a),lookbehind:!0,greedy:!0},number:{pattern:i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(S),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(/<inner>/g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,o=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),a=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source,i=(e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+o+a+"(?:"+o+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+o+a+")(?:"+o+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+o+")"+a+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+o+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n<r;n++){var o,a=t[n];"code"!==a.type?e(a.content):(o=a.content[1],a=a.content[3],o&&a&&"code-language"===o.type&&"code-block"===a.type&&"string"==typeof o.content&&(o=o.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),o="language-"+(o=(/[a-z][\w-]*/i.exec(o)||[""])[0].toLowerCase()),a.alias?"string"==typeof a.alias?a.alias=[a.alias,o]:a.alias.push(o):a.alias=[o]))}}(e.tokens)})),e.hooks.add("wrap",(function(t){if("code-block"===t.type){for(var n="",r=0,o=t.classes.length;r<o;r++){var a=t.classes[r];if(a=/language-(.+)/.exec(a)){n=a[1];break}}var c,u=e.languages[n];u?t.content=e.highlight(t.content.replace(i,"").replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,(function(e,t){var n;return"#"===(t=t.toLowerCase())[0]?(n="x"===t[1]?parseInt(t.slice(2),16):Number(t.slice(1)),s(n)):l[t]||e})),u,n):n&&"none"!==n&&e.plugins.autoloader&&(c="md-"+(new Date).valueOf()+"-"+Math.floor(1e16*Math.random()),t.attributes.id=c,e.plugins.autoloader.loadLanguages(n,(function(){var t=document.getElementById(c);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))})))}})),RegExp(e.languages.markup.tag.pattern.source,"gi")),l={amp:"&",lt:"<",gt:">",quot:'"'},s=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(S),S.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:S.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},S.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n<t.length;){var r=t[n++];if("keyword"===r.type&&"mutation"===r.content){var o=[];if(d(["definition-mutation","punctuation"])&&"("===u(1).content){n+=2;var a=f(/^\($/,/^\)$/);if(-1===a)continue;for(;n<a;n++){var i=u(0);"variable"===i.type&&(p(i,"variable-input"),o.push(i.content))}n=a+1}if(d(["punctuation","property-query"])&&"{"===u(0).content&&(n++,p(u(0),"property-mutation"),0<o.length)){var l=f(/^\{$/,/^\}$/);if(-1!==l)for(var s=n;s<l;s++){var c=t[s];"variable"===c.type&&0<=o.indexOf(c.content)&&p(c,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n<e.length;n++){var r=u(n+t);if(!r||r.type!==e[n])return}return 1}function f(e,r){for(var o=1,a=n;a<t.length;a++){var i=t[a],l=i.content;if("punctuation"===i.type&&"string"==typeof l)if(e.test(l))o++;else if(r.test(l)&&0==--o)return a}return-1}function p(e,t){var n=e.alias;n?Array.isArray(n)||(e.alias=n=[n]):e.alias=n=[],n.push(t)}})),S.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,o=r.inside["interpolation-punctuation"],a=r.pattern.source;function i(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function l(t,n,r){return t={code:t,grammar:n,language:r},e.hooks.run("before-tokenize",t),t.tokens=e.tokenize(t.code,t.grammar),e.hooks.run("after-tokenize",t),t.tokens}function s(t,n,i){var s=e.tokenize(t,{interpolation:{pattern:RegExp(a),lookbehind:!0}}),c=0,u={},d=(s=l(s.map((function(e){if("string"==typeof e)return e;var n,r;for(e=e.content;-1!==t.indexOf((r=c++,n="___"+i.toUpperCase()+"_"+r+"___")););return u[n]=e,n})).join(""),n,i),Object.keys(u));return c=0,function t(n){for(var a=0;a<n.length;a++){if(c>=d.length)return;var i,s,f,p,m,h,g,y=n[a];"string"==typeof y||"string"==typeof y.content?(i=d[c],-1!==(g=(h="string"==typeof y?y:y.content).indexOf(i))&&(++c,s=h.substring(0,g),m=u[i],f=void 0,(p={})["interpolation-punctuation"]=o,3===(p=e.tokenize(m,p)).length&&((f=[1,1]).push.apply(f,l(p[1],e.languages.javascript,"javascript")),p.splice.apply(p,f)),f=new e.Token("interpolation",p,r.alias,m),p=h.substring(g+i.length),m=[],s&&m.push(s),m.push(f),p&&(t(h=[p]),m.push.apply(m,h)),"string"==typeof y?(n.splice.apply(n,[a,1].concat(m)),a+=m.length-1):y.content=m)):(g=y.content,Array.isArray(g)?t(g):t([g]))}}(s),new e.Token(i,s,"language-"+i,t)}e.languages.javascript["template-string"]=[i("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),i("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),i("svg",/\bsvg/.source),i("markdown",/\b(?:markdown|md)/.source),i("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),i("sql",/\bsql/.source),t].filter(Boolean);var c={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function u(e){return"string"==typeof e?e:Array.isArray(e)?e.map(u).join(""):u(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in c&&function t(n){for(var r=0,o=n.length;r<o;r++){var a,i,l,c=n[r];"string"!=typeof c&&(a=c.content,Array.isArray(a)?"template-string"===c.type?(c=a[1],3===a.length&&"string"!=typeof c&&"embedded-code"===c.type&&(i=u(c),c=c.alias,c=Array.isArray(c)?c[0]:c,l=e.languages[c])&&(a[1]=s(i,l,c))):t(a):"string"!=typeof a&&t([a]))}}(t.tokens)}))}(S),function(e){e.languages.typescript=e.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(S),function(e){var t=e.languages.javascript,n=/\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source,r="(@(?:arg|argument|param|property)\\s+(?:"+n+"\\s+)?)";e.languages.jsdoc=e.languages.extend("javadoclike",{parameter:{pattern:RegExp(r+/(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),e.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(r+/\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:t,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:<TYPE>\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(/<TYPE>/g,(function(){return n}))),lookbehind:!0,inside:{punctuation:/\./}},{pattern:RegExp("(@[a-z]+\\s+)"+n),lookbehind:!0,inside:{string:t.string,number:t.number,boolean:t.boolean,keyword:e.languages.typescript.keyword,operator:/=>|\.\.\.|[&|?:*]/,punctuation:/[.,;=<>{}()[\]]/}}],example:{pattern:/(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^([\t ]*(?:\*\s*)?)\S.*$/m,lookbehind:!0,inside:t,alias:"language-javascript"}}}}),e.languages.javadoclike.addSupport("javascript",e.languages.jsdoc)}(S),function(e){e.languages.flow=e.languages.extend("javascript",{}),e.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,alias:"class-name"}]}),e.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete e.languages.flow.parameter,e.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(e.languages.flow.keyword)||(e.languages.flow.keyword=[e.languages.flow.keyword]),e.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(S),S.languages.n4js=S.languages.extend("javascript",{keyword:/\b(?:Array|any|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),S.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),S.languages.n4jsd=S.languages.n4js,function(e){function t(e,t){return RegExp(e.replace(/<ID>/g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:<ID>(?:\s*,\s*(?:\*\s*as\s+<ID>|\{[^{}]*\}))?|\*\s*as\s+<ID>|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+<ID>)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?<ID>/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],r=0;r<n.length;r++){var o=n[r],a=e.languages.javascript[o];o=(a="RegExp"===e.util.type(a)?e.languages.javascript[o]={pattern:a}:a).inside||{};(a.inside=o)["maybe-class-name"]=/^[A-Z][\s\S]*/}}(S),function(e){var t=e.util.clone(e.languages.javascript),n=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,r=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,o=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function a(e,t){return e=e.replace(/<S>/g,(function(){return n})).replace(/<BRACES>/g,(function(){return r})).replace(/<SPREAD>/g,(function(){return o})),RegExp(e,t)}function i(t){for(var n=[],r=0;r<t.length;r++){var o=t[r],a=!1;"string"!=typeof o&&("tag"===o.type&&o.content[0]&&"tag"===o.content[0].type?"</"===o.content[0].content[0].content?0<n.length&&n[n.length-1].tagName===l(o.content[0].content[1])&&n.pop():"/>"!==o.content[o.content.length-1].content&&n.push({tagName:l(o.content[0].content[1]),openedBraces:0}):0<n.length&&"punctuation"===o.type&&"{"===o.content?n[n.length-1].openedBraces++:0<n.length&&0<n[n.length-1].openedBraces&&"punctuation"===o.type&&"}"===o.content?n[n.length-1].openedBraces--:a=!0),(a||"string"==typeof o)&&0<n.length&&0===n[n.length-1].openedBraces&&(a=l(o),r<t.length-1&&("string"==typeof t[r+1]||"plain-text"===t[r+1].type)&&(a+=l(t[r+1]),t.splice(r+1,1)),0<r&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(a=l(t[r-1])+a,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",a,null,a)),o.content&&"string"!=typeof o.content&&i(o.content)}}o=a(o).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=a(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:a(/<SPREAD>/.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:a(/=<BRACES>/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var l=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(l).join(""):""};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||i(e.tokens)}))}(S),function(e){var t=e.util.clone(e.languages.typescript);(t=(e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"],e.languages.tsx.tag)).pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+t.pattern.source+")",t.pattern.flags),t.lookbehind=!0}(S),S.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+/(?:elseif|if)\b/.source+"(?:[ \t]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},S.languages.swift["string-literal"].forEach((function(e){e.inside.interpolation.inside=S.languages.swift})),function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin}(S),S.languages.c=S.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),S.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),S.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},S.languages.c.string],char:S.languages.c.char,comment:S.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:S.languages.c}}}}),S.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete S.languages.c.boolean,S.languages.objectivec=S.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete S.languages.objectivec["class-name"],S.languages.objc=S.languages.objectivec,S.languages.reason=S.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),S.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete S.languages.reason.function,function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,n=0;n<2;n++)t=t.replace(/<self>/g,(function(){return t}));t=t.replace(/<self>/g,(function(){return/[^\s\S]/.source})),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}(S),S.languages.go=S.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),S.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete S.languages.go["class-name"],function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(S),S.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},S.languages.python["string-interpolation"].inside.interpolation.inside.rest=S.languages.python,S.languages.py=S.languages.python;((e,t)=>{for(var n in t)s(e,n,{get:t[n],enumerable:!0})})({},{dracula:()=>k,duotoneDark:()=>x,duotoneLight:()=>E,github:()=>_,jettwaveDark:()=>F,jettwaveLight:()=>z,nightOwl:()=>O,nightOwlLight:()=>C,oceanicNext:()=>j,okaidia:()=>P,oneDark:()=>B,oneLight:()=>$,palenight:()=>I,shadesOfPurple:()=>N,synthwave84:()=>R,ultramin:()=>L,vsDark:()=>D,vsLight:()=>M});var k={plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},x={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]},E={plain:{backgroundColor:"#faf8f5",color:"#728fcb"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#b6ad9a"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#063289"}},{types:["property","function"],style:{color:"#b29762"}},{types:["tag-id","selector","atrule-id"],style:{color:"#2d2006"}},{types:["attr-name"],style:{color:"#896724"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule"],style:{color:"#728fcb"}},{types:["placeholder","variable"],style:{color:"#93abdc"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#896724"}}]},_={plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},O={plain:{color:"#d6deeb",backgroundColor:"#011627"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(99, 119, 119)",fontStyle:"italic"}},{types:["string","url"],style:{color:"rgb(173, 219, 103)"}},{types:["variable"],style:{color:"rgb(214, 222, 235)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation"],style:{color:"rgb(199, 146, 234)"}},{types:["selector","doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(255, 203, 139)"}},{types:["tag","operator","keyword"],style:{color:"rgb(127, 219, 202)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["property"],style:{color:"rgb(128, 203, 196)"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}}]},C={plain:{color:"#403f53",backgroundColor:"#FBFBFB"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(72, 118, 214)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(152, 159, 177)",fontStyle:"italic"}},{types:["string","builtin","char","constant","url"],style:{color:"rgb(72, 118, 214)"}},{types:["variable"],style:{color:"rgb(201, 103, 101)"}},{types:["number"],style:{color:"rgb(170, 9, 130)"}},{types:["punctuation"],style:{color:"rgb(153, 76, 195)"}},{types:["function","selector","doctype"],style:{color:"rgb(153, 76, 195)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(17, 17, 17)"}},{types:["tag"],style:{color:"rgb(153, 76, 195)"}},{types:["operator","property","keyword","namespace"],style:{color:"rgb(12, 150, 155)"}},{types:["boolean"],style:{color:"rgb(188, 84, 84)"}}]},A="#c5a5c5",T="#8dc891",j={plain:{backgroundColor:"#282c34",color:"#ffffff"},styles:[{types:["attr-name"],style:{color:A}},{types:["attr-value"],style:{color:T}},{types:["comment","block-comment","prolog","doctype","cdata","shebang"],style:{color:"#999999"}},{types:["property","number","function-name","constant","symbol","deleted"],style:{color:"#5a9bcf"}},{types:["boolean"],style:{color:"#ff8b50"}},{types:["tag"],style:{color:"#fc929e"}},{types:["string"],style:{color:T}},{types:["punctuation"],style:{color:T}},{types:["selector","char","builtin","inserted"],style:{color:"#D8DEE9"}},{types:["function"],style:{color:"#79b6f2"}},{types:["operator","entity","url","variable"],style:{color:"#d7deea"}},{types:["keyword"],style:{color:A}},{types:["atrule","class-name"],style:{color:"#FAC863"}},{types:["important"],style:{fontWeight:"400"}},{types:["bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}}]},P={plain:{color:"#f8f8f2",backgroundColor:"#272822"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"#f92672",fontStyle:"italic"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"#8292a2",fontStyle:"italic"}},{types:["string","url"],style:{color:"#a6e22e"}},{types:["variable"],style:{color:"#f8f8f2"}},{types:["number"],style:{color:"#ae81ff"}},{types:["builtin","char","constant","function","class-name"],style:{color:"#e6db74"}},{types:["punctuation"],style:{color:"#f8f8f2"}},{types:["selector","doctype"],style:{color:"#a6e22e",fontStyle:"italic"}},{types:["tag","operator","keyword"],style:{color:"#66d9ef"}},{types:["boolean"],style:{color:"#ae81ff"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)",opacity:.7}},{types:["tag","property"],style:{color:"#f92672"}},{types:["attr-name"],style:{color:"#a6e22e !important"}},{types:["doctype"],style:{color:"#8292a2"}},{types:["rule"],style:{color:"#e6db74"}}]},I={plain:{color:"#bfc7d5",backgroundColor:"#292d3e"},styles:[{types:["comment"],style:{color:"rgb(105, 112, 152)",fontStyle:"italic"}},{types:["string","inserted"],style:{color:"rgb(195, 232, 141)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation","selector"],style:{color:"rgb(199, 146, 234)"}},{types:["variable"],style:{color:"rgb(191, 199, 213)"}},{types:["class-name","attr-name"],style:{color:"rgb(255, 203, 107)"}},{types:["tag","deleted"],style:{color:"rgb(255, 85, 114)"}},{types:["operator"],style:{color:"rgb(137, 221, 255)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["keyword"],style:{fontStyle:"italic"}},{types:["doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}},{types:["url"],style:{color:"rgb(221, 221, 221)"}}]},N={plain:{color:"#9EFEFF",backgroundColor:"#2D2A55"},styles:[{types:["changed"],style:{color:"rgb(255, 238, 128)"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)"}},{types:["comment"],style:{color:"rgb(179, 98, 255)",fontStyle:"italic"}},{types:["punctuation"],style:{color:"rgb(255, 255, 255)"}},{types:["constant"],style:{color:"rgb(255, 98, 140)"}},{types:["string","url"],style:{color:"rgb(165, 255, 144)"}},{types:["variable"],style:{color:"rgb(255, 238, 128)"}},{types:["number","boolean"],style:{color:"rgb(255, 98, 140)"}},{types:["attr-name"],style:{color:"rgb(255, 180, 84)"}},{types:["keyword","operator","property","namespace","tag","selector","doctype"],style:{color:"rgb(255, 157, 0)"}},{types:["builtin","char","constant","function","class-name"],style:{color:"rgb(250, 208, 0)"}}]},R={plain:{backgroundColor:"linear-gradient(to bottom, #2a2139 75%, #34294f)",backgroundImage:"#34294f",color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"},styles:[{types:["comment","block-comment","prolog","doctype","cdata"],style:{color:"#495495",fontStyle:"italic"}},{types:["punctuation"],style:{color:"#ccc"}},{types:["tag","attr-name","namespace","number","unit","hexcode","deleted"],style:{color:"#e2777a"}},{types:["property","selector"],style:{color:"#72f1b8",textShadow:"0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475"}},{types:["function-name"],style:{color:"#6196cc"}},{types:["boolean","selector-id","function"],style:{color:"#fdfdfd",textShadow:"0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975"}},{types:["class-name","maybe-class-name","builtin"],style:{color:"#fff5f6",textShadow:"0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75"}},{types:["constant","symbol"],style:{color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"}},{types:["important","atrule","keyword","selector-class"],style:{color:"#f4eee4",textShadow:"0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575"}},{types:["string","char","attr-value","regex","variable"],style:{color:"#f87c32"}},{types:["parameter"],style:{fontStyle:"italic"}},{types:["entity","url"],style:{color:"#67cdcc"}},{types:["operator"],style:{color:"ffffffee"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["entity"],style:{cursor:"help"}},{types:["inserted"],style:{color:"green"}}]},L={plain:{color:"#282a2e",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(197, 200, 198)"}},{types:["string","number","builtin","variable"],style:{color:"rgb(150, 152, 150)"}},{types:["class-name","function","tag","attr-name"],style:{color:"rgb(40, 42, 46)"}}]},D={plain:{color:"#9CDCFE",backgroundColor:"#1E1E1E"},styles:[{types:["prolog"],style:{color:"rgb(0, 0, 128)"}},{types:["comment"],style:{color:"rgb(106, 153, 85)"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"rgb(86, 156, 214)"}},{types:["number","inserted"],style:{color:"rgb(181, 206, 168)"}},{types:["constant"],style:{color:"rgb(100, 102, 149)"}},{types:["attr-name","variable"],style:{color:"rgb(156, 220, 254)"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"rgb(206, 145, 120)"}},{types:["selector"],style:{color:"rgb(215, 186, 125)"}},{types:["tag"],style:{color:"rgb(78, 201, 176)"}},{types:["tag"],languages:["markup"],style:{color:"rgb(86, 156, 214)"}},{types:["punctuation","operator"],style:{color:"rgb(212, 212, 212)"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"rgb(220, 220, 170)"}},{types:["class-name"],style:{color:"rgb(78, 201, 176)"}},{types:["char"],style:{color:"rgb(209, 105, 105)"}}]},M={plain:{color:"#000000",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(0, 128, 0)"}},{types:["builtin"],style:{color:"rgb(0, 112, 193)"}},{types:["number","variable","inserted"],style:{color:"rgb(9, 134, 88)"}},{types:["operator"],style:{color:"rgb(0, 0, 0)"}},{types:["constant","char"],style:{color:"rgb(129, 31, 63)"}},{types:["tag"],style:{color:"rgb(128, 0, 0)"}},{types:["attr-name"],style:{color:"rgb(255, 0, 0)"}},{types:["deleted","string"],style:{color:"rgb(163, 21, 21)"}},{types:["changed","punctuation"],style:{color:"rgb(4, 81, 165)"}},{types:["function","keyword"],style:{color:"rgb(0, 0, 255)"}},{types:["class-name"],style:{color:"rgb(38, 127, 153)"}}]},F={plain:{color:"#f8fafc",backgroundColor:"#011627"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#569CD6"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#f8fafc"}},{types:["attr-name","variable"],style:{color:"#9CDCFE"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#cbd5e1"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#D4D4D4"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#7dd3fc"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},z={plain:{color:"#0f172a",backgroundColor:"#f1f5f9"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#0c4a6e"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#0f172a"}},{types:["attr-name","variable"],style:{color:"#0c4a6e"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#64748b"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#475569"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#0e7490"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},B={plain:{backgroundColor:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(220, 10%, 40%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(220, 14%, 71%)"}},{types:["attr-name","class-name","maybe-class-name","boolean","constant","number","atrule"],style:{color:"hsl(29, 54%, 61%)"}},{types:["keyword"],style:{color:"hsl(286, 60%, 67%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(355, 65%, 65%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value"],style:{color:"hsl(95, 38%, 62%)"}},{types:["variable","operator","function"],style:{color:"hsl(207, 82%, 66%)"}},{types:["url"],style:{color:"hsl(187, 47%, 55%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(220, 14%, 71%)"}}]},$={plain:{backgroundColor:"hsl(230, 1%, 98%)",color:"hsl(230, 8%, 24%)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(230, 4%, 64%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(230, 8%, 24%)"}},{types:["attr-name","class-name","boolean","constant","number","atrule"],style:{color:"hsl(35, 99%, 36%)"}},{types:["keyword"],style:{color:"hsl(301, 63%, 40%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(5, 74%, 59%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value","punctuation"],style:{color:"hsl(119, 34%, 47%)"}},{types:["variable","operator","function"],style:{color:"hsl(221, 87%, 60%)"}},{types:["url"],style:{color:"hsl(198, 99%, 37%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(230, 8%, 24%)"}}]},U=(e,t)=>{const{plain:n}=e,r=e.styles.reduce(((e,n)=>{const{languages:r,style:o}=n;return r&&!r.includes(t)||n.types.forEach((t=>{const n=b(b({},e[t]),o);e[t]=n})),e}),{});return r.root=n,r.plain=v(b({},n),{backgroundColor:void 0}),r},H=/\r\n|\r|\n/,q=e=>{0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},V=(e,t)=>{const n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},W=e=>{const t=[[]],n=[e],r=[0],o=[e.length];let a=0,i=0,l=[];const s=[l];for(;i>-1;){for(;(a=r[i]++)<o[i];){let e,c=t[i];const u=n[i][a];if("string"==typeof u?(c=i>0?c:["plain"],e=u):(c=V(c,u.type),u.alias&&(c=V(c,u.alias)),e=u.content),"string"!=typeof e){i++,t.push(c),n.push(e),r.push(0),o.push(e.length);continue}const d=e.split(H),f=d.length;l.push({types:c,content:d[0]});for(let t=1;t<f;t++)q(l),s.push(l=[]),l.push({types:c,content:d[t]})}i--,t.pop(),n.pop(),r.pop(),o.pop()}return q(l),s},G=({children:e,language:t,code:n,theme:r,prism:o})=>{const l=t.toLowerCase(),s=((e,t)=>{const[n,r]=(0,a.useState)(U(t,e)),o=(0,a.useRef)(),i=(0,a.useRef)();return(0,a.useEffect)((()=>{t===o.current&&e===i.current||(o.current=t,i.current=e,r(U(t,e)))}),[e,t]),n})(l,r),c=(e=>(0,a.useCallback)((t=>{var n=t,{className:r,style:o,line:a}=n,l=w(n,["className","style","line"]);const s=v(b({},l),{className:(0,i.A)("token-line",r)});return"object"==typeof e&&"plain"in e&&(s.style=e.plain),"object"==typeof o&&(s.style=b(b({},s.style||{}),o)),s}),[e]))(s),u=(e=>{const t=(0,a.useCallback)((({types:t,empty:n})=>{if(null!=e)return 1===t.length&&"plain"===t[0]?null!=n?{display:"inline-block"}:void 0:1===t.length&&null!=n?e[t[0]]:Object.assign(null!=n?{display:"inline-block"}:{},...t.map((t=>e[t])))}),[e]);return(0,a.useCallback)((e=>{var n=e,{token:r,className:o,style:a}=n,l=w(n,["token","className","style"]);const s=v(b({},l),{className:(0,i.A)("token",...r.types,o),children:r.content,style:t(r)});return null!=a&&(s.style=b(b({},s.style||{}),a)),s}),[t])})(s),d=(({prism:e,code:t,grammar:n,language:r})=>{const o=(0,a.useRef)(e);return(0,a.useMemo)((()=>{if(null==n)return W([t]);const e={code:t,grammar:n,language:r,tokens:[]};return o.current.hooks.run("before-tokenize",e),e.tokens=o.current.tokenize(t,n),o.current.hooks.run("after-tokenize",e),W(e.tokens)}),[t,n,r])})({prism:o,language:l,code:n,grammar:o.languages[l]});return e({tokens:d,className:`prism-code language-${l}`,style:null!=s?s.root:{},getLineProps:c,getTokenProps:u})},K=e=>(0,a.createElement)(G,v(b({},e),{prism:e.prism||S,theme:e.theme||D,code:e.code,language:e.language}))},5385:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=!0,o="Invariant failed";function a(e,t){if(!e){if(r)throw new Error(o);var n="function"==typeof t?t():t,a=n?"".concat(o,": ").concat(n):o;throw new Error(a)}}},3422:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__addDisposableResource:()=>R,__assign:()=>a,__asyncDelegator:()=>_,__asyncGenerator:()=>E,__asyncValues:()=>O,__await:()=>x,__awaiter:()=>m,__classPrivateFieldGet:()=>P,__classPrivateFieldIn:()=>N,__classPrivateFieldSet:()=>I,__createBinding:()=>g,__decorate:()=>l,__disposeResources:()=>D,__esDecorate:()=>c,__exportStar:()=>y,__extends:()=>o,__generator:()=>h,__importDefault:()=>j,__importStar:()=>T,__makeTemplateObject:()=>C,__metadata:()=>p,__param:()=>s,__propKey:()=>d,__read:()=>v,__rest:()=>i,__runInitializers:()=>u,__setFunctionName:()=>f,__spread:()=>w,__spreadArray:()=>k,__spreadArrays:()=>S,__values:()=>b,default:()=>M});var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var a=function(){return a=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},a.apply(this,arguments)};function i(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}function l(e,t,n,r){var o,a=arguments.length,i=a<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,n,r);else for(var l=e.length-1;l>=0;l--)(o=e[l])&&(i=(a<3?o(i):a>3?o(t,n,i):o(t,n))||i);return a>3&&i&&Object.defineProperty(t,n,i),i}function s(e,t){return function(n,r){t(n,r,e)}}function c(e,t,n,r,o,a){function i(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var l,s=r.kind,c="getter"===s?"get":"setter"===s?"set":"value",u=!t&&e?r.static?e:e.prototype:null,d=t||(u?Object.getOwnPropertyDescriptor(u,r.name):{}),f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]="access"===h?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw new TypeError("Cannot add initializers after decoration has completed");a.push(i(e||null))};var g=(0,n[p])("accessor"===s?{get:d.get,set:d.set}:d[c],m);if("accessor"===s){if(void 0===g)continue;if(null===g||"object"!=typeof g)throw new TypeError("Object expected");(l=i(g.get))&&(d.get=l),(l=i(g.set))&&(d.set=l),(l=i(g.init))&&o.unshift(l)}else(l=i(g))&&("field"===s?o.unshift(l):d[c]=l)}u&&Object.defineProperty(u,r.name,d),f=!0}function u(e,t,n){for(var r=arguments.length>2,o=0;o<t.length;o++)n=r?t[o].call(e,n):t[o].call(e);return r?n:void 0}function d(e){return"symbol"==typeof e?e:"".concat(e)}function f(e,t,n){return"symbol"==typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:n?"".concat(n," ",t):t})}function p(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function m(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{s(r.next(e))}catch(t){a(t)}}function l(e){try{s(r.throw(e))}catch(t){a(t)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,l)}s((r=r.apply(e,t||[])).next())}))}function h(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(s){return function(l){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==l[0]&&2!==l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(s){l=[6,s],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,s])}}}var g=Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]};function y(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||g(t,e,n)}function b(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function v(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(l){o={error:l}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}function w(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(v(arguments[t]));return e}function S(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var r=Array(e),o=0;for(t=0;t<n;t++)for(var a=arguments[t],i=0,l=a.length;i<l;i++,o++)r[o]=a[i];return r}function k(e,t,n){if(n||2===arguments.length)for(var r,o=0,a=t.length;o<a;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))}function x(e){return this instanceof x?(this.v=e,this):new x(e)}function E(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,o=n.apply(e,t||[]),a=[];return r={},i("next"),i("throw"),i("return",(function(e){return function(t){return Promise.resolve(t).then(e,c)}})),r[Symbol.asyncIterator]=function(){return this},r;function i(e,t){o[e]&&(r[e]=function(t){return new Promise((function(n,r){a.push([e,t,n,r])>1||l(e,t)}))},t&&(r[e]=t(r[e])))}function l(e,t){try{(n=o[e](t)).value instanceof x?Promise.resolve(n.value.v).then(s,c):u(a[0][2],n)}catch(r){u(a[0][3],r)}var n}function s(e){l("next",e)}function c(e){l("throw",e)}function u(e,t){e(t),a.shift(),a.length&&l(a[0][0],a[0][1])}}function _(e){var t,n;return t={},r("next"),r("throw",(function(e){throw e})),r("return"),t[Symbol.iterator]=function(){return this},t;function r(r,o){t[r]=e[r]?function(t){return(n=!n)?{value:x(e[r](t)),done:!1}:o?o(t):t}:o}}function O(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=b(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,o){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,o,(t=e[n](t)).done,t.value)}))}}}function C(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var A=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t};function T(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&g(t,e,n);return A(t,e),t}function j(e){return e&&e.__esModule?e:{default:e}}function P(e,t,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(e):r?r.value:t.get(e)}function I(e,t,n,r,o){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?o.call(e,n):o?o.value=n:t.set(e,n),n}function N(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)}function R(e,t,n){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var r,o;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(void 0===r){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],n&&(o=r)}if("function"!=typeof r)throw new TypeError("Object not disposable.");o&&(r=function(){try{o.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}var L="function"==typeof SuppressedError?SuppressedError:function(e,t,n){var r=new Error(n);return r.name="SuppressedError",r.error=e,r.suppressed=t,r};function D(e){function t(t){e.error=e.hasError?new L(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}return function n(){for(;e.stack.length;){var r=e.stack.pop();try{var o=r.dispose&&r.dispose.call(r.value);if(r.async)return Promise.resolve(o).then(n,(function(e){return t(e),n()}))}catch(a){t(a)}}if(e.hasError)throw e.error}()}const M={__extends:o,__assign:a,__rest:i,__decorate:l,__param:s,__metadata:p,__awaiter:m,__generator:h,__createBinding:g,__exportStar:y,__values:b,__read:v,__spread:w,__spreadArrays:S,__spreadArray:k,__await:x,__asyncGenerator:E,__asyncDelegator:_,__asyncValues:O,__makeTemplateObject:C,__importStar:T,__importDefault:j,__classPrivateFieldGet:P,__classPrivateFieldSet:I,__classPrivateFieldIn:N,__addDisposableResource:R,__disposeResources:D}},2654:e=>{"use strict";e.exports={}},4054:e=>{"use strict";e.exports=JSON.parse('{"/search-5de":{"__comp":"1a4e3797","__context":{"plugin":"c141421f"}},"/-e5f":{"__comp":"1df93b7f","__context":{"plugin":"a7456010"},"config":"5e9f5e1a"},"/-1c6":{"__comp":"5e95c892","__context":{"plugin":"aba21aa0"}},"/-dcf":{"__comp":"a7bd4aaa","__props":"22dd74f7"},"/-e99":{"__comp":"a94703ab"},"/build/client-sdks/client-ts-sdk-cc7":{"__comp":"17896441","content":"607ff301"},"/build/dev-mode-a4c":{"__comp":"17896441","content":"2e1d06d3"},"/build/protocol-sdks/protocol-rs-sdk-2e9":{"__comp":"17896441","content":"3b38d041"},"/build/protocol-sdks/protocol-sdk-f7e":{"__comp":"17896441","content":"15a7497e"},"/build/publish-app-884":{"__comp":"17896441","content":"f1cd7b65"},"/build/quickstart-acf":{"__comp":"17896441","content":"0018adbe"},"/contribute/bounty-program-164":{"__comp":"17896441","content":"bd9c48a9"},"/contribute/github-ac4":{"__comp":"17896441","content":"01954a18"},"/contribute/hackathons-eb1":{"__comp":"17896441","content":"f773e51d"},"/explore/awesome-projects/only-peers-222":{"__comp":"17896441","content":"13477880"},"/explore/awesome-projects/rock-paper-scissors-e35":{"__comp":"17896441","content":"22e91f41"},"/explore/intro-92c":{"__comp":"17896441","content":"42b3b6e0"},"/explore/manifesto-527":{"__comp":"17896441","content":"702ee7bc"},"/explore/use-cases/decentralized-edge-compute-e49":{"__comp":"17896441","content":"9bc1354f"},"/explore/use-cases/decentralized-gig-economy-7a2":{"__comp":"17896441","content":"fdb23cd9"},"/explore/use-cases/decentralized-identity-verification-a99":{"__comp":"17896441","content":"889f3b97"},"/explore/use-cases/decentralized-intellectual-property-management-10e":{"__comp":"17896441","content":"a9154f55"},"/explore/use-cases/decentralized-social-platforms-830":{"__comp":"17896441","content":"d94758ba"},"/explore/use-cases/decentralized-voting-systems-be7":{"__comp":"17896441","content":"b9be9bb6"},"/explore/use-cases/deprod-05d":{"__comp":"17896441","content":"bc9a0017"},"/explore/use-cases/private-daos-management-d56":{"__comp":"17896441","content":"94b34882"},"/explore/use-cases/trustless-gaming-11e":{"__comp":"17896441","content":"7b9fe0bb"},"/explore/why-not/blockchain-1e1":{"__comp":"17896441","content":"c022fa4c"},"/explore/why-not/ipfs-6ef":{"__comp":"17896441","content":"5af830f1"},"/explore/why-not/zk-25e":{"__comp":"17896441","content":"96f6c727"},"/getting-started/admin-dashboard-8e3":{"__comp":"17896441","content":"1db5d8e2"},"/getting-started/example-app-2f0":{"__comp":"17896441","content":"6a63bb8b"},"/getting-started/setup-206":{"__comp":"17896441","content":"61c19dbb"},"/learn/advanced-concepts/encryption-975":{"__comp":"17896441","content":"64bee9bd"},"/learn/advanced-concepts/specialized-nodes-2d7":{"__comp":"17896441","content":"0b38cd53"},"/learn/architecture-496":{"__comp":"17896441","content":"f4e7e388"},"/learn/core-concepts/applications-2ed":{"__comp":"17896441","content":"9471ce52"},"/learn/core-concepts/contexts-0fa":{"__comp":"17896441","content":"f582a9aa"},"/learn/core-concepts/identity-d8d":{"__comp":"17896441","content":"bf6ec8e5"},"/learn/core-concepts/node/admin-client-api-804":{"__comp":"17896441","content":"190ec3a6"},"/learn/core-concepts/node/client-node-02e":{"__comp":"17896441","content":"73ad1aec"},"/learn/core-concepts/node/network-4eb":{"__comp":"17896441","content":"962e3ea7"},"/learn/core-concepts/node/runtime-089":{"__comp":"17896441","content":"5b892390"},"/learn/core-concepts/node/server-c38":{"__comp":"17896441","content":"e6fe25da"},"/learn/core-concepts/node/storage-08a":{"__comp":"17896441","content":"514a65da"},"/learn/terminology-7f9":{"__comp":"17896441","content":"150624dd"},"/resources/community-and-support-2c0":{"__comp":"17896441","content":"cc56a0d6"},"/resources/learning-cc6":{"__comp":"17896441","content":"e97a01d9"}}')}},e=>{e.O(0,[1869],(()=>{return t=436,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/assets/js/main.d3dc576f.js.LICENSE.txt b/assets/js/main.a8b009ff.js.LICENSE.txt similarity index 100% rename from assets/js/main.d3dc576f.js.LICENSE.txt rename to assets/js/main.a8b009ff.js.LICENSE.txt diff --git a/assets/js/main.d3dc576f.js b/assets/js/main.d3dc576f.js deleted file mode 100644 index 750ec41d..00000000 --- a/assets/js/main.d3dc576f.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.d3dc576f.js.LICENSE.txt */ -(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[8792],{5992:(e,t,n)=>{"use strict";n.d(t,{Bc:()=>g,E8:()=>Hn,a1:()=>Un});var r=n(758);n(8143);function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(){return l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},l.apply(this,arguments)}function s(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function c(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){l=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(l)throw o}}return a}}(e,t)||d(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e){return function(e){if(Array.isArray(e))return f(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||d(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){if(e){if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?f(e,t):void 0}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function p(){return r.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},r.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function m(){return r.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20","aria-hidden":"true"},r.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var h=["translations"],g=r.forwardRef((function(e,t){var n=e.translations,o=void 0===n?{}:n,a=s(e,h),i=o.buttonText,u=void 0===i?"Search":i,d=o.buttonAriaLabel,f=void 0===d?"Search":d,g=c((0,r.useState)(null),2),b=g[0],v=g[1];return(0,r.useEffect)((function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?v("\u2318"):v("Ctrl"))}),[]),r.createElement("button",l({type:"button",className:"DocSearch DocSearch-Button","aria-label":f},a,{ref:t}),r.createElement("span",{className:"DocSearch-Button-Container"},r.createElement(m,null),r.createElement("span",{className:"DocSearch-Button-Placeholder"},u)),r.createElement("span",{className:"DocSearch-Button-Keys"},null!==b&&r.createElement(r.Fragment,null,r.createElement(y,{reactsToKey:"Ctrl"===b?"Ctrl":"Meta"},"Ctrl"===b?r.createElement(p,null):b),r.createElement(y,{reactsToKey:"k"},"K"))))}));function y(e){var t=e.reactsToKey,n=e.children,o=c((0,r.useState)(!1),2),a=o[0],i=o[1];return(0,r.useEffect)((function(){if(t)return window.addEventListener("keydown",e),window.addEventListener("keyup",n),function(){window.removeEventListener("keydown",e),window.removeEventListener("keyup",n)};function e(e){e.key===t&&i(!0)}function n(e){e.key!==t&&"Meta"!==e.key||i(!1)}}),[t]),r.createElement("kbd",{className:a?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"},n)}function b(e,t){var n=void 0;return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];n&&clearTimeout(n),n=setTimeout((function(){return e.apply(void 0,o)}),t)}}function v(e){return e.reduce((function(e,t){return e.concat(t)}),[])}var w=0;function S(e){return 0===e.collections.length?0:e.collections.reduce((function(e,t){return e+t.items.length}),0)}function x(e){return e!==Object(e)}function k(e,t){if(e===t)return!0;if(x(e)||x(t)||"function"==typeof e||"function"==typeof t)return e===t;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n=0,r=Object.keys(e);n<r.length;n++){var o=r[n];if(!(o in t))return!1;if(!k(e[o],t[o]))return!1}return!0}var E=function(){},_=[{segment:"autocomplete-core",version:"1.9.3"}];function O(e){var t=e.item,n=e.items;return{index:t.__autocomplete_indexName,items:[t],positions:[1+n.findIndex((function(e){return e.objectID===t.objectID}))],queryID:t.__autocomplete_queryID,algoliaSource:["autocomplete"]}}function C(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var A=["items"],T=["items"];function j(e){return j="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},j(e)}function P(e){return function(e){if(Array.isArray(e))return I(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?I(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function N(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function R(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function L(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?R(Object(n),!0).forEach((function(t){D(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):R(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function D(e,t,n){return(t=function(e){var t=function(e){if("object"!==j(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==j(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===j(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function M(e){return e.map((function(e){var t=e.items,n=N(e,A);return L(L({},n),{},{objectIDs:(null==t?void 0:t.map((function(e){return e.objectID})))||n.objectIDs})}))}function F(e){var t,n,r,o=(t=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,i,l=[],s=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=a.call(n)).done)&&(l.push(r.value),l.length!==t);s=!0);}catch(e){c=!0,o=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return C(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?C(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((e.version||"").split(".").map(Number),2),n=t[0],r=t[1],n>=3||2===n&&r>=4||1===n&&r>=10);function a(t,n,r){if(o&&void 0!==r){var a=r[0].__autocomplete_algoliaCredentials,i={"X-Algolia-Application-Id":a.appId,"X-Algolia-API-Key":a.apiKey};e.apply(void 0,[t].concat(P(n),[{headers:i}]))}else e.apply(void 0,[t].concat(P(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("clickedObjectIDsAfterSearch",M(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("clickedObjectIDs",M(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("convertedObjectIDsAfterSearch",M(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&a("convertedObjectIDs",M(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&t.reduce((function(e,t){var n=t.items,r=N(t,T);return[].concat(P(e),P(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r<e.objectIDs.length;r+=t)n.push(L(L({},e),{},{objectIDs:e.objectIDs.slice(r,r+t)}));return n}(L(L({},r),{},{objectIDs:(null==n?void 0:n.map((function(e){return e.objectID})))||r.objectIDs})).map((function(e){return{items:n,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return a("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function z(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function B(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function $(e){return $="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},$(e)}function U(e){return function(e){if(Array.isArray(e))return H(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return H(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?H(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function V(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function q(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?V(Object(n),!0).forEach((function(t){W(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):V(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function W(e,t,n){return(t=function(e){var t=function(e){if("object"!==$(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==$(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===$(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var G="https://cdn.jsdelivr.net/npm/search-insights@".concat("2.6.0","/dist/search-insights.min.js"),K=b((function(e){var t=e.onItemsChange,n=e.items,r=e.insights,o=e.state;t({insights:r,insightsEvents:z({items:n}).map((function(e){return q({eventName:"Items Viewed"},e)})),state:o})}),400);function Y(e){var t=function(e){return q({onItemsChange:function(e){var t=e.insights,n=e.insightsEvents;t.viewedObjectIDs.apply(t,U(n.map((function(e){return q(q({},e),{},{algoliaSource:[].concat(U(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onSelect:function(e){var t=e.insights,n=e.insightsEvents;t.clickedObjectIDsAfterSearch.apply(t,U(n.map((function(e){return q(q({},e),{},{algoliaSource:[].concat(U(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onActive:E},e)}(e),n=t.insightsClient,r=t.onItemsChange,o=t.onSelect,a=t.onActive,i=n;n||"undefined"!=typeof window&&function(e){var t=e.window,n=t.AlgoliaAnalyticsObject||"aa";"string"==typeof n&&(i=t[n]),i||(t.AlgoliaAnalyticsObject=n,t[n]||(t[n]=function(){t[n].queue||(t[n].queue=[]);for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];t[n].queue.push(r)}),t[n].version="2.6.0",i=t[n],function(e){var t="[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete";try{var n=e.document.createElement("script");n.async=!0,n.src=G,n.onerror=function(){console.error(t)},document.body.appendChild(n)}catch(e){console.error(t)}}(t))}({window:window});var l=F(i),s={current:[]},c=b((function(e){var t=e.state;if(t.isOpen){var n=t.collections.reduce((function(e,t){return[].concat(U(e),U(t.items))}),[]).filter(B);k(s.current.map((function(e){return e.objectID})),n.map((function(e){return e.objectID})))||(s.current=n,n.length>0&&K({onItemsChange:r,items:n,insights:l,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive;i("addAlgoliaAgent","insights-plugin"),t({algoliaInsightsPlugin:{__algoliaSearchParameters:{clickAnalytics:!0},insights:l}}),n((function(e){var t=e.item,n=e.state,r=e.event;B(t)&&o({state:n,event:r,insights:l,item:t,insightsEvents:[q({eventName:"Item Selected"},O({item:t,items:s.current}))]})})),r((function(e){var t=e.item,n=e.state,r=e.event;B(t)&&a({state:n,event:r,insights:l,item:t,insightsEvents:[q({eventName:"Item Active"},O({item:t,items:s.current}))]})}))},onStateChange:function(e){var t=e.state;c({state:t})},__autocomplete_pluginOptions:e}}function Q(e,t){var n=t;return{then:function(t,r){return Q(e.then(X(t,n,e),X(r,n,e)),n)},catch:function(t){return Q(e.catch(X(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),Q(e.finally(X(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===n.isCanceled}}}function Z(e){return Q(e,{isCanceled:!1,onCancelList:[]})}function X(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}function J(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var o=(null===t?-1:t)+e;return o<=-1||o>=n?null===r?null:0:o}function ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function te(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(n),!0).forEach((function(t){ne(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ee(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ne(e,t,n){return(t=function(e){var t=function(e){if("object"!==re(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==re(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===re(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function re(e){return re="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},re(e)}function oe(e){var t=function(e){var t=e.collections.map((function(e){return e.items.length})).reduce((function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e}),[]).reduce((function(t,n){return n<=e.activeItemId?t+1:t}),0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,o=0,a=0;!1===r;){var i=t.collections[o];if(i===n){r=!0;break}a+=i.items.length,o++}return t.activeItemId-a}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}var ae=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function ie(e){return ie="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ie(e)}function le(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function se(e,t,n){return(t=function(e){var t=function(e){if("object"!==ie(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ie(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ie(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ce(e){return ce="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ce(e)}function ue(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function de(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ue(Object(n),!0).forEach((function(t){fe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ue(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function fe(e,t,n){return(t=function(e){var t=function(e){if("object"!==ce(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ce(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ce(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function pe(e){return pe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pe(e)}function me(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function he(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ge(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?he(Object(n),!0).forEach((function(t){ye(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):he(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ye(e,t,n){return(t=function(e){var t=function(e){if("object"!==pe(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==pe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===pe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function be(e,t){var n,r="undefined"!=typeof window?window:{},o=e.plugins||[];return ge(ge({debug:!1,openOnFocus:!1,placeholder:"",autoFocus:!1,defaultActiveItemId:null,stallThreshold:300,insights:!1,environment:r,shouldPanelOpen:function(e){return S(e.state)>0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:"autocomplete-".concat(w++),plugins:o,initialState:ge({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)}))},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)}))},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)}))},getSources:function(n){return Promise.all([].concat(function(e){return function(e){if(Array.isArray(e))return me(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return me(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?me(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var n=[];return Promise.resolve(e(t)).then((function(e){return Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:E,onResolve:E};Object.keys(t).forEach((function(e){t[e].__default=!0}));var r=te(te({},t),e);return Promise.resolve(r)})))}))}(e,n)}))).then((function(e){return v(e)})).then((function(e){return e.map((function(e){return ge(ge({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)}))},onActive:function(n){e.onActive(n),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)}))},onResolve:function(n){e.onResolve(n),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)}))}})}))}))},navigator:ge({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,"_blank","noopener");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,"_blank","noopener")}},e.navigator)})}function ve(e){return ve="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ve(e)}function we(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Se(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?we(Object(n),!0).forEach((function(t){xe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):we(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function xe(e,t,n){return(t=function(e){var t=function(e){if("object"!==ve(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ve(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ve(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ke(e){return ke="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ke(e)}function Ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _e(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ee(Object(n),!0).forEach((function(t){Oe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ee(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Oe(e,t,n){return(t=function(e){var t=function(e){if("object"!==ke(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ke(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ke(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ce(e){return function(e){if(Array.isArray(e))return Ae(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Ae(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ae(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ae(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Te(e){return Boolean(e.execute)}function je(e){var t=e.reduce((function(e,t){if(!Te(t))return e.push(t),e;var n=t.searchClient,r=t.execute,o=t.requesterId,a=t.requests,i=e.find((function(e){return Te(t)&&Te(e)&&e.searchClient===n&&Boolean(o)&&e.requesterId===o}));if(i){var l;(l=i.items).push.apply(l,Ce(a))}else{var s={execute:r,requesterId:o,items:a,searchClient:n};e.push(s)}return e}),[]).map((function(e){if(!Te(e))return Promise.resolve(e);var t=e,n=t.execute,r=t.items;return n({searchClient:t.searchClient,requests:r})}));return Promise.all(t).then((function(e){return v(e)}))}function Pe(e){return Pe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Pe(e)}var Ie=["event","nextState","props","query","refresh","store"];function Ne(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Re(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ne(Object(n),!0).forEach((function(t){Le(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ne(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Le(e,t,n){return(t=function(e){var t=function(e){if("object"!==Pe(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==Pe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Pe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var De,Me,Fe,ze=null,Be=(De=-1,Me=-1,Fe=void 0,function(e){var t=++De;return Promise.resolve(e).then((function(e){return Fe&&t<Me?Fe:(Me=t,Fe=e,e)}))});function $e(e){var t=e.event,n=e.nextState,r=void 0===n?{}:n,o=e.props,a=e.query,i=e.refresh,l=e.store,s=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,Ie);ze&&o.environment.clearTimeout(ze);var c=s.setCollections,u=s.setIsOpen,d=s.setQuery,f=s.setActiveItemId,p=s.setStatus;if(d(a),f(o.defaultActiveItemId),!a&&!1===o.openOnFocus){var m,h=l.getState().collections.map((function(e){return Re(Re({},e),{},{items:[]})}));p("idle"),c(h),u(null!==(m=r.isOpen)&&void 0!==m?m:o.shouldPanelOpen({state:l.getState()}));var g=Z(Be(h).then((function(){return Promise.resolve()})));return l.pendingRequests.add(g)}p("loading"),ze=o.environment.setTimeout((function(){p("stalled")}),o.stallThreshold);var y=Z(Be(o.getSources(Re({query:a,refresh:i,state:l.getState()},s)).then((function(e){return Promise.all(e.map((function(e){return Promise.resolve(e.getItems(Re({query:a,refresh:i,state:l.getState()},s))).then((function(t){return function(e,t,n){if(o=e,Boolean(null==o?void 0:o.execute)){var r="algolia"===e.requesterId?Object.assign.apply(Object,[{}].concat(Ce(Object.keys(n.context).map((function(e){var t;return null===(t=n.context[e])||void 0===t?void 0:t.__algoliaSearchParameters}))))):{};return _e(_e({},e),{},{requests:e.queries.map((function(n){return{query:"algolia"===e.requesterId?_e(_e({},n),{},{params:_e(_e({},r),n.params)}):n,sourceId:t,transformResponse:e.transformResponse}}))})}var o;return{items:e,sourceId:t}}(t,e.sourceId,l.getState())}))}))).then(je).then((function(t){return function(e,t,n){return t.map((function(t){var r,o=e.filter((function(e){return e.sourceId===t.sourceId})),a=o.map((function(e){return e.items})),i=o[0].transformResponse,l=i?i({results:r=a,hits:r.map((function(e){return e.hits})).filter(Boolean),facetHits:r.map((function(e){var t;return null===(t=e.facetHits)||void 0===t?void 0:t.map((function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}}))})).filter(Boolean)}):a;return t.onResolve({source:t,results:a,items:l,state:n.getState()}),l.every(Boolean),'The `getItems` function from source "'.concat(t.sourceId,'" must return an array of items but returned ').concat(JSON.stringify(void 0),".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"),{source:t,items:l}}))}(t,e,l)})).then((function(e){return function(e){var t=e.props,n=e.state,r=e.collections.reduce((function(e,t){return Se(Se({},e),{},xe({},t.source.sourceId,Se(Se({},t.source),{},{getItems:function(){return v(t.items)}})))}),{}),o=t.plugins.reduce((function(e,t){return t.reshape?t.reshape(e):e}),{sourcesBySourceId:r,state:n}).sourcesBySourceId;return v(t.reshape({sourcesBySourceId:o,sources:Object.values(o),state:n})).filter(Boolean).map((function(e){return{source:e,items:e.getItems()}}))}({collections:e,props:o,state:l.getState()})}))})))).then((function(e){var n;p("idle"),c(e);var d=o.shouldPanelOpen({state:l.getState()});u(null!==(n=r.isOpen)&&void 0!==n?n:o.openOnFocus&&!a&&d||d);var f=oe(l.getState());if(null!==l.getState().activeItemId&&f){var m=f.item,h=f.itemInputValue,g=f.itemUrl,y=f.source;y.onActive(Re({event:t,item:m,itemInputValue:h,itemUrl:g,refresh:i,source:y,state:l.getState()},s))}})).finally((function(){p("idle"),ze&&o.environment.clearTimeout(ze)}));return l.pendingRequests.add(y)}function Ue(e){return Ue="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ue(e)}var He=["event","props","refresh","store"];function Ve(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function qe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ve(Object(n),!0).forEach((function(t){We(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ve(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function We(e,t,n){return(t=function(e){var t=function(e){if("object"!==Ue(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==Ue(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ue(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ge(e){return Ge="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ge(e)}var Ke=["props","refresh","store"],Ye=["inputElement","formElement","panelElement"],Qe=["inputElement"],Ze=["inputElement","maxLength"],Xe=["sourceIndex"],Je=["sourceIndex"],et=["item","source","sourceIndex"];function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function nt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?tt(Object(n),!0).forEach((function(t){rt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function rt(e,t,n){return(t=function(e){var t=function(e){if("object"!==Ge(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==Ge(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ge(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ot(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function at(e){var t=e.props,n=e.refresh,r=e.store,o=ot(e,Ke),a=function(e,t){return void 0!==t?"".concat(e,"-").concat(t):e};return{getEnvironmentProps:function(e){var n=e.inputElement,o=e.formElement,a=e.panelElement;function i(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[o,a].some((function(t){return(n=t)===(r=e.target)||n.contains(r);var n,r}))&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())}return nt({onTouchStart:i,onMouseDown:i,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},ot(e,Ye))},getRootProps:function(e){return nt({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-owns":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label")},e)},getFormProps:function(e){return e.inputElement,nt({action:"",noValidate:!0,role:"search",onSubmit:function(a){var i;a.preventDefault(),t.onSubmit(nt({event:a,refresh:n,state:r.getState()},o)),r.dispatch("submit",null),null===(i=e.inputElement)||void 0===i||i.blur()},onReset:function(a){var i;a.preventDefault(),t.onReset(nt({event:a,refresh:n,state:r.getState()},o)),r.dispatch("reset",null),null===(i=e.inputElement)||void 0===i||i.focus()}},ot(e,Qe))},getLabelProps:function(e){var n=e||{},r=n.sourceIndex,o=ot(n,Xe);return nt({htmlFor:"".concat(a(t.id,r),"-input"),id:"".concat(a(t.id,r),"-label")},o)},getInputProps:function(e){var a;function i(e){(t.openOnFocus||Boolean(r.getState().query))&&$e(nt({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},o)),r.dispatch("focus",null)}var l=e||{},s=(l.inputElement,l.maxLength),c=void 0===s?512:s,u=ot(l,Ze),d=oe(r.getState()),f=function(e){return Boolean(e&&e.match(ae))}((null===(a=t.environment.navigator)||void 0===a?void 0:a.userAgent)||""),p=null!=d&&d.itemUrl&&!f?"go":"search";return nt({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&null!==r.getState().activeItemId?"".concat(t.id,"-item-").concat(r.getState().activeItemId):void 0,"aria-controls":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label"),value:r.getState().completion||r.getState().query,id:"".concat(t.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:p,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:"search",onChange:function(e){$e(nt({event:e,props:t,query:e.currentTarget.value.slice(0,c),refresh:n,store:r},o))},onKeyDown:function(e){!function(e){var t=e.event,n=e.props,r=e.refresh,o=e.store,a=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,He);if("ArrowUp"===t.key||"ArrowDown"===t.key){var i=function(){var e=n.environment.document.getElementById("".concat(n.id,"-item-").concat(o.getState().activeItemId));e&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded(!1):e.scrollIntoView(!1))},l=function(){var e=oe(o.getState());if(null!==o.getState().activeItemId&&e){var n=e.item,i=e.itemInputValue,l=e.itemUrl,s=e.source;s.onActive(qe({event:t,item:n,itemInputValue:i,itemUrl:l,refresh:r,source:s,state:o.getState()},a))}};t.preventDefault(),!1===o.getState().isOpen&&(n.openOnFocus||Boolean(o.getState().query))?$e(qe({event:t,props:n,query:o.getState().query,refresh:r,store:o},a)).then((function(){o.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),l(),setTimeout(i,0)})):(o.dispatch(t.key,{}),l(),i())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Tab"===t.key)o.dispatch("blur",null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return void(n.debug||o.pendingRequests.cancelAll());t.preventDefault();var s=oe(o.getState()),c=s.item,u=s.itemInputValue,d=s.itemUrl,f=s.source;if(t.metaKey||t.ctrlKey)void 0!==d&&(f.onSelect(qe({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a)),n.navigator.navigateNewTab({itemUrl:d,item:c,state:o.getState()}));else if(t.shiftKey)void 0!==d&&(f.onSelect(qe({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a)),n.navigator.navigateNewWindow({itemUrl:d,item:c,state:o.getState()}));else if(t.altKey);else{if(void 0!==d)return f.onSelect(qe({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a)),void n.navigator.navigate({itemUrl:d,item:c,state:o.getState()});$e(qe({event:t,nextState:{isOpen:!1},props:n,query:u,refresh:r,store:o},a)).then((function(){f.onSelect(qe({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:f,state:o.getState()},a))}))}}}(nt({event:e,props:t,refresh:n,store:r},o))},onFocus:i,onBlur:E,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},u)},getPanelProps:function(e){return nt({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},e)},getListProps:function(e){var n=e||{},r=n.sourceIndex,o=ot(n,Je);return nt({role:"listbox","aria-labelledby":"".concat(a(t.id,r),"-label"),id:"".concat(a(t.id,r),"-list")},o)},getItemProps:function(e){var i=e.item,l=e.source,s=e.sourceIndex,c=ot(e,et);return nt({id:"".concat(a(t.id,s),"-item-").concat(i.__autocomplete_id),role:"option","aria-selected":r.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){if(i.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",i.__autocomplete_id);var t=oe(r.getState());if(null!==r.getState().activeItemId&&t){var a=t.item,l=t.itemInputValue,s=t.itemUrl,c=t.source;c.onActive(nt({event:e,item:a,itemInputValue:l,itemUrl:s,refresh:n,source:c,state:r.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var a=l.getItemInputValue({item:i,state:r.getState()}),s=l.getItemUrl({item:i,state:r.getState()});(s?Promise.resolve():$e(nt({event:e,nextState:{isOpen:!1},props:t,query:a,refresh:n,store:r},o))).then((function(){l.onSelect(nt({event:e,item:i,itemInputValue:a,itemUrl:s,refresh:n,source:l,state:r.getState()},o))}))}},c)}}}function it(e){return it="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},it(e)}function lt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function st(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?lt(Object(n),!0).forEach((function(t){ct(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):lt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ct(e,t,n){return(t=function(e){var t=function(e){if("object"!==it(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==it(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===it(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ut(e){var t,n,r,o,a=e.plugins,i=e.options,l=null===(t=((null===(n=i.__autocomplete_metadata)||void 0===n?void 0:n.userAgents)||[])[0])||void 0===t?void 0:t.segment,s=l?ct({},l,Object.keys((null===(r=i.__autocomplete_metadata)||void 0===r?void 0:r.options)||{})):{};return{plugins:a.map((function(e){return{name:e.name,options:Object.keys(e.__autocomplete_pluginOptions||[])}})),options:st({"autocomplete-core":Object.keys(i)},s),ua:_.concat((null===(o=i.__autocomplete_metadata)||void 0===o?void 0:o.userAgents)||[])}}function dt(e){var t,n=e.state;return!1===n.isOpen||null===n.activeItemId?null:(null===(t=oe(n))||void 0===t?void 0:t.itemInputValue)||null}function ft(e){return ft="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ft(e)}function pt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function mt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?pt(Object(n),!0).forEach((function(t){ht(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ht(e,t,n){return(t=function(e){var t=function(e){if("object"!==ft(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==ft(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ft(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var gt=function(e,t){switch(t.type){case"setActiveItemId":case"mousemove":return mt(mt({},e),{},{activeItemId:t.payload});case"setQuery":return mt(mt({},e),{},{query:t.payload,completion:null});case"setCollections":return mt(mt({},e),{},{collections:t.payload});case"setIsOpen":return mt(mt({},e),{},{isOpen:t.payload});case"setStatus":return mt(mt({},e),{},{status:t.payload});case"setContext":return mt(mt({},e),{},{context:mt(mt({},e.context),t.payload)});case"ArrowDown":var n=mt(mt({},e),{},{activeItemId:t.payload.hasOwnProperty("nextActiveItemId")?t.payload.nextActiveItemId:J(1,e.activeItemId,S(e),t.props.defaultActiveItemId)});return mt(mt({},n),{},{completion:dt({state:n})});case"ArrowUp":var r=mt(mt({},e),{},{activeItemId:J(-1,e.activeItemId,S(e),t.props.defaultActiveItemId)});return mt(mt({},r),{},{completion:dt({state:r})});case"Escape":return e.isOpen?mt(mt({},e),{},{activeItemId:null,isOpen:!1,completion:null}):mt(mt({},e),{},{activeItemId:null,query:"",status:"idle",collections:[]});case"submit":return mt(mt({},e),{},{activeItemId:null,isOpen:!1,status:"idle"});case"reset":return mt(mt({},e),{},{activeItemId:!0===t.props.openOnFocus?t.props.defaultActiveItemId:null,status:"idle",query:""});case"focus":return mt(mt({},e),{},{activeItemId:t.props.defaultActiveItemId,isOpen:(t.props.openOnFocus||Boolean(e.query))&&t.props.shouldPanelOpen({state:e})});case"blur":return t.props.debug?e:mt(mt({},e),{},{isOpen:!1,activeItemId:null});case"mouseleave":return mt(mt({},e),{},{activeItemId:t.props.defaultActiveItemId});default:return"The reducer action ".concat(JSON.stringify(t.type)," is not supported."),e}};function yt(e){return yt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},yt(e)}function bt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function vt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?bt(Object(n),!0).forEach((function(t){wt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):bt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function wt(e,t,n){return(t=function(e){var t=function(e){if("object"!==yt(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==yt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===yt(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function St(e){var t=[],n=be(e,t),r=function(e,t,n){var r,o=t.initialState;return{getState:function(){return o},dispatch:function(r,a){var i=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?le(Object(n),!0).forEach((function(t){se(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):le(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},o);o=e(o,{type:r,props:t,payload:a}),n({state:o,prevState:i})},pendingRequests:(r=[],{add:function(e){return r.push(e),e.finally((function(){r=r.filter((function(t){return t!==e}))}))},cancelAll:function(){r.forEach((function(e){return e.cancel()}))},isEmpty:function(){return 0===r.length}})}}(gt,n,(function(e){var t=e.prevState,r=e.state;n.onStateChange(vt({prevState:t,state:r,refresh:i,navigator:n.navigator},o))})),o=function(e){var t=e.store;return{setActiveItemId:function(e){t.dispatch("setActiveItemId",e)},setQuery:function(e){t.dispatch("setQuery",e)},setCollections:function(e){var n=0,r=e.map((function(e){return de(de({},e),{},{items:v(e.items).map((function(e){return de(de({},e),{},{__autocomplete_id:n++})}))})}));t.dispatch("setCollections",r)},setIsOpen:function(e){t.dispatch("setIsOpen",e)},setStatus:function(e){t.dispatch("setStatus",e)},setContext:function(e){t.dispatch("setContext",e)}}}({store:r}),a=at(vt({props:n,refresh:i,store:r,navigator:n.navigator},o));function i(){return $e(vt({event:new Event("input"),nextState:{isOpen:r.getState().isOpen},props:n,navigator:n.navigator,query:r.getState().query,refresh:i,store:r},o))}if(e.insights&&!n.plugins.some((function(e){return"aa.algoliaInsightsPlugin"===e.name}))){var l="boolean"==typeof e.insights?{}:e.insights;n.plugins.push(Y(l))}return n.plugins.forEach((function(e){var r;return null===(r=e.subscribe)||void 0===r?void 0:r.call(e,vt(vt({},o),{},{navigator:n.navigator,refresh:i,onSelect:function(e){t.push({onSelect:e})},onActive:function(e){t.push({onActive:e})},onResolve:function(e){t.push({onResolve:e})}}))})),function(e){var t,n,r=e.metadata,o=e.environment;if(null===(t=o.navigator)||void 0===t||null===(n=t.userAgent)||void 0===n?void 0:n.includes("Algolia Crawler")){var a=o.document.createElement("meta"),i=o.document.querySelector("head");a.name="algolia:metadata",setTimeout((function(){a.content=JSON.stringify(r),i.appendChild(a)}),0)}}({metadata:ut({plugins:n.plugins,options:e}),environment:n.environment}),vt(vt({refresh:i,navigator:n.navigator},a),o)}function xt(e){var t=e.translations,n=(void 0===t?{}:t).searchByText,o=void 0===n?"Search by":n;return r.createElement("a",{href:"https://www.algolia.com/ref/docsearch/?utm_source=".concat(window.location.hostname,"&utm_medium=referral&utm_content=powered_by&utm_campaign=docsearch"),target:"_blank",rel:"noopener noreferrer"},r.createElement("span",{className:"DocSearch-Label"},o),r.createElement("svg",{width:"77",height:"19","aria-label":"Algolia",role:"img",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2196.2 500"},r.createElement("defs",null,r.createElement("style",null,".cls-1,.cls-2{fill:#003dff;}.cls-2{fill-rule:evenodd;}")),r.createElement("path",{className:"cls-2",d:"M1070.38,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),r.createElement("rect",{className:"cls-1",x:"1845.88",y:"104.73",width:"62.58",height:"277.9",rx:"5.9",ry:"5.9"}),r.createElement("path",{className:"cls-2",d:"M1851.78,71.38h50.77c3.26,0,5.9-2.64,5.9-5.9V5.9c0-3.62-3.24-6.39-6.82-5.83l-50.77,7.95c-2.87,.45-4.99,2.92-4.99,5.83v51.62c0,3.26,2.64,5.9,5.9,5.9Z"}),r.createElement("path",{className:"cls-2",d:"M1764.03,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),r.createElement("path",{className:"cls-2",d:"M1631.95,142.72c-11.14-12.25-24.83-21.65-40.78-28.31-15.92-6.53-33.26-9.85-52.07-9.85-18.78,0-36.15,3.17-51.92,9.85-15.59,6.66-29.29,16.05-40.76,28.31-11.47,12.23-20.38,26.87-26.76,44.03-6.38,17.17-9.24,37.37-9.24,58.36,0,20.99,3.19,36.87,9.55,54.21,6.38,17.32,15.14,32.11,26.45,44.36,11.29,12.23,24.83,21.62,40.6,28.46,15.77,6.83,40.12,10.33,52.4,10.48,12.25,0,36.78-3.82,52.7-10.48,15.92-6.68,29.46-16.23,40.78-28.46,11.29-12.25,20.05-27.04,26.25-44.36,6.22-17.34,9.24-33.22,9.24-54.21,0-20.99-3.34-41.19-10.03-58.36-6.38-17.17-15.14-31.8-26.43-44.03Zm-44.43,163.75c-11.47,15.75-27.56,23.7-48.09,23.7-20.55,0-36.63-7.8-48.1-23.7-11.47-15.75-17.21-34.01-17.21-61.2,0-26.89,5.59-49.14,17.06-64.87,11.45-15.75,27.54-23.52,48.07-23.52,20.55,0,36.63,7.78,48.09,23.52,11.47,15.57,17.36,37.98,17.36,64.87,0,27.19-5.72,45.3-17.19,61.2Z"}),r.createElement("path",{className:"cls-2",d:"M894.42,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),r.createElement("path",{className:"cls-2",d:"M2133.97,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),r.createElement("path",{className:"cls-2",d:"M1314.05,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-11.79,18.34-19.6,39.64-22.11,62.59-.58,5.3-.88,10.68-.88,16.14s.31,11.15,.93,16.59c4.28,38.09,23.14,71.61,50.66,94.52,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47h0c17.99,0,34.61-5.93,48.16-15.97,16.29-11.58,28.88-28.54,34.48-47.75v50.26h-.11v11.08c0,21.84-5.71,38.27-17.34,49.36-11.61,11.08-31.04,16.63-58.25,16.63-11.12,0-28.79-.59-46.6-2.41-2.83-.29-5.46,1.5-6.27,4.22l-12.78,43.11c-1.02,3.46,1.27,7.02,4.83,7.53,21.52,3.08,42.52,4.68,54.65,4.68,48.91,0,85.16-10.75,108.89-32.21,21.48-19.41,33.15-48.89,35.2-88.52V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,64.1s.65,139.13,0,143.36c-12.08,9.77-27.11,13.59-43.49,14.7-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-1.32,0-2.63-.03-3.94-.1-40.41-2.11-74.52-37.26-74.52-79.38,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33Z"}),r.createElement("path",{className:"cls-1",d:"M249.83,0C113.3,0,2,110.09,.03,246.16c-2,138.19,110.12,252.7,248.33,253.5,42.68,.25,83.79-10.19,120.3-30.03,3.56-1.93,4.11-6.83,1.08-9.51l-23.38-20.72c-4.75-4.21-11.51-5.4-17.36-2.92-25.48,10.84-53.17,16.38-81.71,16.03-111.68-1.37-201.91-94.29-200.13-205.96,1.76-110.26,92-199.41,202.67-199.41h202.69V407.41l-115-102.18c-3.72-3.31-9.42-2.66-12.42,1.31-18.46,24.44-48.53,39.64-81.93,37.34-46.33-3.2-83.87-40.5-87.34-86.81-4.15-55.24,39.63-101.52,94-101.52,49.18,0,89.68,37.85,93.91,85.95,.38,4.28,2.31,8.27,5.52,11.12l29.95,26.55c3.4,3.01,8.79,1.17,9.63-3.3,2.16-11.55,2.92-23.58,2.07-35.92-4.82-70.34-61.8-126.93-132.17-131.26-80.68-4.97-148.13,58.14-150.27,137.25-2.09,77.1,61.08,143.56,138.19,145.26,32.19,.71,62.03-9.41,86.14-26.95l150.26,133.2c6.44,5.71,16.61,1.14,16.61-7.47V9.48C499.66,4.25,495.42,0,490.18,0H249.83Z"})))}function kt(e){return r.createElement("svg",{width:"15",height:"15","aria-label":e.ariaLabel,role:"img"},r.createElement("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"},e.children))}function Et(e){var t=e.translations,n=void 0===t?{}:t,o=n.selectText,a=void 0===o?"to select":o,i=n.selectKeyAriaLabel,l=void 0===i?"Enter key":i,s=n.navigateText,c=void 0===s?"to navigate":s,u=n.navigateUpKeyAriaLabel,d=void 0===u?"Arrow up":u,f=n.navigateDownKeyAriaLabel,p=void 0===f?"Arrow down":f,m=n.closeText,h=void 0===m?"to close":m,g=n.closeKeyAriaLabel,y=void 0===g?"Escape key":g,b=n.searchByText,v=void 0===b?"Search by":b;return r.createElement(r.Fragment,null,r.createElement("div",{className:"DocSearch-Logo"},r.createElement(xt,{translations:{searchByText:v}})),r.createElement("ul",{className:"DocSearch-Commands"},r.createElement("li",null,r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(kt,{ariaLabel:l},r.createElement("path",{d:"M12 3.53088v3c0 1-1 2-2 2H4M7 11.53088l-3-3 3-3"}))),r.createElement("span",{className:"DocSearch-Label"},a)),r.createElement("li",null,r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(kt,{ariaLabel:p},r.createElement("path",{d:"M7.5 3.5v8M10.5 8.5l-3 3-3-3"}))),r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(kt,{ariaLabel:d},r.createElement("path",{d:"M7.5 11.5v-8M10.5 6.5l-3-3-3 3"}))),r.createElement("span",{className:"DocSearch-Label"},c)),r.createElement("li",null,r.createElement("kbd",{className:"DocSearch-Commands-Key"},r.createElement(kt,{ariaLabel:y},r.createElement("path",{d:"M13.6167 8.936c-.1065.3583-.6883.962-1.4875.962-.7993 0-1.653-.9165-1.653-2.1258v-.5678c0-1.2548.7896-2.1016 1.653-2.1016.8634 0 1.3601.4778 1.4875 1.0724M9 6c-.1352-.4735-.7506-.9219-1.46-.8972-.7092.0246-1.344.57-1.344 1.2166s.4198.8812 1.3445.9805C8.465 7.3992 8.968 7.9337 9 8.5c.032.5663-.454 1.398-1.4595 1.398C6.6593 9.898 6 9 5.963 8.4851m-1.4748.5368c-.2635.5941-.8099.876-1.5443.876s-1.7073-.6248-1.7073-2.204v-.4603c0-1.0416.721-2.131 1.7073-2.131.9864 0 1.6425 1.031 1.5443 2.2492h-2.956"}))),r.createElement("span",{className:"DocSearch-Label"},h))))}function _t(e){var t=e.hit,n=e.children;return r.createElement("a",{href:t.url},n)}function Ot(){return r.createElement("svg",{viewBox:"0 0 38 38",stroke:"currentColor",strokeOpacity:".5"},r.createElement("g",{fill:"none",fillRule:"evenodd"},r.createElement("g",{transform:"translate(1 1)",strokeWidth:"2"},r.createElement("circle",{strokeOpacity:".3",cx:"18",cy:"18",r:"18"}),r.createElement("path",{d:"M36 18c0-9.94-8.06-18-18-18"},r.createElement("animateTransform",{attributeName:"transform",type:"rotate",from:"0 18 18",to:"360 18 18",dur:"1s",repeatCount:"indefinite"})))))}function Ct(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M3.18 6.6a8.23 8.23 0 1112.93 9.94h0a8.23 8.23 0 01-11.63 0"}),r.createElement("path",{d:"M6.44 7.25H2.55V3.36M10.45 6v5.6M10.45 11.6L13 13"})))}function At(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M10 10l5.09-5.09L10 10l5.09 5.09L10 10zm0 0L4.91 4.91 10 10l-5.09 5.09L10 10z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}function Tt(){return r.createElement("svg",{className:"DocSearch-Hit-Select-Icon",width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M18 3v4c0 2-2 4-4 4H2"}),r.createElement("path",{d:"M8 17l-6-6 6-6"})))}var jt=function(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M17 6v12c0 .52-.2 1-1 1H4c-.7 0-1-.33-1-1V2c0-.55.42-1 1-1h8l5 5zM14 8h-3.13c-.51 0-.87-.34-.87-.87V4",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))};function Pt(e){switch(e.type){case"lvl1":return r.createElement(jt,null);case"content":return r.createElement(Nt,null);default:return r.createElement(It,null)}}function It(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M13 13h4-4V8H7v5h6v4-4H7V8H3h4V3v5h6V3v5h4-4v5zm-6 0v4-4H3h4z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}function Nt(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M17 5H3h14zm0 5H3h14zm0 5H3h14z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function Rt(){return r.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},r.createElement("path",{d:"M10 14.2L5 17l1-5.6-4-4 5.5-.7 2.5-5 2.5 5 5.6.8-4 4 .9 5.5z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function Lt(){return r.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M19 4.8a16 16 0 00-2-1.2m-3.3-1.2A16 16 0 001.1 4.7M16.7 8a12 12 0 00-2.8-1.4M10 6a12 12 0 00-6.7 2M12.3 14.7a4 4 0 00-4.5 0M14.5 11.4A8 8 0 0010 10M3 16L18 2M10 18h0"}))}function Dt(){return r.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},r.createElement("path",{d:"M15.5 4.8c2 3 1.7 7-1 9.7h0l4.3 4.3-4.3-4.3a7.8 7.8 0 01-9.8 1m-2.2-2.2A7.8 7.8 0 0113.2 2.4M2 18L18 2"}))}function Mt(e){var t=e.translations,n=void 0===t?{}:t,o=n.titleText,a=void 0===o?"Unable to fetch results":o,i=n.helpText,l=void 0===i?"You might want to check your network connection.":i;return r.createElement("div",{className:"DocSearch-ErrorScreen"},r.createElement("div",{className:"DocSearch-Screen-Icon"},r.createElement(Lt,null)),r.createElement("p",{className:"DocSearch-Title"},a),r.createElement("p",{className:"DocSearch-Help"},l))}var Ft=["translations"];function zt(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,Ft),a=n.noResultsText,i=void 0===a?"No results for":a,l=n.suggestedQueryText,c=void 0===l?"Try searching for":l,d=n.reportMissingResultsText,f=void 0===d?"Believe this query should return results?":d,p=n.reportMissingResultsLinkText,m=void 0===p?"Let us know.":p,h=o.state.context.searchSuggestions;return r.createElement("div",{className:"DocSearch-NoResults"},r.createElement("div",{className:"DocSearch-Screen-Icon"},r.createElement(Dt,null)),r.createElement("p",{className:"DocSearch-Title"},i,' "',r.createElement("strong",null,o.state.query),'"'),h&&h.length>0&&r.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},r.createElement("p",{className:"DocSearch-Help"},c,":"),r.createElement("ul",null,h.slice(0,3).reduce((function(e,t){return[].concat(u(e),[r.createElement("li",{key:t},r.createElement("button",{className:"DocSearch-Prefill",key:t,type:"button",onClick:function(){o.setQuery(t.toLowerCase()+" "),o.refresh(),o.inputRef.current.focus()}},t))])}),[]))),o.getMissingResultsUrl&&r.createElement("p",{className:"DocSearch-Help"},"".concat(f," "),r.createElement("a",{href:o.getMissingResultsUrl({query:o.state.query}),target:"_blank",rel:"noopener noreferrer"},m)))}var Bt=["hit","attribute","tagName"];function $t(e,t){return t.split(".").reduce((function(e,t){return null!=e&&e[t]?e[t]:null}),e)}function Ut(e){var t=e.hit,n=e.attribute,o=e.tagName,i=void 0===o?"span":o,l=s(e,Bt);return(0,r.createElement)(i,a(a({},l),{},{dangerouslySetInnerHTML:{__html:$t(t,"_snippetResult.".concat(n,".value"))||$t(t,n)}}))}function Ht(e){return e.collection&&0!==e.collection.items.length?r.createElement("section",{className:"DocSearch-Hits"},r.createElement("div",{className:"DocSearch-Hit-source"},e.title),r.createElement("ul",e.getListProps(),e.collection.items.map((function(t,n){return r.createElement(Vt,l({key:[e.title,t.objectID].join(":"),item:t,index:n},e))})))):null}function Vt(e){var t=e.item,n=e.index,o=e.renderIcon,a=e.renderAction,i=e.getItemProps,s=e.onItemClick,u=e.collection,d=e.hitComponent,f=c(r.useState(!1),2),p=f[0],m=f[1],h=c(r.useState(!1),2),g=h[0],y=h[1],b=r.useRef(null),v=d;return r.createElement("li",l({className:["DocSearch-Hit",t.__docsearch_parent&&"DocSearch-Hit--Child",p&&"DocSearch-Hit--deleting",g&&"DocSearch-Hit--favoriting"].filter(Boolean).join(" "),onTransitionEnd:function(){b.current&&b.current()}},i({item:t,source:u.source,onClick:function(e){s(t,e)}})),r.createElement(v,{hit:t},r.createElement("div",{className:"DocSearch-Hit-Container"},o({item:t,index:n}),t.hierarchy[t.type]&&"lvl1"===t.type&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.lvl1"}),t.content&&r.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"content"})),t.hierarchy[t.type]&&("lvl2"===t.type||"lvl3"===t.type||"lvl4"===t.type||"lvl5"===t.type||"lvl6"===t.type)&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.".concat(t.type)}),r.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),"content"===t.type&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"content"}),r.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),a({item:t,runDeleteTransition:function(e){m(!0),b.current=e},runFavoriteTransition:function(e){y(!0),b.current=e}}))))}function qt(e,t,n){return e.reduce((function(e,r){var o=t(r);return e.hasOwnProperty(o)||(e[o]=[]),e[o].length<(n||5)&&e[o].push(r),e}),{})}function Wt(e){return e}function Gt(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}function Kt(){}var Yt=/(<mark>|<\/mark>)/g,Qt=RegExp(Yt.source);function Zt(e){var t,n,r=e;if(!r.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var o=((r.__docsearch_parent?null===(t=r.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(n=e._highlightResult)||void 0===n||null===(n=n.hierarchy)||void 0===n?void 0:n.lvl0)||{}).value;return o&&Qt.test(o)?o.replace(Yt,""):o}function Xt(e){return r.createElement("div",{className:"DocSearch-Dropdown-Container"},e.state.collections.map((function(t){if(0===t.items.length)return null;var n=Zt(t.items[0]);return r.createElement(Ht,l({},e,{key:t.source.sourceId,title:n,collection:t,renderIcon:function(e){var n,o=e.item,a=e.index;return r.createElement(r.Fragment,null,o.__docsearch_parent&&r.createElement("svg",{className:"DocSearch-Hit-Tree",viewBox:"0 0 24 54"},r.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},o.__docsearch_parent!==(null===(n=t.items[a+1])||void 0===n?void 0:n.__docsearch_parent)?r.createElement("path",{d:"M8 6v21M20 27H8.3"}):r.createElement("path",{d:"M8 6v42M20 27H8.3"}))),r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement(Pt,{type:o.type})))},renderAction:function(){return r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement(Tt,null))}}))})),e.resultsFooterComponent&&r.createElement("section",{className:"DocSearch-HitsFooter"},r.createElement(e.resultsFooterComponent,{state:e.state})))}var Jt=["translations"];function en(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,Jt),a=n.recentSearchesTitle,i=void 0===a?"Recent":a,c=n.noRecentSearchesText,u=void 0===c?"No recent searches":c,d=n.saveRecentSearchButtonTitle,f=void 0===d?"Save this search":d,p=n.removeRecentSearchButtonTitle,m=void 0===p?"Remove this search from history":p,h=n.favoriteSearchesTitle,g=void 0===h?"Favorite":h,y=n.removeFavoriteSearchButtonTitle,b=void 0===y?"Remove this search from favorites":y;return"idle"===o.state.status&&!1===o.hasCollections?o.disableUserPersonalization?null:r.createElement("div",{className:"DocSearch-StartScreen"},r.createElement("p",{className:"DocSearch-Help"},u)):!1===o.hasCollections?null:r.createElement("div",{className:"DocSearch-Dropdown-Container"},r.createElement(Ht,l({},o,{title:i,collection:o.state.collections[0],renderIcon:function(){return r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement(Ct,null))},renderAction:function(e){var t=e.item,n=e.runFavoriteTransition,a=e.runDeleteTransition;return r.createElement(r.Fragment,null,r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement("button",{className:"DocSearch-Hit-action-button",title:f,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.add(t),o.recentSearches.remove(t),o.refresh()}))}},r.createElement(Rt,null))),r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement("button",{className:"DocSearch-Hit-action-button",title:m,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),a((function(){o.recentSearches.remove(t),o.refresh()}))}},r.createElement(At,null))))}})),r.createElement(Ht,l({},o,{title:g,collection:o.state.collections[1],renderIcon:function(){return r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement(Rt,null))},renderAction:function(e){var t=e.item,n=e.runDeleteTransition;return r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement("button",{className:"DocSearch-Hit-action-button",title:b,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.remove(t),o.refresh()}))}},r.createElement(At,null)))}})))}var tn=["translations"],nn=r.memo((function(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,tn);if("error"===o.state.status)return r.createElement(Mt,{translations:null==n?void 0:n.errorScreen});var a=o.state.collections.some((function(e){return e.items.length>0}));return o.state.query?!1===a?r.createElement(zt,l({},o,{translations:null==n?void 0:n.noResultsScreen})):r.createElement(Xt,o):r.createElement(en,l({},o,{hasCollections:a,translations:null==n?void 0:n.startScreen}))}),(function(e,t){return"loading"===t.state.status||"stalled"===t.state.status})),rn=["translations"];function on(e){var t=e.translations,n=void 0===t?{}:t,o=s(e,rn),a=n.resetButtonTitle,i=void 0===a?"Clear the query":a,c=n.resetButtonAriaLabel,u=void 0===c?"Clear the query":c,d=n.cancelButtonText,f=void 0===d?"Cancel":d,p=n.cancelButtonAriaLabel,h=void 0===p?"Cancel":p,g=n.searchInputLabel,y=void 0===g?"Search":g,b=o.getFormProps({inputElement:o.inputRef.current}).onReset;return r.useEffect((function(){o.autoFocus&&o.inputRef.current&&o.inputRef.current.focus()}),[o.autoFocus,o.inputRef]),r.useEffect((function(){o.isFromSelection&&o.inputRef.current&&o.inputRef.current.select()}),[o.isFromSelection,o.inputRef]),r.createElement(r.Fragment,null,r.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:b},r.createElement("label",l({className:"DocSearch-MagnifierLabel"},o.getLabelProps()),r.createElement(m,null),r.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},y)),r.createElement("div",{className:"DocSearch-LoadingIndicator"},r.createElement(Ot,null)),r.createElement("input",l({className:"DocSearch-Input",ref:o.inputRef},o.getInputProps({inputElement:o.inputRef.current,autoFocus:o.autoFocus,maxLength:64}))),r.createElement("button",{type:"reset",title:i,className:"DocSearch-Reset","aria-label":u,hidden:!o.state.query},r.createElement(At,null))),r.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":h,onClick:o.onClose},f))}var an=["_highlightResult","_snippetResult"];function ln(e){var t=e.key,n=e.limit,r=void 0===n?5:n,o=function(e){return!1===function(){var e="__TEST_KEY__";try{return localStorage.setItem(e,""),localStorage.removeItem(e),!0}catch(e){return!1}}()?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){return window.localStorage.setItem(e,JSON.stringify(t))},getItem:function(){var t=window.localStorage.getItem(e);return t?JSON.parse(t):[]}}}(t),a=o.getItem().slice(0,r);return{add:function(e){var t=e,n=(t._highlightResult,t._snippetResult,s(t,an)),i=a.findIndex((function(e){return e.objectID===n.objectID}));i>-1&&a.splice(i,1),a.unshift(n),a=a.slice(0,r),o.setItem(a)},remove:function(e){a=a.filter((function(t){return t.objectID!==e.objectID})),o.setItem(a)},getAll:function(){return a}}}function sn(e){const t=`algoliasearch-client-js-${e.key}`;let n;const r=()=>(void 0===n&&(n=e.localStorage||window.localStorage),n),o=()=>JSON.parse(r().getItem(t)||"{}"),a=e=>{r().setItem(t,JSON.stringify(e))};return{get:(t,n,r={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>{(()=>{const t=e.timeToLive?1e3*e.timeToLive:null,n=o(),r=Object.fromEntries(Object.entries(n).filter((([,e])=>void 0!==e.timestamp)));if(a(r),!t)return;const i=Object.fromEntries(Object.entries(r).filter((([,e])=>{const n=(new Date).getTime();return!(e.timestamp+t<n)})));a(i)})();const n=JSON.stringify(t);return o()[n]})).then((e=>Promise.all([e?e.value:n(),void 0!==e]))).then((([e,t])=>Promise.all([e,t||r.miss(e)]))).then((([e])=>e)),set:(e,n)=>Promise.resolve().then((()=>{const a=o();return a[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:n},r().setItem(t,JSON.stringify(a)),n})),delete:e=>Promise.resolve().then((()=>{const n=o();delete n[JSON.stringify(e)],r().setItem(t,JSON.stringify(n))})),clear:()=>Promise.resolve().then((()=>{r().removeItem(t)}))}}function cn(e){const t=[...e.caches],n=t.shift();return void 0===n?{get:(e,t,n={miss:()=>Promise.resolve()})=>t().then((e=>Promise.all([e,n.miss(e)]))).then((([e])=>e)),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,r,o={miss:()=>Promise.resolve()})=>n.get(e,r,o).catch((()=>cn({caches:t}).get(e,r,o))),set:(e,r)=>n.set(e,r).catch((()=>cn({caches:t}).set(e,r))),delete:e=>n.delete(e).catch((()=>cn({caches:t}).delete(e))),clear:()=>n.clear().catch((()=>cn({caches:t}).clear()))}}function un(e={serializable:!0}){let t={};return{get(n,r,o={miss:()=>Promise.resolve()}){const a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);const i=r(),l=o&&o.miss||(()=>Promise.resolve());return i.then((e=>l(e))).then((()=>i))},set:(n,r)=>(t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}function dn(e){let t=e.length-1;for(;t>0;t--){const n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}function fn(e,t){return t?(Object.keys(t).forEach((n=>{e[n]=t[n](e)})),e):e}function pn(e,...t){let n=0;return e.replace(/%s/g,(()=>encodeURIComponent(t[n++])))}const mn={WithinQueryParameters:0,WithinHeaders:1};function hn(e,t){const n=e||{},r=n.data||{};return Object.keys(n).forEach((e=>{-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(e)&&(r[e]=n[e])})),{data:Object.entries(r).length>0?r:void 0,timeout:n.timeout||t,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}const gn={Read:1,Write:2,Any:3},yn=1,bn=3;function vn(e,t=yn){return{...e,status:t,lastUpdate:Date.now()}}function wn(e){return"string"==typeof e?{protocol:"https",url:e,accept:gn.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||gn.Any}}const Sn="GET",xn="POST";function kn(e,t,n,r){const o=[],a=function(e,t){if(e.method===Sn||void 0===e.data&&void 0===t.data)return;const n=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(n)}(n,r),i=function(e,t){const n={...e.headers,...t.headers},r={};return Object.keys(n).forEach((e=>{const t=n[e];r[e.toLowerCase()]=t})),r}(e,r),l=n.method,s=n.method!==Sn?{}:{...n.data,...r.data},c={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...s,...r.queryParameters};let u=0;const d=(t,s)=>{const f=t.pop();if(void 0===f)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:Cn(o)};const p={data:a,headers:i,method:l,url:_n(f,n.path,c),connectTimeout:s(u,e.timeouts.connect),responseTimeout:s(u,r.timeout)},m=e=>{const n={request:p,response:e,host:f,triesLeft:t.length};return o.push(n),n},h={onSuccess:e=>function(e){try{return JSON.parse(e.content)}catch(t){throw function(e,t){return{name:"DeserializationError",message:e,response:t}}(t.message,e)}}(e),onRetry(n){const r=m(n);return n.isTimedOut&&u++,Promise.all([e.logger.info("Retryable failure",An(r)),e.hostsCache.set(f,vn(f,n.isTimedOut?bn:2))]).then((()=>d(t,s)))},onFail(e){throw m(e),function({content:e,status:t},n){let r=e;try{r=JSON.parse(e).message}catch(e){}return function(e,t,n){return{name:"ApiError",message:e,status:t,transporterStackTrace:n}}(r,t,n)}(e,Cn(o))}};return e.requester.send(p).then((e=>((e,t)=>(e=>{const t=e.status;return e.isTimedOut||(({isTimedOut:e,status:t})=>!e&&!~~t)(e)||2!=~~(t/100)&&4!=~~(t/100)})(e)?t.onRetry(e):(({status:e})=>2==~~(e/100))(e)?t.onSuccess(e):t.onFail(e))(e,h)))};return function(e,t){return Promise.all(t.map((t=>e.get(t,(()=>Promise.resolve(vn(t))))))).then((e=>{const n=e.filter((e=>function(e){return e.status===yn||Date.now()-e.lastUpdate>12e4}(e))),r=e.filter((e=>function(e){return e.status===bn&&Date.now()-e.lastUpdate<=12e4}(e))),o=[...n,...r];return{getTimeout:(e,t)=>(0===r.length&&0===e?1:r.length+3+e)*t,statelessHosts:o.length>0?o.map((e=>wn(e))):t}}))}(e.hostsCache,t).then((e=>d([...e.statelessHosts].reverse(),e.getTimeout)))}function En(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const n=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(n)&&(t.value=`${t.value}${n}`),t}};return t}function _n(e,t,n){const r=On(n);let o=`${e.protocol}://${e.url}/${"/"===t.charAt(0)?t.substr(1):t}`;return r.length&&(o+=`?${r}`),o}function On(e){return Object.keys(e).map((t=>{return pn("%s=%s",t,(n=e[t],"[object Object]"===Object.prototype.toString.call(n)||"[object Array]"===Object.prototype.toString.call(n)?JSON.stringify(e[t]):e[t]));var n})).join("&")}function Cn(e){return e.map((e=>An(e)))}function An(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}const Tn=e=>{const t=e.appId,n=function(e,t,n){const r={"x-algolia-api-key":n,"x-algolia-application-id":t};return{headers:()=>e===mn.WithinHeaders?r:{},queryParameters:()=>e===mn.WithinQueryParameters?r:{}}}(void 0!==e.authMode?e.authMode:mn.WithinHeaders,t,e.apiKey),r=function(e){const{hostsCache:t,logger:n,requester:r,requestsCache:o,responsesCache:a,timeouts:i,userAgent:l,hosts:s,queryParameters:c,headers:u}=e,d={hostsCache:t,logger:n,requester:r,requestsCache:o,responsesCache:a,timeouts:i,userAgent:l,headers:u,queryParameters:c,hosts:s.map((e=>wn(e))),read(e,t){const n=hn(t,d.timeouts.read),r=()=>kn(d,d.hosts.filter((e=>!!(e.accept&gn.Read))),e,n);if(!0!==(void 0!==n.cacheable?n.cacheable:e.cacheable))return r();const o={request:e,mappedRequestOptions:n,transporter:{queryParameters:d.queryParameters,headers:d.headers}};return d.responsesCache.get(o,(()=>d.requestsCache.get(o,(()=>d.requestsCache.set(o,r()).then((e=>Promise.all([d.requestsCache.delete(o),e])),(e=>Promise.all([d.requestsCache.delete(o),Promise.reject(e)]))).then((([e,t])=>t))))),{miss:e=>d.responsesCache.set(o,e)})},write:(e,t)=>kn(d,d.hosts.filter((e=>!!(e.accept&gn.Write))),e,hn(t,d.timeouts.write))};return d}({hosts:[{url:`${t}-dsn.algolia.net`,accept:gn.Read},{url:`${t}.algolia.net`,accept:gn.Write}].concat(dn([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...n.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),o={transporter:r,appId:t,addAlgoliaAgent(e,t){r.userAgent.add({segment:e,version:t})},clearCache:()=>Promise.all([r.requestsCache.clear(),r.responsesCache.clear()]).then((()=>{}))};return fn(o,e.methods)},jn=e=>(t,n)=>t.method===Sn?e.transporter.read(t,n):e.transporter.write(t,n),Pn=e=>(t,n={})=>fn({transporter:e.transporter,appId:e.appId,indexName:t},n.methods),In=e=>(t,n)=>{const r=t.map((e=>({...e,params:On(e.params||{})})));return e.transporter.read({method:xn,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)},Nn=e=>(t,n)=>Promise.all(t.map((t=>{const{facetName:r,facetQuery:o,...a}=t.params;return Pn(e)(t.indexName,{methods:{searchForFacetValues:Dn}}).searchForFacetValues(r,o,{...n,...a})}))),Rn=e=>(t,n,r)=>e.transporter.read({method:xn,path:pn("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:n},cacheable:!0},r),Ln=e=>(t,n)=>e.transporter.read({method:xn,path:pn("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},n),Dn=e=>(t,n,r)=>e.transporter.read({method:xn,path:pn("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:n},cacheable:!0},r),Mn=1,Fn=2,zn=3;function Bn(e,t,n){const r={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:e=>new Promise((t=>{const n=new XMLHttpRequest;n.open(e.method,e.url,!0),Object.keys(e.headers).forEach((t=>n.setRequestHeader(t,e.headers[t])));const r=(e,r)=>setTimeout((()=>{n.abort(),t({status:0,content:r,isTimedOut:!0})}),1e3*e),o=r(e.connectTimeout,"Connection timeout");let a;n.onreadystatechange=()=>{n.readyState>n.OPENED&&void 0===a&&(clearTimeout(o),a=r(e.responseTimeout,"Socket timeout"))},n.onerror=()=>{0===n.status&&(clearTimeout(o),clearTimeout(a),t({content:n.responseText||"Network request failed",status:n.status,isTimedOut:!1}))},n.onload=()=>{clearTimeout(o),clearTimeout(a),t({content:n.responseText,status:n.status,isTimedOut:!1})},n.send(e.data)}))},logger:(o=zn,{debug:(e,t)=>(Mn>=o&&console.debug(e,t),Promise.resolve()),info:(e,t)=>(Fn>=o&&console.info(e,t),Promise.resolve()),error:(e,t)=>(console.error(e,t),Promise.resolve())}),responsesCache:un(),requestsCache:un({serializable:!1}),hostsCache:cn({caches:[sn({key:`4.19.1-${e}`}),un()]}),userAgent:En("4.19.1").add({segment:"Browser",version:"lite"}),authMode:mn.WithinQueryParameters};var o;return Tn({...r,...n,methods:{search:In,searchForFacetValues:Nn,multipleQueries:In,multipleSearchForFacetValues:Nn,customRequest:jn,initIndex:e=>t=>Pn(e)(t,{methods:{search:Ln,searchForFacetValues:Dn,findAnswers:Rn}})}})}Bn.version="4.19.1";var $n=["footer","searchBox"];function Un(e){var t=e.appId,n=e.apiKey,o=e.indexName,i=e.placeholder,u=void 0===i?"Search docs":i,d=e.searchParameters,f=e.maxResultsPerGroup,p=e.onClose,m=void 0===p?Kt:p,h=e.transformItems,g=void 0===h?Wt:h,y=e.hitComponent,b=void 0===y?_t:y,v=e.resultsFooterComponent,w=void 0===v?function(){return null}:v,S=e.navigator,x=e.initialScrollY,k=void 0===x?0:x,E=e.transformSearchClient,_=void 0===E?Wt:E,O=e.disableUserPersonalization,C=void 0!==O&&O,A=e.initialQuery,T=void 0===A?"":A,j=e.translations,P=void 0===j?{}:j,I=e.getMissingResultsUrl,N=e.insights,R=void 0!==N&&N,L=P.footer,D=P.searchBox,M=s(P,$n),F=c(r.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),z=F[0],B=F[1],$=r.useRef(null),U=r.useRef(null),H=r.useRef(null),V=r.useRef(null),q=r.useRef(null),W=r.useRef(10),G=r.useRef("undefined"!=typeof window?window.getSelection().toString().slice(0,64):"").current,K=r.useRef(T||G).current,Y=function(e,t,n){return r.useMemo((function(){var r=Bn(e,t);return r.addAlgoliaAgent("docsearch","3.6.1"),!1===/docsearch.js \(.*\)/.test(r.transporter.userAgent.value)&&r.addAlgoliaAgent("docsearch-react","3.6.1"),n(r)}),[e,t,n])}(t,n,_),Q=r.useRef(ln({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(o),limit:10})).current,Z=r.useRef(ln({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(o),limit:0===Q.getAll().length?7:4})).current,X=r.useCallback((function(e){if(!C){var t="content"===e.type?e.__docsearch_parent:e;t&&-1===Q.getAll().findIndex((function(e){return e.objectID===t.objectID}))&&Z.add(t)}}),[Q,Z,C]),J=r.useCallback((function(e){if(z.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,n={eventName:"Item Selected",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};z.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(n)}}),[z.context.algoliaInsightsPlugin]),ee=r.useMemo((function(){return St({id:"docsearch",defaultActiveItemId:0,placeholder:u,openOnFocus:!0,initialState:{query:K,context:{searchSuggestions:[]}},insights:R,navigator:S,onStateChange:function(e){B(e.state)},getSources:function(e){var r=e.query,i=e.state,l=e.setContext,s=e.setStatus;if(!r)return C?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,n=e.event;X(t),Gt(n)||m()},getItemUrl:function(e){return e.item.url},getItems:function(){return Z.getAll()}},{sourceId:"favoriteSearches",onSelect:function(e){var t=e.item,n=e.event;X(t),Gt(n)||m()},getItemUrl:function(e){return e.item.url},getItems:function(){return Q.getAll()}}];var c=Boolean(R);return Y.search([{query:r,indexName:o,params:a({attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat(W.current),"hierarchy.lvl2:".concat(W.current),"hierarchy.lvl3:".concat(W.current),"hierarchy.lvl4:".concat(W.current),"hierarchy.lvl5:".concat(W.current),"hierarchy.lvl6:".concat(W.current),"content:".concat(W.current)],snippetEllipsisText:"\u2026",highlightPreTag:"<mark>",highlightPostTag:"</mark>",hitsPerPage:20,clickAnalytics:c},d)}]).catch((function(e){throw"RetryError"===e.name&&s("error"),e})).then((function(e){var r=e.results[0],s=r.hits,u=r.nbHits,d=qt(s,(function(e){return Zt(e)}),f);i.context.searchSuggestions.length<Object.keys(d).length&&l({searchSuggestions:Object.keys(d)}),l({nbHits:u});var p={};return c&&(p={__autocomplete_indexName:o,__autocomplete_queryID:r.queryID,__autocomplete_algoliaCredentials:{appId:t,apiKey:n}}),Object.values(d).map((function(e,t){return{sourceId:"hits".concat(t),onSelect:function(e){var t=e.item,n=e.event;X(t),Gt(n)||m()},getItemUrl:function(e){return e.item.url},getItems:function(){return Object.values(qt(e,(function(e){return e.hierarchy.lvl1}),f)).map(g).map((function(e){return e.map((function(t){var n=null,r=e.find((function(e){return"lvl1"===e.type&&e.hierarchy.lvl1===t.hierarchy.lvl1}));return"lvl1"!==t.type&&r&&(n=r),a(a({},t),{},{__docsearch_parent:n},p)}))})).flat()}}}))}))}})}),[o,d,f,Y,m,Z,Q,X,K,u,S,g,C,R,t,n]),te=ee.getEnvironmentProps,ne=ee.getRootProps,re=ee.refresh;return function(e){var t=e.getEnvironmentProps,n=e.panelElement,o=e.formElement,a=e.inputElement;r.useEffect((function(){if(n&&o&&a){var e=t({panelElement:n,formElement:o,inputElement:a}),r=e.onTouchStart,i=e.onTouchMove;return window.addEventListener("touchstart",r),window.addEventListener("touchmove",i),function(){window.removeEventListener("touchstart",r),window.removeEventListener("touchmove",i)}}}),[t,n,o,a])}({getEnvironmentProps:te,panelElement:V.current,formElement:H.current,inputElement:q.current}),function(e){var t=e.container;r.useEffect((function(){if(t){var e=t.querySelectorAll("a[href]:not([disabled]), button:not([disabled]), input:not([disabled])"),n=e[0],r=e[e.length-1];return t.addEventListener("keydown",o),function(){t.removeEventListener("keydown",o)}}function o(e){"Tab"===e.key&&(e.shiftKey?document.activeElement===n&&(e.preventDefault(),r.focus()):document.activeElement===r&&(e.preventDefault(),n.focus()))}}),[t])}({container:$.current}),r.useEffect((function(){return document.body.classList.add("DocSearch--active"),function(){var e,t;document.body.classList.remove("DocSearch--active"),null===(e=(t=window).scrollTo)||void 0===e||e.call(t,0,k)}}),[]),r.useEffect((function(){window.matchMedia("(max-width: 768px)").matches&&(W.current=5)}),[]),r.useEffect((function(){V.current&&(V.current.scrollTop=0)}),[z.query]),r.useEffect((function(){K.length>0&&(re(),q.current&&q.current.focus())}),[K,re]),r.useEffect((function(){function e(){if(U.current){var e=.01*window.innerHeight;U.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[]),r.createElement("div",l({ref:$},ne({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===z.status&&"DocSearch-Container--Stalled","error"===z.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&m()}}),r.createElement("div",{className:"DocSearch-Modal",ref:U},r.createElement("header",{className:"DocSearch-SearchBar",ref:H},r.createElement(on,l({},ee,{state:z,autoFocus:0===K.length,inputRef:q,isFromSelection:Boolean(K)&&K===G,translations:D,onClose:m}))),r.createElement("div",{className:"DocSearch-Dropdown",ref:V},r.createElement(nn,l({},ee,{indexName:o,state:z,hitComponent:b,resultsFooterComponent:w,disableUserPersonalization:C,recentSearches:Z,favoriteSearches:Q,inputRef:q,translations:M,getMissingResultsUrl:I,onItemClick:function(e,t){J(e),X(e),Gt(t)||m()}}))),r.createElement("footer",{className:"DocSearch-Footer"},r.createElement(Et,{translations:L}))))}function Hn(e){var t=e.isOpen,n=e.onOpen,o=e.onClose,a=e.onInput,i=e.searchButtonRef;r.useEffect((function(){function e(e){var r;(27===e.keyCode&&t||"k"===(null===(r=e.key)||void 0===r?void 0:r.toLowerCase())&&(e.metaKey||e.ctrlKey)||!function(e){var t=e.target,n=t.tagName;return t.isContentEditable||"INPUT"===n||"SELECT"===n||"TEXTAREA"===n}(e)&&"/"===e.key&&!t)&&(e.preventDefault(),t?o():document.body.classList.contains("DocSearch--active")||document.body.classList.contains("DocSearch--active")||n()),i&&i.current===document.activeElement&&a&&/[a-zA-Z0-9]/.test(String.fromCharCode(e.keyCode))&&a(e)}return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[t,n,o,a,i])}},4922:(e,t,n)=>{var r={"./prism-bash":8520,"./prism-toml":6290};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=4922},1660:(e,t,n)=>{"use strict";n.d(t,{A:()=>f});n(758);var r=n(6656),o=n.n(r),a=n(4054);const i={"0018adbe":[()=>n.e(6940).then(n.bind(n,9578)),"@site/docs/04-build/00-quickstart.mdx",9578],"01954a18":[()=>n.e(7838).then(n.bind(n,7073)),"@site/docs/05-contribute/01-github.mdx",7073],"0b38cd53":[()=>n.e(6673).then(n.bind(n,507)),"@site/docs/02-learn/04-advanced-concepts/01-specialized-nodes.mdx",507],13477880:[()=>n.e(105).then(n.bind(n,6778)),"@site/docs/01-explore/06-awesome-projects/01-only-peers.mdx",6778],"150624dd":[()=>n.e(2329).then(n.bind(n,2397)),"@site/docs/02-learn/01-terminology.mdx",2397],"15a7497e":[()=>n.e(7476).then(n.bind(n,4682)),"@site/docs/04-build/01-protocol-sdks/01-protocol-sdk.mdx",4682],17896441:[()=>Promise.all([n.e(1869),n.e(5910),n.e(8401)]).then(n.bind(n,7417)),"@theme/DocItem",7417],"190ec3a6":[()=>n.e(7707).then(n.bind(n,8026)),"@site/docs/02-learn/03-core-concepts/02-node/admin-api.mdx",8026],"1a4e3797":[()=>Promise.all([n.e(1869),n.e(2138)]).then(n.bind(n,3535)),"@theme/SearchPage",3535],"1db5d8e2":[()=>n.e(9650).then(n.bind(n,8136)),"@site/docs/03-getting-started/02-admin-dashboard.mdx",8136],"1df93b7f":[()=>Promise.all([n.e(1869),n.e(4583)]).then(n.bind(n,1621)),"@site/src/pages/index.tsx",1621],"22dd74f7":[()=>n.e(1567).then(n.t.bind(n,5226,19)),"@generated/docusaurus-plugin-content-docs/default/p/index-466.json",5226],"22e91f41":[()=>n.e(317).then(n.bind(n,1647)),"@site/docs/01-explore/06-awesome-projects/02-rock-paper-scissors.mdx",1647],"2e1d06d3":[()=>n.e(9502).then(n.bind(n,8582)),"@site/docs/04-build/04-dev-mode.mdx",8582],"3b38d041":[()=>n.e(8048).then(n.bind(n,4881)),"@site/docs/04-build/01-protocol-sdks/02-protocol-rs-sdk.mdx",4881],"42b3b6e0":[()=>n.e(6391).then(n.bind(n,1010)),"@site/docs/01-explore/01-intro.mdx",1010],"514a65da":[()=>n.e(3182).then(n.bind(n,5081)),"@site/docs/02-learn/03-core-concepts/02-node/04-storage.mdx",5081],"5af830f1":[()=>n.e(1337).then(n.bind(n,7247)),"@site/docs/01-explore/04-why-not/02-ipfs.mdx",7247],"5b892390":[()=>n.e(8725).then(n.bind(n,9971)),"@site/docs/02-learn/03-core-concepts/02-node/02-runtime.mdx",9971],"5e95c892":[()=>n.e(9647).then(n.bind(n,9193)),"@theme/DocsRoot",9193],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,4784)),"@generated/docusaurus.config",4784],"607ff301":[()=>n.e(7610).then(n.bind(n,5520)),"@site/docs/04-build/02-client-sdks/02-client-ts-sdk.mdx",5520],"61c19dbb":[()=>n.e(1367).then(n.bind(n,6382)),"@site/docs/03-getting-started/01-setup.mdx",6382],"64bee9bd":[()=>n.e(2074).then(n.bind(n,6712)),"@site/docs/02-learn/04-advanced-concepts/02-encryption.mdx",6712],"6a63bb8b":[()=>n.e(5219).then(n.bind(n,7483)),"@site/docs/03-getting-started/03-example-app.mdx",7483],"702ee7bc":[()=>n.e(2408).then(n.bind(n,1452)),"@site/docs/01-explore/03-manifesto.mdx",1452],"73ad1aec":[()=>n.e(7420).then(n.bind(n,3250)),"@site/docs/02-learn/03-core-concepts/02-node/01-client-node.mdx",3250],"7b9fe0bb":[()=>n.e(2822).then(n.bind(n,9007)),"@site/docs/01-explore/05-use-cases/05-trustless-gaming.mdx",9007],"889f3b97":[()=>n.e(5101).then(n.bind(n,6093)),"@site/docs/01-explore/05-use-cases/07-decentralized-identity-verification.mdx",6093],"9471ce52":[()=>n.e(9229).then(n.bind(n,6663)),"@site/docs/02-learn/03-core-concepts/03-applications.mdx",6663],"94b34882":[()=>n.e(3299).then(n.bind(n,4279)),"@site/docs/01-explore/05-use-cases/00-private-dao-management.mdx",4279],"962e3ea7":[()=>n.e(8077).then(n.bind(n,366)),"@site/docs/02-learn/03-core-concepts/02-node/05-network.mdx",366],"96f6c727":[()=>n.e(6373).then(n.bind(n,999)),"@site/docs/01-explore/04-why-not/03-zk.mdx",999],"9bc1354f":[()=>n.e(3208).then(n.bind(n,603)),"@site/docs/01-explore/05-use-cases/06-decentralized-edge-compute.mdx",603],a7456010:[()=>n.e(1235).then(n.t.bind(n,8552,19)),"@generated/docusaurus-plugin-content-pages/default/__plugin.json",8552],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,8659)),"@theme/DocVersionRoot",8659],a9154f55:[()=>n.e(1259).then(n.bind(n,2082)),"@site/docs/01-explore/05-use-cases/08-decentralized-intellectual-property-management.mdx",2082],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,1417)),"@theme/DocRoot",1417],aba21aa0:[()=>n.e(5742).then(n.t.bind(n,7093,19)),"@generated/docusaurus-plugin-content-docs/default/__plugin.json",7093],b9be9bb6:[()=>n.e(8086).then(n.bind(n,729)),"@site/docs/01-explore/05-use-cases/01-decentralized-voting-systems.mdx",729],bc9a0017:[()=>n.e(772).then(n.bind(n,7418)),"@site/docs/01-explore/05-use-cases/03-deprod.mdx",7418],bd9c48a9:[()=>n.e(2039).then(n.bind(n,9376)),"@site/docs/05-contribute/03-bounty-program.mdx",9376],bf6ec8e5:[()=>n.e(7607).then(n.bind(n,1610)),"@site/docs/02-learn/03-core-concepts/01-identity (DID).mdx",1610],c022fa4c:[()=>n.e(7074).then(n.bind(n,7702)),"@site/docs/01-explore/04-why-not/01-blockchain.mdx",7702],c141421f:[()=>n.e(957).then(n.t.bind(n,936,19)),"@generated/docusaurus-theme-search-algolia/default/__plugin.json",936],cc56a0d6:[()=>n.e(3021).then(n.bind(n,4434)),"@site/docs/06-resources/01-community-and-support.mdx",4434],d94758ba:[()=>n.e(21).then(n.bind(n,3630)),"@site/docs/01-explore/05-use-cases/02-decentralized-social-platforms.mdx",3630],e6fe25da:[()=>n.e(9667).then(n.bind(n,1777)),"@site/docs/02-learn/03-core-concepts/02-node/03-server.mdx",1777],e97a01d9:[()=>n.e(449).then(n.bind(n,3280)),"@site/docs/06-resources/02-learning.mdx",3280],f1cd7b65:[()=>n.e(4389).then(n.bind(n,1937)),"@site/docs/04-build/03-publish-app.mdx",1937],f4e7e388:[()=>n.e(1249).then(n.bind(n,1038)),"@site/docs/02-learn/02-architecture.mdx",1038],f582a9aa:[()=>n.e(2226).then(n.bind(n,4798)),"@site/docs/02-learn/03-core-concepts/04-context.mdx",4798],f773e51d:[()=>n.e(5293).then(n.bind(n,6379)),"@site/docs/05-contribute/02-hackathons.mdx",6379],fdb23cd9:[()=>n.e(546).then(n.bind(n,6772)),"@site/docs/01-explore/05-use-cases/04-decentralized-gig-economy.mdx",6772]};var l=n(6070);function s(e){let{error:t,retry:n,pastDelay:r}=e;return t?(0,l.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,l.jsx)("p",{children:String(t)}),(0,l.jsx)("div",{children:(0,l.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):r?(0,l.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,l.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,l.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,l.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,l.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,l.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,l.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,l.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,l.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var c=n(7773),u=n(8242);function d(e,t){if("*"===e)return o()({loading:s,loader:()=>n.e(5062).then(n.bind(n,5062)),modules:["@theme/NotFound"],webpack:()=>[5062],render(e,t){const n=e.default;return(0,l.jsx)(u.W,{value:{plugin:{name:"native",id:"default"}},children:(0,l.jsx)(n,{...t})})}});const r=a[`${e}-${t}`],d={},f=[],p=[],m=(0,c.A)(r);return Object.entries(m).forEach((e=>{let[t,n]=e;const r=i[n];r&&(d[t]=r[0],f.push(r[1]),p.push(r[2]))})),o().Map({loading:s,loader:d,modules:f,webpack:()=>p,render(t,n){const o=JSON.parse(JSON.stringify(r));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let i=o;const l=n.split(".");l.slice(0,-1).forEach((e=>{i=i[e]})),i[l[l.length-1]]=a}));const a=o.__comp;delete o.__comp;const i=o.__context;delete o.__context;const s=o.__props;return delete o.__props,(0,l.jsx)(u.W,{value:i,children:(0,l.jsx)(a,{...o,...s,...n})})}})}const f=[{path:"/search",component:d("/search","5de"),exact:!0},{path:"/",component:d("/","e5f"),exact:!0},{path:"/",component:d("/","fc3"),routes:[{path:"/",component:d("/","399"),routes:[{path:"/",component:d("/","563"),routes:[{path:"/build/client-sdks/client-ts-sdk",component:d("/build/client-sdks/client-ts-sdk","c43"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/dev-mode",component:d("/build/dev-mode","b7b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/protocol-sdks/protocol-rs-sdk",component:d("/build/protocol-sdks/protocol-rs-sdk","bd2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/protocol-sdks/protocol-sdk",component:d("/build/protocol-sdks/protocol-sdk","3f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/publish-app",component:d("/build/publish-app","4a1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/build/quickstart",component:d("/build/quickstart","846"),exact:!0,sidebar:"tutorialSidebar"},{path:"/contribute/bounty-program",component:d("/contribute/bounty-program","0d1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/contribute/github",component:d("/contribute/github","0ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/contribute/hackathons",component:d("/contribute/hackathons","c04"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/awesome-projects/only-peers",component:d("/explore/awesome-projects/only-peers","171"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/awesome-projects/rock-paper-scissors",component:d("/explore/awesome-projects/rock-paper-scissors","e82"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/intro",component:d("/explore/intro","d49"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/manifesto",component:d("/explore/manifesto","c4f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-edge-compute",component:d("/explore/use-cases/decentralized-edge-compute","557"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-gig-economy",component:d("/explore/use-cases/decentralized-gig-economy","936"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-identity-verification",component:d("/explore/use-cases/decentralized-identity-verification","14b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-intellectual-property-management",component:d("/explore/use-cases/decentralized-intellectual-property-management","589"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-social-platforms",component:d("/explore/use-cases/decentralized-social-platforms","def"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/decentralized-voting-systems",component:d("/explore/use-cases/decentralized-voting-systems","f14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/deprod",component:d("/explore/use-cases/deprod","0c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/private-daos-management",component:d("/explore/use-cases/private-daos-management","45a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/use-cases/trustless-gaming",component:d("/explore/use-cases/trustless-gaming","b5d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/why-not/blockchain",component:d("/explore/why-not/blockchain","145"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/why-not/ipfs",component:d("/explore/why-not/ipfs","295"),exact:!0,sidebar:"tutorialSidebar"},{path:"/explore/why-not/zk",component:d("/explore/why-not/zk","e4b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/admin-dashboard",component:d("/getting-started/admin-dashboard","054"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/example-app",component:d("/getting-started/example-app","a45"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/setup",component:d("/getting-started/setup","f38"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/advanced-concepts/encryption",component:d("/learn/advanced-concepts/encryption","8ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/advanced-concepts/specialized-nodes",component:d("/learn/advanced-concepts/specialized-nodes","10b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/architecture",component:d("/learn/architecture","cf7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/applications",component:d("/learn/core-concepts/applications","621"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/contexts",component:d("/learn/core-concepts/contexts","8bb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/identity",component:d("/learn/core-concepts/identity","ee2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/admin-client-api",component:d("/learn/core-concepts/node/admin-client-api","59c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/client-node",component:d("/learn/core-concepts/node/client-node","21e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/network",component:d("/learn/core-concepts/node/network","815"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/runtime",component:d("/learn/core-concepts/node/runtime","024"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/server",component:d("/learn/core-concepts/node/server","c17"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/core-concepts/node/storage",component:d("/learn/core-concepts/node/storage","c14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/learn/terminology",component:d("/learn/terminology","964"),exact:!0,sidebar:"tutorialSidebar"},{path:"/resources/community-and-support",component:d("/resources/community-and-support","892"),exact:!0,sidebar:"tutorialSidebar"},{path:"/resources/learning",component:d("/resources/learning","b30"),exact:!0,sidebar:"tutorialSidebar"}]}]}]},{path:"*",component:d("*")}]},4169:(e,t,n)=>{"use strict";n.d(t,{o:()=>a,x:()=>i});var r=n(758),o=n(6070);const a=r.createContext(!1);function i(e){let{children:t}=e;const[n,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{i(!0)}),[]),(0,o.jsx)(a.Provider,{value:n,children:t})}},1657:(e,t,n)=>{"use strict";var r=n(758),o=n(9576),a=n(932),i=n(1742),l=n(4784),s=n(3733);const c=[n(4844),n(2013),n(6071),n(9041)];var u=n(1660),d=n(5557),f=n(1977),p=n(6070);function m(e){let{children:t}=e;return(0,p.jsx)(p.Fragment,{children:t})}var h=n(8472),g=n(9014),y=n(7437),b=n(1781),v=n(4804),w=n(2074),S=n(1287),x=n(8754),k=n(1574),E=n(8040);function _(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,g.A)(),r=(0,w.o)(),o=n[e].htmlLang,a=e=>e.replace("-","_");return(0,p.jsxs)(h.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,p.jsx)("meta",{property:"og:locale",content:a(o)}),Object.values(n).filter((e=>o!==e.htmlLang)).map((e=>(0,p.jsx)("meta",{property:"og:locale:alternate",content:a(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function O(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,g.A)(),r=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,g.A)(),{pathname:r}=(0,d.zy)();return e+(0,k.Ks)((0,y.Ay)(r),{trailingSlash:n,baseUrl:t})}(),o=t?`${n}${t}`:r;return(0,p.jsxs)(h.A,{children:[(0,p.jsx)("meta",{property:"og:url",content:o}),(0,p.jsx)("link",{rel:"canonical",href:o})]})}function C(){const{i18n:{currentLocale:e}}=(0,g.A)(),{metadata:t,image:n}=(0,b.p)();return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(h.A,{children:[(0,p.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,p.jsx)("body",{className:S.w})]}),n&&(0,p.jsx)(v.be,{image:n}),(0,p.jsx)(O,{}),(0,p.jsx)(_,{}),(0,p.jsx)(E.A,{tag:x.C,locale:e}),(0,p.jsx)(h.A,{children:t.map(((e,t)=>(0,p.jsx)("meta",{...e},t)))})]})}const A=new Map;var T=n(4169),j=n(3853),P=n(3601);function I(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const o=c.map((t=>{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>o.forEach((e=>e?.()))}const N=function(e){let{children:t,location:n,previousLocation:r}=e;return(0,P.A)((()=>{r!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,o=t.hash===n.hash,a=t.search===n.search;if(r&&o&&!a)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:r}),I("onRouteDidUpdate",{previousLocation:r,location:n}))}),[r,n]),t};function R(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,f.u)(u.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class L extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=s.A.canUseDOM?I("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=I("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),R(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,p.jsx)(N,{previousLocation:this.previousLocation,location:t,children:(0,p.jsx)(d.qh,{location:t,render:()=>e})})}}const D=L,M="__docusaurus-base-url-issue-banner-container",F="__docusaurus-base-url-issue-banner",z="__docusaurus-base-url-issue-banner-suggestion-container";function B(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '${M}';\n var bannerHtml = ${JSON.stringify(function(e){return`\n<div id="${F}" style="border: thick solid red; background-color: rgb(255, 230, 179); margin: 20px; padding: 20px; font-size: 20px;">\n <p style="font-weight: bold; font-size: 30px;">Your Docusaurus site did not load properly.</p>\n <p>A very common reason is a wrong site <a href="https://docusaurus.io/docs/docusaurus.config.js/#baseUrl" style="font-weight: bold;">baseUrl configuration</a>.</p>\n <p>Current configured baseUrl = <span style="font-weight: bold; color: red;">${e}</span> ${"/"===e?" (default value)":""}</p>\n <p>We suggest trying baseUrl = <span id="${z}" style="font-weight: bold; color: green;"></span></p>\n</div>\n`}(e)).replace(/</g,"\\<")};\n bannerContainer.innerHTML = bannerHtml;\n document.body.prepend(bannerContainer);\n var suggestionContainer = document.getElementById('${z}');\n var actualHomePagePath = window.location.pathname;\n var suggestedBaseUrl = actualHomePagePath.substr(-1) === '/'\n ? actualHomePagePath\n : actualHomePagePath + '/';\n suggestionContainer.innerHTML = suggestedBaseUrl;\n}\n`}function $(){const{siteConfig:{baseUrl:e}}=(0,g.A)();return(0,p.jsx)(p.Fragment,{children:!s.A.canUseDOM&&(0,p.jsx)(h.A,{children:(0,p.jsx)("script",{children:B(e)})})})}function U(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,g.A)(),{pathname:n}=(0,d.zy)();return t&&n===e?(0,p.jsx)($,{}):null}function H(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:r,localeConfigs:o}}=(0,g.A)(),a=(0,y.Ay)(e),{htmlLang:i,direction:l}=o[r];return(0,p.jsxs)(h.A,{children:[(0,p.jsx)("html",{lang:i,dir:l}),(0,p.jsx)("title",{children:t}),(0,p.jsx)("meta",{property:"og:title",content:t}),(0,p.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&(0,p.jsx)("meta",{name:"robots",content:"noindex, nofollow"}),e&&(0,p.jsx)("link",{rel:"icon",href:a})]})}var V=n(8914),q=n(2195);function W(){const e=(0,q.A)();return(0,p.jsx)(h.A,{children:(0,p.jsx)("html",{"data-has-hydrated":e})})}const G=(0,f.v)(u.A);function K(){const e=function(e){if(A.has(e.pathname))return{...e,pathname:A.get(e.pathname)};if((0,f.u)(u.A,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return A.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return A.set(e.pathname,t),{...e,pathname:t}}((0,d.zy)());return(0,p.jsx)(D,{location:e,children:G})}function Y(){return(0,p.jsx)(V.A,{children:(0,p.jsx)(j.l,{children:(0,p.jsxs)(T.x,{children:[(0,p.jsxs)(m,{children:[(0,p.jsx)(H,{}),(0,p.jsx)(C,{}),(0,p.jsx)(U,{}),(0,p.jsx)(K,{})]}),(0,p.jsx)(W,{})]})})})}var Q=n(4054);const Z=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;o?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var X=n(7773);const J=new Set,ee=new Set,te=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ne={prefetch:e=>{if(!(e=>!te()&&!ee.has(e)&&!J.has(e))(e))return!1;J.add(e);const t=(0,f.u)(u.A,e).flatMap((e=>{return t=e.route.path,Object.entries(Q).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,X.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Z(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!te()&&!ee.has(e))(e)&&(ee.add(e),R(e))},re=Object.freeze(ne);function oe(e){let{children:t}=e;return"hash"===l.default.future.experimental_router?(0,p.jsx)(i.I9,{children:t}):(0,p.jsx)(i.Kd,{children:t})}const ae=Boolean(!0);if(s.A.canUseDOM){window.docusaurus=re;const e=document.getElementById("__docusaurus"),t=(0,p.jsx)(a.vd,{children:(0,p.jsx)(oe,{children:(0,p.jsx)(Y,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},i=()=>{if(window.docusaurusRoot)window.docusaurusRoot.render(t);else if(ae)window.docusaurusRoot=o.hydrateRoot(e,t,{onRecoverableError:n});else{const r=o.createRoot(e,{onRecoverableError:n});r.render(t),window.docusaurusRoot=r}};R(window.location.pathname).then((()=>{(0,r.startTransition)(i)}))}},3853:(e,t,n)=>{"use strict";n.d(t,{o:()=>d,l:()=>f});var r=n(758),o=n(4784);const a=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/","versions":[{"name":"current","label":"Next","isLast":true,"path":"/","mainDocId":"explore/intro","docs":[{"id":"build/client-sdks/client-ts-sdk","path":"/build/client-sdks/client-ts-sdk","sidebar":"tutorialSidebar"},{"id":"build/dev-mode","path":"/build/dev-mode","sidebar":"tutorialSidebar"},{"id":"build/protocol-sdks/protocol-rs-sdk","path":"/build/protocol-sdks/protocol-rs-sdk","sidebar":"tutorialSidebar"},{"id":"build/protocol-sdks/protocol-sdk","path":"/build/protocol-sdks/protocol-sdk","sidebar":"tutorialSidebar"},{"id":"build/publish-app","path":"/build/publish-app","sidebar":"tutorialSidebar"},{"id":"build/quickstart","path":"/build/quickstart","sidebar":"tutorialSidebar"},{"id":"contribute/bounty-program","path":"/contribute/bounty-program","sidebar":"tutorialSidebar"},{"id":"contribute/github","path":"/contribute/github","sidebar":"tutorialSidebar"},{"id":"contribute/hackathons","path":"/contribute/hackathons","sidebar":"tutorialSidebar"},{"id":"explore/awesome-projects/only-peers","path":"/explore/awesome-projects/only-peers","sidebar":"tutorialSidebar"},{"id":"explore/awesome-projects/rock-paper-scissors","path":"/explore/awesome-projects/rock-paper-scissors","sidebar":"tutorialSidebar"},{"id":"explore/intro","path":"/explore/intro","sidebar":"tutorialSidebar"},{"id":"explore/manifesto","path":"/explore/manifesto","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-edge-compute","path":"/explore/use-cases/decentralized-edge-compute","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-gig-economy","path":"/explore/use-cases/decentralized-gig-economy","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-identity-verification","path":"/explore/use-cases/decentralized-identity-verification","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-intellectual-property-management","path":"/explore/use-cases/decentralized-intellectual-property-management","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-social-platforms","path":"/explore/use-cases/decentralized-social-platforms","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/decentralized-voting-systems","path":"/explore/use-cases/decentralized-voting-systems","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/deprod","path":"/explore/use-cases/deprod","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/private-daos-management","path":"/explore/use-cases/private-daos-management","sidebar":"tutorialSidebar"},{"id":"explore/use-cases/trustless-gaming","path":"/explore/use-cases/trustless-gaming","sidebar":"tutorialSidebar"},{"id":"explore/why-not/blockchain","path":"/explore/why-not/blockchain","sidebar":"tutorialSidebar"},{"id":"explore/why-not/ipfs","path":"/explore/why-not/ipfs","sidebar":"tutorialSidebar"},{"id":"explore/why-not/zk","path":"/explore/why-not/zk","sidebar":"tutorialSidebar"},{"id":"getting-started/admin-dashboard","path":"/getting-started/admin-dashboard","sidebar":"tutorialSidebar"},{"id":"getting-started/example-app","path":"/getting-started/example-app","sidebar":"tutorialSidebar"},{"id":"getting-started/setup","path":"/getting-started/setup","sidebar":"tutorialSidebar"},{"id":"learn/advanced-concepts/encryption","path":"/learn/advanced-concepts/encryption","sidebar":"tutorialSidebar"},{"id":"learn/advanced-concepts/specialized-nodes","path":"/learn/advanced-concepts/specialized-nodes","sidebar":"tutorialSidebar"},{"id":"learn/architecture","path":"/learn/architecture","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/applications","path":"/learn/core-concepts/applications","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/contexts","path":"/learn/core-concepts/contexts","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/identity","path":"/learn/core-concepts/identity","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/admin-client-api","path":"/learn/core-concepts/node/admin-client-api","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/client-node","path":"/learn/core-concepts/node/client-node","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/network","path":"/learn/core-concepts/node/network","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/runtime","path":"/learn/core-concepts/node/runtime","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/server","path":"/learn/core-concepts/node/server","sidebar":"tutorialSidebar"},{"id":"learn/core-concepts/node/storage","path":"/learn/core-concepts/node/storage","sidebar":"tutorialSidebar"},{"id":"learn/terminology","path":"/learn/terminology","sidebar":"tutorialSidebar"},{"id":"resources/community-and-support","path":"/resources/community-and-support","sidebar":"tutorialSidebar"},{"id":"resources/learning","path":"/resources/learning","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/explore/intro","label":"explore/intro"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var l=n(2654);const s=JSON.parse('{"docusaurusVersion":"3.5.2","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.5.2"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.5.2"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.5.2"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.5.2"},"docusaurus-theme-search-algolia":{"type":"package","name":"@docusaurus/theme-search-algolia","version":"3.5.2"},"docusaurus-plugin-sass":{"type":"package","name":"docusaurus-plugin-sass","version":"0.2.5"}}}');var c=n(6070);const u={siteConfig:o.default,siteMetadata:s,globalData:a,i18n:i,codeTranslations:l},d=r.createContext(u);function f(e){let{children:t}=e;return(0,c.jsx)(d.Provider,{value:u,children:t})}},8914:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var r=n(758),o=n(3733),a=n(8472),i=n(1574),l=n(6848),s=n(8242),c=n(6070);function u(e){let{error:t,tryAgain:n}=e;return(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,c.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,c.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,c.jsx)(d,{error:t})]})}function d(e){let{error:t}=e;const n=(0,i.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,c.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function f(e){let{children:t}=e;return(0,c.jsx)(s.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function p(e){let{error:t,tryAgain:n}=e;return(0,c.jsx)(f,{children:(0,c.jsxs)(h,{fallback:()=>(0,c.jsx)(u,{error:t,tryAgain:n}),children:[(0,c.jsx)(a.A,{children:(0,c.jsx)("title",{children:"Page Error"})}),(0,c.jsx)(l.A,{children:(0,c.jsx)(u,{error:t,tryAgain:n})})]})})}const m=e=>(0,c.jsx)(p,{...e});class h extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??m)(e)}return e??null}}},3733:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,o={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},8472:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(758);var r=n(932),o=n(6070);function a(e){return(0,o.jsx)(r.mg,{...e})}},9410:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});var r=n(758),o=n(1742),a=n(1574),i=n(9014),l=n(2154),s=n(3733),c=n(9102),u=n(7437),d=n(6070);function f(e,t){let{isNavLink:n,to:f,href:p,activeClassName:m,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:y=!0,...b}=e;const{siteConfig:v}=(0,i.A)(),{trailingSlash:w,baseUrl:S}=v,x=v.future.experimental_router,{withBaseUrl:k}=(0,u.hH)(),E=(0,c.A)(),_=(0,r.useRef)(null);(0,r.useImperativeHandle)(t,(()=>_.current));const O=f||p;const C=(0,l.A)(O),A=O?.replace("pathname://","");let T=void 0!==A?(j=A,y&&(e=>e.startsWith("/"))(j)?k(j):j):void 0;var j;"hash"===x&&T?.startsWith("./")&&(T=T?.slice(1)),T&&C&&(T=(0,a.Ks)(T,{trailingSlash:w,baseUrl:S}));const P=(0,r.useRef)(!1),I=n?o.k2:o.N_,N=s.A.canUseIntersectionObserver,R=(0,r.useRef)(),L=()=>{P.current||null==T||(window.docusaurus.preload(T),P.current=!0)};(0,r.useEffect)((()=>(!N&&C&&s.A.canUseDOM&&null!=T&&window.docusaurus.prefetch(T),()=>{N&&R.current&&R.current.disconnect()})),[R,T,N,C]);const D=T?.startsWith("#")??!1,M=!b.target||"_self"===b.target,F=!T||!C||!M||D&&"hash"!==x;g||!D&&F||E.collectLink(T),b.id&&E.collectAnchor(b.id);const z={};return F?(0,d.jsx)("a",{ref:_,href:T,...O&&!C&&{target:"_blank",rel:"noopener noreferrer"},...b,...z}):(0,d.jsx)(I,{...b,onMouseEnter:L,onTouchStart:L,innerRef:e=>{_.current=e,N&&e&&C&&(R.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(R.current.unobserve(e),R.current.disconnect(),null!=T&&window.docusaurus.prefetch(T))}))})),R.current.observe(e))},to:T,...n&&{isActive:h,activeClassName:m},...z})}const p=r.forwardRef(f)},427:(e,t,n)=>{"use strict";n.d(t,{A:()=>c,T:()=>s});var r=n(758),o=n(6070);function a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var i=n(2654);function l(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return i[t??n]??n??t}function s(e,t){let{message:n,id:r}=e;return a(l({message:n,id:r}),t)}function c(e){let{children:t,id:n,values:r}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal <Translate> children",t),new Error("The Docusaurus <Translate> component only accept simple string values");const i=l({message:t,id:n});return(0,o.jsx)(o.Fragment,{children:a(i,r)})}},3125:(e,t,n)=>{"use strict";n.d(t,{W:()=>r});const r="default"},2154:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!r(e)}n.d(t,{A:()=>o,z:()=>r})},7437:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>l,hH:()=>i});var r=n(758),o=n(9014),a=n(2154);function i(){const{siteConfig:e}=(0,o.A)(),{baseUrl:t,url:n}=e,i=e.future.experimental_router,l=(0,r.useCallback)(((e,r)=>function(e){let{siteUrl:t,baseUrl:n,url:r,options:{forcePrependBaseUrl:o=!1,absolute:i=!1}={},router:l}=e;if(!r||r.startsWith("#")||(0,a.z)(r))return r;if("hash"===l)return r.startsWith("/")?`.${r}`:`./${r}`;if(o)return n+r.replace(/^\//,"");if(r===n.replace(/\/$/,""))return n;const s=r.startsWith(n)?r:n+r.replace(/^\//,"");return i?t+s:s}({siteUrl:n,baseUrl:t,url:e,options:r,router:i})),[n,t,i]);return{withBaseUrl:l}}function l(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},9102:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(758);n(6070);const o=r.createContext({collectAnchor:()=>{},collectLink:()=>{}}),a=()=>(0,r.useContext)(o);function i(){return a()}},9014:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(758),o=n(3853);function a(){return(0,r.useContext)(o.o)}},2195:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(758),o=n(4169);function a(){return(0,r.useContext)(o.o)}},3601:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(758);const o=n(3733).A.canUseDOM?r.useLayoutEffect:r.useEffect},7773:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function o(e){const t={};return function e(n,o){Object.entries(n).forEach((n=>{let[a,i]=n;const l=o?`${o}.${a}`:a;r(i)?e(i,l):t[l]=i}))}(e),t}},8242:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,o:()=>a});var r=n(758),o=n(6070);const a=r.createContext(null);function i(e){let{children:t,value:n}=e;const i=r.useContext(a),l=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:i,value:n})),[i,n]);return(0,o.jsx)(a.Provider,{value:l,children:t})}},3875:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>g,XK:()=>v,g1:()=>b});var r=n(758),o=n(5755),a=n(3125),i=n(1781),l=n(8805),s=n(1367),c=n(6070);const u=e=>`docs-preferred-version-${e}`,d={save:(e,t,n)=>{(0,l.Wf)(u(e),{persistence:t}).set(n)},read:(e,t)=>(0,l.Wf)(u(e),{persistence:t}).get(),clear:(e,t)=>{(0,l.Wf)(u(e),{persistence:t}).del()}},f=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const p=r.createContext(null);function m(){const e=(0,o.Gy)(),t=(0,i.p)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[a,l]=(0,r.useState)((()=>f(n)));(0,r.useEffect)((()=>{l(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function o(e){const t=d.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(d.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,o(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[a,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){d.save(e,t,n),l((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function h(e){let{children:t}=e;const n=m();return(0,c.jsx)(p.Provider,{value:n,children:t})}function g(e){let{children:t}=e;return(0,c.jsx)(h,{children:t})}function y(){const e=(0,r.useContext)(p);if(!e)throw new s.dV("DocsPreferredVersionContextProvider");return e}function b(e){void 0===e&&(e=a.W);const t=(0,o.ht)(e),[n,i]=y(),{preferredVersionName:l}=n[e];return{preferredVersion:t.versions.find((e=>e.name===l))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}function v(){const e=(0,o.Gy)(),[t]=y();function n(n){const r=e[n],{preferredVersionName:o}=t[n];return r.versions.find((e=>e.name===o))??null}const r=Object.keys(e);return Object.fromEntries(r.map((e=>[e,n(e)])))}},6392:(e,t,n)=>{"use strict";n.d(t,{k:()=>a,v:()=>i});var r=n(5755),o=n(3875);function a(e,t){return`docs-${e}-${t}`}function i(){const e=(0,r.Gy)(),t=(0,r.gk)(),n=(0,o.XK)();return[...Object.keys(e).map((function(r){const o=t?.activePlugin.pluginId===r?t.activeVersion:void 0,i=n[r],l=e[r].versions.find((e=>e.isLast));return a(r,(o??i??l).name)}))]}},6:(e,t,n)=>{"use strict";n.d(t,{V:()=>s,t:()=>c});var r=n(758),o=n(1367),a=n(6070);const i=Symbol("EmptyContext"),l=r.createContext(i);function s(e){let{children:t,name:n,items:o}=e;const i=(0,r.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return(0,a.jsx)(l.Provider,{value:i,children:t})}function c(){const e=(0,r.useContext)(l);if(e===i)throw new o.dV("DocsSidebarProvider");return e}},2847:(e,t,n)=>{"use strict";n.d(t,{Nr:()=>f,w8:()=>h,B5:()=>k,Vd:()=>w,QB:()=>x,fW:()=>S,OF:()=>v,Y:()=>y});var r=n(758),o=n(5557),a=n(1977),i=n(5755),l=n(8988);function s(e){return Array.from(new Set(e))}var c=n(3875),u=n(6518),d=n(6);function f(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=f(t);if(e)return e}}(e):void 0:e.href}const p=(e,t)=>void 0!==e&&(0,l.ys)(e,t),m=(e,t)=>e.some((e=>h(e,t)));function h(e,t){return"link"===e.type?p(e.href,t):"category"===e.type&&(p(e.href,t)||m(e.items,t))}function g(e,t){switch(e.type){case"category":return h(e,t)||e.items.some((e=>g(e,t)));case"link":return!e.unlisted||h(e,t);default:return!0}}function y(e,t){return(0,r.useMemo)((()=>e.filter((e=>g(e,t)))),[e,t])}function b(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const o=[];return function e(t){for(const a of t)if("category"===a.type&&((0,l.ys)(a.href,n)||e(a.items))||"link"===a.type&&(0,l.ys)(a.href,n)){return r&&"category"!==a.type||o.unshift(a),!0}return!1}(t),o}function v(){const e=(0,d.t)(),{pathname:t}=(0,o.zy)(),n=(0,i.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?b({sidebarItems:e.items,pathname:t}):null}function w(e){const{activeVersion:t}=(0,i.zK)(e),{preferredVersion:n}=(0,c.g1)(e),o=(0,i.r7)(e);return(0,r.useMemo)((()=>s([t,n,o].filter(Boolean))),[t,n,o])}function S(e,t){const n=w(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function x(e,t){const n=w(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${s(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function k(e){let{route:t}=e;const n=(0,o.zy)(),r=(0,u.r)(),i=t.routes,l=i.find((e=>(0,o.B6)(n.pathname,e)));if(!l)return null;const s=l.sidebar,c=s?r.docsSidebars[s]:void 0;return{docElement:(0,a.v)(i),sidebarName:s,sidebarItems:c}}},6518:(e,t,n)=>{"use strict";n.d(t,{n:()=>l,r:()=>s});var r=n(758),o=n(1367),a=n(6070);const i=r.createContext(null);function l(e){let{children:t,version:n}=e;return(0,a.jsx)(i.Provider,{value:n,children:t})}function s(){const e=(0,r.useContext)(i);if(null===e)throw new o.dV("DocsVersionProvider");return e}},5755:(e,t,n)=>{"use strict";n.d(t,{zK:()=>y,vT:()=>p,gk:()=>m,Gy:()=>d,HW:()=>b,ht:()=>f,r7:()=>g,jh:()=>h});var r=n(5557),o=n(9014),a=n(3125);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,o.A)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const l=e=>e.versions.find((e=>e.isLast));function s(e,t){return[...e.versions].sort(((e,t)=>e.path===t.path?0:e.path.includes(t.path)?-1:t.path.includes(e.path)?1:0)).find((e=>!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})))}function c(e,t){const n=s(e,t),o=n?.docs.find((e=>!!(0,r.B6)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:o,alternateDocVersions:o?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(o.id):{}}}const u={},d=()=>i("docusaurus-plugin-content-docs")??u,f=e=>{try{return function(e,t,n){void 0===t&&(t=a.W),void 0===n&&(n={});const r=i(e),o=r?.[t];if(!o&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return o}("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function p(e){void 0===e&&(e={});const t=d(),{pathname:n}=(0,r.zy)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.B6)(t,{path:n.path,exact:!1,strict:!1})})),a=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!a&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return a}(t,n,e)}function m(e){void 0===e&&(e={});const t=p(e),{pathname:n}=(0,r.zy)();if(!t)return;return{activePlugin:t,activeVersion:s(t.pluginData,n)}}function h(e){return f(e).versions}function g(e){const t=f(e);return l(t)}function y(e){const t=f(e),{pathname:n}=(0,r.zy)();return c(t,n)}function b(e){const t=f(e),{pathname:n}=(0,r.zy)();return function(e,t){const n=l(e);return{latestDocSuggestion:c(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},6656:(e,t,n)=>{"use strict";function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function o(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var l=n(758),s=[],c=[];var u=l.createContext(null);function d(e){var t=e(),n={loading:!0,loaded:null,error:null};return n.promise=t.then((function(e){return n.loading=!1,n.loaded=e,e})).catch((function(e){throw n.loading=!1,n.error=e,e})),n}function f(e){var t={loading:!1,loaded:{},error:null},n=[];try{Object.keys(e).forEach((function(r){var o=d(e[r]);o.loading?t.loading=!0:(t.loaded[r]=o.loaded,t.error=o.error),n.push(o.promise),o.promise.then((function(e){t.loaded[r]=e})).catch((function(e){t.error=e}))}))}catch(r){t.error=r}return t.promise=Promise.all(n).then((function(e){return t.loading=!1,e})).catch((function(e){throw t.loading=!1,e})),t}function p(e,t){return l.createElement((n=e)&&n.__esModule?n.default:n,t);var n}function m(e,t){var d,f;if(!t.loading)throw new Error("react-loadable requires a `loading` component");var m=i({loader:null,loading:null,delay:200,timeout:null,render:p,webpack:null,modules:null},t),h=null;function g(){return h||(h=e(m.loader)),h.promise}return s.push(g),"function"==typeof m.webpack&&c.push((function(){if((0,m.webpack)().every((function(e){return void 0!==e&&void 0!==n.m[e]})))return g()})),f=d=function(t){function n(n){var r;return a(o(o(r=t.call(this,n)||this)),"retry",(function(){r.setState({error:null,loading:!0,timedOut:!1}),h=e(m.loader),r._loadModule()})),g(),r.state={error:h.error,pastDelay:!1,timedOut:!1,loading:h.loading,loaded:h.loaded},r}r(n,t),n.preload=function(){return g()};var i=n.prototype;return i.UNSAFE_componentWillMount=function(){this._loadModule()},i.componentDidMount=function(){this._mounted=!0},i._loadModule=function(){var e=this;if(this.context&&Array.isArray(m.modules)&&m.modules.forEach((function(t){e.context.report(t)})),h.loading){var t=function(t){e._mounted&&e.setState(t)};"number"==typeof m.delay&&(0===m.delay?this.setState({pastDelay:!0}):this._delay=setTimeout((function(){t({pastDelay:!0})}),m.delay)),"number"==typeof m.timeout&&(this._timeout=setTimeout((function(){t({timedOut:!0})}),m.timeout));var n=function(){t({error:h.error,loaded:h.loaded,loading:h.loading}),e._clearTimeouts()};h.promise.then((function(){return n(),null})).catch((function(e){return n(),null}))}},i.componentWillUnmount=function(){this._mounted=!1,this._clearTimeouts()},i._clearTimeouts=function(){clearTimeout(this._delay),clearTimeout(this._timeout)},i.render=function(){return this.state.loading||this.state.error?l.createElement(m.loading,{isLoading:this.state.loading,pastDelay:this.state.pastDelay,timedOut:this.state.timedOut,error:this.state.error,retry:this.retry}):this.state.loaded?m.render(this.state.loaded,this.props):null},n}(l.Component),a(d,"contextType",u),f}function h(e){return m(d,e)}h.Map=function(e){if("function"!=typeof e.render)throw new Error("LoadableMap requires a `render(loaded, props)` function");return m(f,e)};var g=function(e){function t(){return e.apply(this,arguments)||this}return r(t,e),t.prototype.render=function(){return l.createElement(u.Provider,{value:{report:this.props.report}},l.Children.only(this.props.children))},t}(l.Component);function y(e){for(var t=[];e.length;){var n=e.pop();t.push(n())}return Promise.all(t).then((function(){if(e.length)return y(e)}))}h.Capture=g,h.preloadAll=function(){return new Promise((function(e,t){y(s).then(e,t)}))},h.preloadReady=function(){return new Promise((function(e,t){y(c).then(e,e)}))},e.exports=h},6071:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var r=n(8744),o=n.n(r);o().configure({showSpinner:!1});const a={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{o().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){o().done()}}},2013:(e,t,n)=>{"use strict";var r=n(3477),o=n(4784);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{"php"===e&&n(1274),n(4922)(`./prism-${e}`)})),delete globalThis.Prism}(r.My)},9849:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(758);var r=n(3526),o=n(427),a=n(1781),i=n(9410),l=n(9102);const s={anchorWithStickyNavbar:"anchorWithStickyNavbar_OW8r",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar__WcE"};var c=n(6070);function u(e){let{as:t,id:n,...u}=e;const d=(0,l.A)(),{navbar:{hideOnScroll:f}}=(0,a.p)();if("h1"===t||!n)return(0,c.jsx)(t,{...u,id:void 0});d.collectAnchor(n);const p=(0,o.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof u.children?u.children:n});return(0,c.jsxs)(t,{...u,className:(0,r.A)("anchor",f?s.anchorWithHideOnScrollNavbar:s.anchorWithStickyNavbar,u.className),id:n,children:[u.children,(0,c.jsx)(i.A,{className:"hash-link",to:`#${n}`,"aria-label":p,title:p,children:"\u200b"})]})}},4065:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(758);const r={iconExternalLink:"iconExternalLink_ieDw"};var o=n(6070);function a(e){let{width:t=13.5,height:n=13.5}=e;return(0,o.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:r.iconExternalLink,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},6848:(e,t,n)=>{"use strict";n.d(t,{A:()=>Ot});var r=n(758),o=n(3526),a=n(8914),i=n(4804),l=n(5557),s=n(427),c=n(7259),u=n(6070);const d="__docusaurus_skipToContent_fallback";function f(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function p(){const e=(0,r.useRef)(null),{action:t}=(0,l.W6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&f(t)}),[]);return(0,c.$)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&f(e.current)})),{containerRef:e,onClick:n}}const m=(0,s.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function h(e){const t=e.children??m,{containerRef:n,onClick:r}=p();return(0,u.jsx)("div",{ref:n,role:"region","aria-label":m,children:(0,u.jsx)("a",{...e,href:`#${d}`,onClick:r,children:t})})}var g=n(2382),y=n(1287);const b={skipToContent:"skipToContent_TSEd"};function v(){return(0,u.jsx)(h,{className:b.skipToContent})}var w=n(1781),S=n(4794);function x(e){let{width:t=21,height:n=21,color:r="currentColor",strokeWidth:o=1.2,className:a,...i}=e;return(0,u.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...i,children:(0,u.jsx)("g",{stroke:r,strokeWidth:o,children:(0,u.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const k={closeButton:"closeButton_iooy"};function E(e){return(0,u.jsx)("button",{type:"button","aria-label":(0,s.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,o.A)("clean-btn close",k.closeButton,e.className),children:(0,u.jsx)(x,{width:14,height:14,strokeWidth:3.1})})}const _={content:"content_KF7C"};function O(e){const{announcementBar:t}=(0,w.p)(),{content:n}=t;return(0,u.jsx)("div",{...e,className:(0,o.A)(_.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const C={announcementBar:"announcementBar_Zfeh",announcementBarPlaceholder:"announcementBarPlaceholder_IRVS",announcementBarClose:"announcementBarClose_oMe8",announcementBarContent:"announcementBarContent_wKix"};function A(){const{announcementBar:e}=(0,w.p)(),{isActive:t,close:n}=(0,S.M)();if(!t)return null;const{backgroundColor:r,textColor:o,isCloseable:a}=e;return(0,u.jsxs)("div",{className:C.announcementBar,style:{backgroundColor:r,color:o},role:"banner",children:[a&&(0,u.jsx)("div",{className:C.announcementBarPlaceholder}),(0,u.jsx)(O,{className:C.announcementBarContent}),a&&(0,u.jsx)(E,{onClick:n,className:C.announcementBarClose})]})}var T=n(6346),j=n(2589);var P=n(1367),I=n(6195);const N=r.createContext(null);function R(e){let{children:t}=e;const n=function(){const e=(0,T.M)(),t=(0,I.YL)(),[n,o]=(0,r.useState)(!1),a=null!==t.component,i=(0,P.ZC)(a);return(0,r.useEffect)((()=>{a&&!i&&o(!0)}),[a,i]),(0,r.useEffect)((()=>{a?e.shown||o(!0):o(!1)}),[e.shown,a]),(0,r.useMemo)((()=>[n,o]),[n])}();return(0,u.jsx)(N.Provider,{value:n,children:t})}function L(e){if(e.component){const t=e.component;return(0,u.jsx)(t,{...e.props})}}function D(){const e=(0,r.useContext)(N);if(!e)throw new P.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,r.useCallback)((()=>n(!1)),[n]),a=(0,I.YL)();return(0,r.useMemo)((()=>({shown:t,hide:o,content:L(a)})),[o,a,t])}function M(e){let{header:t,primaryMenu:n,secondaryMenu:r}=e;const{shown:a}=D();return(0,u.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,u.jsxs)("div",{className:(0,o.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":a}),children:[(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:r})]})]})}var F=n(3510),z=n(2195);function B(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function $(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const U={toggle:"toggle_k4gx",toggleButton:"toggleButton_pSDN",darkToggleIcon:"darkToggleIcon_QKTy",lightToggleIcon:"lightToggleIcon_nzgI",toggleButtonDisabled:"toggleButtonDisabled_U_sC"};function H(e){let{className:t,buttonClassName:n,value:r,onChange:a}=e;const i=(0,z.A)(),l=(0,s.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===r?(0,s.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,s.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,u.jsx)("div",{className:(0,o.A)(U.toggle,t),children:(0,u.jsxs)("button",{className:(0,o.A)("clean-btn",U.toggleButton,!i&&U.toggleButtonDisabled,n),type:"button",onClick:()=>a("dark"===r?"light":"dark"),disabled:!i,title:l,"aria-label":l,"aria-live":"polite",children:[(0,u.jsx)(B,{className:(0,o.A)(U.toggleIcon,U.lightToggleIcon)}),(0,u.jsx)($,{className:(0,o.A)(U.toggleIcon,U.darkToggleIcon)})]})})}const V=r.memo(H),q={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_stdd"};function W(e){let{className:t}=e;const n=(0,w.p)().navbar.style,r=(0,w.p)().colorMode.disableSwitch,{colorMode:o,setColorMode:a}=(0,F.G)();return r?null:(0,u.jsx)(V,{className:t,buttonClassName:"dark"===n?q.darkNavbarColorModeToggle:void 0,value:o,onChange:a})}var G=n(5842);function K(){return(0,u.jsx)(G.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Y(){const e=(0,T.M)();return(0,u.jsx)("button",{type:"button","aria-label":(0,s.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,u.jsx)(x,{color:"var(--ifm-color-emphasis-600)"})})}function Q(){return(0,u.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,u.jsx)(K,{}),(0,u.jsx)(W,{className:"margin-right--md"}),(0,u.jsx)(Y,{})]})}var Z=n(9410),X=n(7437),J=n(2154),ee=n(465),te=n(4065);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:r,href:o,label:a,html:i,isDropdownLink:l,prependBaseUrlToHref:s,...c}=e;const d=(0,X.Ay)(r),f=(0,X.Ay)(t),p=(0,X.Ay)(o,{forcePrependBaseUrl:!0}),m=a&&o&&!(0,J.A)(o),h=i?{dangerouslySetInnerHTML:{__html:i}}:{children:(0,u.jsxs)(u.Fragment,{children:[a,m&&(0,u.jsx)(te.A,{...l&&{width:12,height:12}})]})};return o?(0,u.jsx)(Z.A,{href:s?p:o,...c,...h}):(0,u.jsx)(Z.A,{to:d,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?(0,ee.G)(n,t.pathname):t.pathname.startsWith(f)},...c,...h})}function re(e){let{className:t,isDropdownItem:n=!1,...r}=e;const a=(0,u.jsx)(ne,{className:(0,o.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...r});return n?(0,u.jsx)("li",{children:a}):a}function oe(e){let{className:t,isDropdownItem:n,...r}=e;return(0,u.jsx)("li",{className:"menu__list-item",children:(0,u.jsx)(ne,{className:(0,o.A)("menu__link",t),...r})})}function ae(e){let{mobile:t=!1,position:n,...r}=e;const o=t?oe:re;return(0,u.jsx)(o,{...r,activeClassName:r.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var ie=n(6925),le=n(8988),se=n(9014);const ce={dropdownNavbarItemMobile:"dropdownNavbarItemMobile_coCi"};function ue(e,t){return e.some((e=>function(e,t){return!!(0,le.ys)(e.to,t)||!!(0,ee.G)(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function de(e){let{items:t,position:n,className:a,onClick:i,...l}=e;const s=(0,r.useRef)(null),[c,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{s.current&&!s.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[s]),(0,u.jsxs)("div",{ref:s,className:(0,o.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":c}),children:[(0,u.jsx)(ne,{"aria-haspopup":"true","aria-expanded":c,role:"button",href:l.to?void 0:"#",className:(0,o.A)("navbar__link",a),...l,onClick:l.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!c))},children:l.children??l.label}),(0,u.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,r.createElement)(Fe,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function fe(e){let{items:t,className:n,position:a,onClick:i,...s}=e;const c=function(){const{siteConfig:{baseUrl:e}}=(0,se.A)(),{pathname:t}=(0,l.zy)();return t.replace(e,"/")}(),d=ue(t,c),{collapsed:f,toggleCollapsed:p,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[c,d,m]),(0,u.jsxs)("li",{className:(0,o.A)("menu__list-item",{"menu__list-item--collapsed":f}),children:[(0,u.jsx)(ne,{role:"button",className:(0,o.A)(ce.dropdownNavbarItemMobile,"menu__link menu__link--sublist menu__link--sublist-caret",n),...s,onClick:e=>{e.preventDefault(),p()},children:s.children??s.label}),(0,u.jsx)(ie.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:f,children:t.map(((e,t)=>(0,r.createElement)(Fe,{mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active",...e,key:t})))})]})}function pe(e){let{mobile:t=!1,...n}=e;const r=t?fe:de;return(0,u.jsx)(r,{...n})}var me=n(2074);function he(e){let{width:t=20,height:n=20,...r}=e;return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...r,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const ge="iconLanguage_zFDR";var ye=n(8143),be=n(5992),ve=n(8472),we=n(3310),Se=n(7723),xe=n(8754),ke=n(6392);function Ee(){return[`language:${(0,se.A)().i18n.currentLocale}`,function(){const e=(0,ke.v)();return[xe.C,...e]}().map((e=>`docusaurus_tag:${e}`))]}const _e={button:{buttonText:(0,s.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"}),buttonAriaLabel:(0,s.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"})},modal:{searchBox:{resetButtonTitle:(0,s.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),resetButtonAriaLabel:(0,s.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),cancelButtonText:(0,s.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"}),cancelButtonAriaLabel:(0,s.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"})},startScreen:{recentSearchesTitle:(0,s.T)({id:"theme.SearchModal.startScreen.recentSearchesTitle",message:"Recent",description:"The title for recent searches"}),noRecentSearchesText:(0,s.T)({id:"theme.SearchModal.startScreen.noRecentSearchesText",message:"No recent searches",description:"The text when no recent searches"}),saveRecentSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.saveRecentSearchButtonTitle",message:"Save this search",description:"The label for save recent search button"}),removeRecentSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.removeRecentSearchButtonTitle",message:"Remove this search from history",description:"The label for remove recent search button"}),favoriteSearchesTitle:(0,s.T)({id:"theme.SearchModal.startScreen.favoriteSearchesTitle",message:"Favorite",description:"The title for favorite searches"}),removeFavoriteSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.removeFavoriteSearchButtonTitle",message:"Remove this search from favorites",description:"The label for remove favorite search button"})},errorScreen:{titleText:(0,s.T)({id:"theme.SearchModal.errorScreen.titleText",message:"Unable to fetch results",description:"The title for error screen of search modal"}),helpText:(0,s.T)({id:"theme.SearchModal.errorScreen.helpText",message:"You might want to check your network connection.",description:"The help text for error screen of search modal"})},footer:{selectText:(0,s.T)({id:"theme.SearchModal.footer.selectText",message:"to select",description:"The explanatory text of the action for the enter key"}),selectKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.selectKeyAriaLabel",message:"Enter key",description:"The ARIA label for the Enter key button that makes the selection"}),navigateText:(0,s.T)({id:"theme.SearchModal.footer.navigateText",message:"to navigate",description:"The explanatory text of the action for the Arrow up and Arrow down key"}),navigateUpKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.navigateUpKeyAriaLabel",message:"Arrow up",description:"The ARIA label for the Arrow up key button that makes the navigation"}),navigateDownKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.navigateDownKeyAriaLabel",message:"Arrow down",description:"The ARIA label for the Arrow down key button that makes the navigation"}),closeText:(0,s.T)({id:"theme.SearchModal.footer.closeText",message:"to close",description:"The explanatory text of the action for Escape key"}),closeKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.closeKeyAriaLabel",message:"Escape key",description:"The ARIA label for the Escape key button that close the modal"}),searchByText:(0,s.T)({id:"theme.SearchModal.footer.searchByText",message:"Search by",description:"The text explain that the search is making by Algolia"})},noResultsScreen:{noResultsText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.noResultsText",message:"No results for",description:"The text explains that there are no results for the following search"}),suggestedQueryText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.suggestedQueryText",message:"Try searching for",description:"The text for the suggested query when no results are found for the following search"}),reportMissingResultsText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsText",message:"Believe this query should return results?",description:"The text for the question where the user thinks there are missing results"}),reportMissingResultsLinkText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsLinkText",message:"Let us know.",description:"The text for the link to report missing results"})}},placeholder:(0,s.T)({id:"theme.SearchModal.placeholder",message:"Search docs",description:"The placeholder of the input of the DocSearch pop-up modal"})};let Oe=null;function Ce(e){let{hit:t,children:n}=e;return(0,u.jsx)(Z.A,{to:t.url,children:n})}function Ae(e){let{state:t,onClose:n}=e;const r=(0,we.w)();return(0,u.jsx)(Z.A,{to:r(t.query),onClick:n,children:(0,u.jsx)(s.A,{id:"theme.SearchBar.seeAll",values:{count:t.context.nbHits},children:"See all {count} results"})})}function Te(e){let{contextualSearch:t,externalUrlRegex:o,...a}=e;const{siteMetadata:i}=(0,se.A)(),s=(0,Se.C)(),c=Ee(),d=a.searchParameters?.facetFilters??[],f=t?function(e,t){const n=e=>"string"==typeof e?[e]:e;return[...n(e),...n(t)]}(c,d):d,p={...a.searchParameters,facetFilters:f},m=(0,l.W6)(),h=(0,r.useRef)(null),g=(0,r.useRef)(null),[y,b]=(0,r.useState)(!1),[v,w]=(0,r.useState)(void 0),S=(0,r.useCallback)((()=>Oe?Promise.resolve():Promise.all([n.e(2966).then(n.bind(n,2966)),Promise.all([n.e(1869),n.e(7289)]).then(n.bind(n,7289)),Promise.all([n.e(1869),n.e(3114)]).then(n.bind(n,3114))]).then((e=>{let[{DocSearchModal:t}]=e;Oe=t}))),[]),x=(0,r.useCallback)((()=>{if(!h.current){const e=document.createElement("div");h.current=e,document.body.insertBefore(e,document.body.firstChild)}}),[]),k=(0,r.useCallback)((()=>{x(),S().then((()=>b(!0)))}),[S,x]),E=(0,r.useCallback)((()=>{b(!1),g.current?.focus()}),[]),_=(0,r.useCallback)((e=>{"f"===e.key&&(e.metaKey||e.ctrlKey)||(e.preventDefault(),w(e.key),k())}),[k]),O=(0,r.useRef)({navigate(e){let{itemUrl:t}=e;(0,ee.G)(o,t)?window.location.href=t:m.push(t)}}).current,C=(0,r.useRef)((e=>a.transformItems?a.transformItems(e):e.map((e=>({...e,url:s(e.url)}))))).current,A=(0,r.useMemo)((()=>e=>(0,u.jsx)(Ae,{...e,onClose:E})),[E]),T=(0,r.useCallback)((e=>(e.addAlgoliaAgent("docusaurus",i.docusaurusVersion),e)),[i.docusaurusVersion]);return(0,be.E8)({isOpen:y,onOpen:k,onClose:E,onInput:_,searchButtonRef:g}),(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(ve.A,{children:(0,u.jsx)("link",{rel:"preconnect",href:`https://${a.appId}-dsn.algolia.net`,crossOrigin:"anonymous"})}),(0,u.jsx)(be.Bc,{onTouchStart:S,onFocus:S,onMouseOver:S,onClick:k,ref:g,translations:_e.button}),y&&Oe&&h.current&&(0,ye.createPortal)((0,u.jsx)(Oe,{onClose:E,initialScrollY:window.scrollY,initialQuery:v,navigator:O,transformItems:C,hitComponent:Ce,transformSearchClient:T,...a.searchPagePath&&{resultsFooterComponent:A},...a,searchParameters:p,placeholder:_e.placeholder,translations:_e.modal}),h.current)]})}function je(){const{siteConfig:e}=(0,se.A)();return(0,u.jsx)(Te,{...e.themeConfig.algolia})}const Pe={navbarSearchContainer:"navbarSearchContainer_T9WI"};function Ie(e){let{children:t,className:n}=e;return(0,u.jsx)("div",{className:(0,o.A)(n,Pe.navbarSearchContainer),children:t})}var Ne=n(5755),Re=n(2847);var Le=n(3875);function De(e,t){return t.alternateDocVersions[e.name]??function(e){return e.docs.find((t=>t.id===e.mainDocId))}(e)}const Me={default:ae,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:r,queryString:o="",...a}=e;const{i18n:{currentLocale:i,locales:c,localeConfigs:d}}=(0,se.A)(),f=(0,me.o)(),{search:p,hash:m}=(0,l.zy)(),h=[...n,...c.map((e=>{const n=`${`pathname://${f.createUrl({locale:e,fullyQualified:!1})}`}${p}${m}${o}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...r],g=t?(0,s.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return(0,u.jsx)(pe,{...a,mobile:t,label:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(he,{className:ge}),g]}),items:h})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,u.jsx)(Ie,{className:n,children:(0,u.jsx)(je,{})})},dropdown:pe,html:function(e){let{value:t,className:n,mobile:r=!1,isDropdownItem:a=!1}=e;const i=a?"li":"div";return(0,u.jsx)(i,{className:(0,o.A)({navbar__item:!r&&!a,"menu__list-item":r},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Ne.zK)(r),i=(0,Re.QB)(t,r),l=a?.path===i?.path;return null===i||i.unlisted&&!l?null:(0,u.jsx)(ae,{exact:!0,...o,isActive:()=>l||!!a?.sidebar&&a.sidebar===i.sidebar,label:n??i.id,to:i.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Ne.zK)(r),i=(0,Re.fW)(t,r).link;if(!i)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,u.jsx)(ae,{exact:!0,...o,isActive:()=>a?.sidebar===t,label:n??i.label,to:i.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:r,...o}=e;const a=(0,Re.Vd)(r)[0],i=t??a.label,l=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(a).path;return(0,u.jsx)(ae,{...o,label:i,to:l})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:r,dropdownItemsBefore:o,dropdownItemsAfter:a,...i}=e;const{search:c,hash:d}=(0,l.zy)(),f=(0,Ne.zK)(n),p=(0,Ne.jh)(n),{savePreferredVersionName:m}=(0,Le.g1)(n),h=[...o,...p.map((function(e){const t=De(e,f);return{label:e.label,to:`${t.path}${c}${d}`,isActive:()=>e===f.activeVersion,onClick:()=>m(e.name)}})),...a],g=(0,Re.Vd)(n)[0],y=t&&h.length>1?(0,s.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):g.label,b=t&&h.length>1?void 0:De(g,f).path;return h.length<=1?(0,u.jsx)(ae,{...i,mobile:t,label:y,to:b,isActive:r?()=>!1:void 0}):(0,u.jsx)(pe,{...i,mobile:t,label:y,to:b,items:h,isActive:r?()=>!1:void 0})}};function Fe(e){let{type:t,...n}=e;const r=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=Me[r];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,u.jsx)(o,{...n})}function ze(){const e=(0,T.M)(),t=(0,w.p)().navbar.items;return(0,u.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,r.createElement)(Fe,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function Be(e){return(0,u.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,u.jsx)(s.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function $e(){const e=0===(0,w.p)().navbar.items.length,t=D();return(0,u.jsxs)(u.Fragment,{children:[!e&&(0,u.jsx)(Be,{onClick:()=>t.hide()}),t.content]})}function Ue(){const e=(0,T.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,u.jsx)(M,{header:(0,u.jsx)(Q,{}),primaryMenu:(0,u.jsx)(ze,{}),secondaryMenu:(0,u.jsx)($e,{})}):null}const He={navbarHideable:"navbarHideable_xvtT",navbarHidden:"navbarHidden_JzgE"};function Ve(e){return(0,u.jsx)("div",{role:"presentation",...e,className:(0,o.A)("navbar-sidebar__backdrop",e.className)})}function qe(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:a}}=(0,w.p)(),i=(0,T.M)(),{navbarRef:l,isNavbarVisible:d}=function(e){const[t,n]=(0,r.useState)(e),o=(0,r.useRef)(!1),a=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(a.current=e.getBoundingClientRect().height)}),[]);return(0,j.Mq)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i<a.current)return void n(!0);if(o.current)return void(o.current=!1);const l=r?.scrollY,s=document.documentElement.scrollHeight-a.current,c=window.innerHeight;l&&i>=l?n(!1):i+c<s&&n(!0)})),(0,c.$)((t=>{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return o.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return(0,u.jsxs)("nav",{ref:l,"aria-label":(0,s.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.A)("navbar","navbar--fixed-top",n&&[He.navbarHideable,!d&&He.navbarHidden],{"navbar--dark":"dark"===a,"navbar--primary":"primary"===a,"navbar-sidebar--show":i.shown}),children:[t,(0,u.jsx)(Ve,{onClick:i.toggle}),(0,u.jsx)(Ue,{})]})}var We=n(1574);const Ge={errorBoundaryError:"errorBoundaryError_aoN1",errorBoundaryFallback:"errorBoundaryFallback_bIw_"};function Ke(e){return(0,u.jsx)("button",{type:"button",...e,children:(0,u.jsx)(s.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function Ye(e){let{error:t}=e;const n=(0,We.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,u.jsx)("p",{className:Ge.errorBoundaryError,children:n})}class Qe extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const Ze="right";function Xe(e){let{width:t=30,height:n=30,className:r,...o}=e;return(0,u.jsx)("svg",{className:r,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...o,children:(0,u.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function Je(){const{toggle:e,shown:t}=(0,T.M)();return(0,u.jsx)("button",{onClick:e,"aria-label":(0,s.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,u.jsx)(Xe,{})})}const et={colorModeToggle:"colorModeToggle_uMRh"};function tt(e){let{items:t}=e;return(0,u.jsx)(u.Fragment,{children:t.map(((e,t)=>(0,u.jsx)(Qe,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,u.jsx)(Fe,{...e})},t)))})}function nt(e){let{left:t,right:n}=e;return(0,u.jsxs)("div",{className:"navbar__inner",children:[(0,u.jsx)("div",{className:"navbar__items",children:t}),(0,u.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function rt(){const e=(0,T.M)(),t=(0,w.p)().navbar.items,[n,r]=function(e){function t(e){return"left"===(e.position??Ze)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return(0,u.jsx)(nt,{left:(0,u.jsxs)(u.Fragment,{children:[!e.disabled&&(0,u.jsx)(Je,{}),(0,u.jsx)(K,{}),(0,u.jsx)(tt,{items:n})]}),right:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(tt,{items:r}),(0,u.jsx)(W,{className:et.colorModeToggle}),!o&&(0,u.jsx)(Ie,{children:(0,u.jsx)(je,{})})]})})}function ot(){return(0,u.jsx)(qe,{children:(0,u.jsx)(rt,{})})}function at(e){let{item:t}=e;const{to:n,href:r,label:o,prependBaseUrlToHref:a,...i}=t,l=(0,X.Ay)(n),s=(0,X.Ay)(r,{forcePrependBaseUrl:!0});return(0,u.jsxs)(Z.A,{className:"footer__link-item",...r?{href:a?s:r}:{to:l},...i,children:[o,r&&!(0,J.A)(r)&&(0,u.jsx)(te.A,{})]})}function it(e){let{item:t}=e;return t.html?(0,u.jsx)("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)("li",{className:"footer__item",children:(0,u.jsx)(at,{item:t})},t.href??t.to)}function lt(e){let{column:t}=e;return(0,u.jsxs)("div",{className:"col footer__col",children:[(0,u.jsx)("div",{className:"footer__title",children:t.title}),(0,u.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,u.jsx)(it,{item:e},t)))})]})}function st(e){let{columns:t}=e;return(0,u.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,u.jsx)(lt,{column:e},t)))})}function ct(){return(0,u.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function ut(e){let{item:t}=e;return t.html?(0,u.jsx)("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)(at,{item:t})}function dt(e){let{links:t}=e;return(0,u.jsx)("div",{className:"footer__links text--center",children:(0,u.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,u.jsxs)(r.Fragment,{children:[(0,u.jsx)(ut,{item:e}),t.length!==n+1&&(0,u.jsx)(ct,{})]},n)))})})}function ft(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,u.jsx)(st,{columns:t}):(0,u.jsx)(dt,{links:t})}var pt=n(8906);const mt={footerLogoLink:"footerLogoLink_Ha83"};function ht(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.hH)(),r={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,u.jsx)(pt.A,{className:(0,o.A)("footer__logo",t.className),alt:t.alt,sources:r,width:t.width,height:t.height,style:t.style})}function gt(e){let{logo:t}=e;return t.href?(0,u.jsx)(Z.A,{href:t.href,className:mt.footerLogoLink,target:t.target,children:(0,u.jsx)(ht,{logo:t})}):(0,u.jsx)(ht,{logo:t})}function yt(e){let{copyright:t}=e;return(0,u.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function bt(e){let{style:t,links:n,logo:r,copyright:a}=e;return(0,u.jsx)("footer",{className:(0,o.A)("footer",{"footer--dark":"dark"===t}),children:(0,u.jsxs)("div",{className:"container container-fluid",children:[n,(r||a)&&(0,u.jsxs)("div",{className:"footer__bottom text--center",children:[r&&(0,u.jsx)("div",{className:"margin-bottom--sm",children:r}),a]})]})})}function vt(){const{footer:e}=(0,w.p)();if(!e)return null;const{copyright:t,links:n,logo:r,style:o}=e;return(0,u.jsx)(bt,{style:o,links:n&&n.length>0&&(0,u.jsx)(ft,{links:n}),logo:r&&(0,u.jsx)(gt,{logo:r}),copyright:t&&(0,u.jsx)(yt,{copyright:t})})}const wt=r.memo(vt),St=(0,P.fM)([F.a,S.o,j.Tv,Le.VQ,i.Jx,function(e){let{children:t}=e;return(0,u.jsx)(I.y_,{children:(0,u.jsx)(T.e,{children:(0,u.jsx)(R,{children:t})})})}]);function xt(e){let{children:t}=e;return(0,u.jsx)(St,{children:t})}var kt=n(9849);function Et(e){let{error:t,tryAgain:n}=e;return(0,u.jsx)("main",{className:"container margin-vert--xl",children:(0,u.jsx)("div",{className:"row",children:(0,u.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,u.jsx)(kt.A,{as:"h1",className:"hero__title",children:(0,u.jsx)(s.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,u.jsx)("div",{className:"margin-vert--lg",children:(0,u.jsx)(Ke,{onClick:n,className:"button button--primary shadow--lw"})}),(0,u.jsx)("hr",{}),(0,u.jsx)("div",{className:"margin-vert--md",children:(0,u.jsx)(Ye,{error:t})})]})})})}const _t={mainWrapper:"mainWrapper_m1cT"};function Ot(e){const{children:t,noFooter:n,wrapperClassName:r,title:l,description:s}=e;return(0,y.J)(),(0,u.jsxs)(xt,{children:[(0,u.jsx)(i.be,{title:l,description:s}),(0,u.jsx)(v,{}),(0,u.jsx)(A,{}),(0,u.jsx)(ot,{}),(0,u.jsx)("div",{id:d,className:(0,o.A)(g.G.wrapper.main,_t.mainWrapper,r),children:(0,u.jsx)(a.A,{fallback:e=>(0,u.jsx)(Et,{...e}),children:t})}),!n&&(0,u.jsx)(wt,{})]})}},5842:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(758);var r=n(9410),o=n(7437),a=n(9014),i=n(1781),l=n(8906),s=n(6070);function c(e){let{logo:t,alt:n,imageClassName:r}=e;const a={light:(0,o.Ay)(t.src),dark:(0,o.Ay)(t.srcDark||t.src)},i=(0,s.jsx)(l.A,{className:t.className,sources:a,height:t.height,width:t.width,alt:n,style:t.style});return r?(0,s.jsx)("div",{className:r,children:i}):i}function u(e){const{siteConfig:{title:t}}=(0,a.A)(),{navbar:{title:n,logo:l}}=(0,i.p)(),{imageClassName:u,titleClassName:d,...f}=e,p=(0,o.Ay)(l?.href||"/"),m=n?"":t,h=l?.alt??m;return(0,s.jsxs)(r.A,{to:p,...f,...l?.target&&{target:l.target},children:[l&&(0,s.jsx)(c,{logo:l,alt:h,imageClassName:u}),null!=n&&(0,s.jsx)("b",{className:d,children:n})]})}},8040:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(758);var r=n(8472),o=n(6070);function a(e){let{locale:t,version:n,tag:a}=e;const i=t;return(0,o.jsxs)(r.A,{children:[t&&(0,o.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,o.jsx)("meta",{name:"docusaurus_version",content:n}),a&&(0,o.jsx)("meta",{name:"docusaurus_tag",content:a}),i&&(0,o.jsx)("meta",{name:"docsearch:language",content:i}),n&&(0,o.jsx)("meta",{name:"docsearch:version",content:n}),a&&(0,o.jsx)("meta",{name:"docsearch:docusaurus_tag",content:a})]})}},8906:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});var r=n(758),o=n(3526),a=n(2195),i=n(3510);const l={themedComponent:"themedComponent_j_Bc","themedComponent--light":"themedComponent--light_Wr5c","themedComponent--dark":"themedComponent--dark_H8hH"};var s=n(6070);function c(e){let{className:t,children:n}=e;const c=(0,a.A)(),{colorMode:u}=(0,i.G)();return(0,s.jsx)(s.Fragment,{children:(c?"dark"===u?["dark"]:["light"]:["light","dark"]).map((e=>{const a=n({theme:e,className:(0,o.A)(t,l.themedComponent,l[`themedComponent--${e}`])});return(0,s.jsx)(r.Fragment,{children:a},e)}))})}function u(e){const{sources:t,className:n,alt:r,...o}=e;return(0,s.jsx)(c,{className:n,children:e=>{let{theme:n,className:a}=e;return(0,s.jsx)("img",{src:t[n],alt:r,className:a,...o})}})}},6925:(e,t,n)=>{"use strict";n.d(t,{N:()=>y,u:()=>c});var r=n(758),o=n(3733),a=n(3601),i=n(3606),l=n(6070);const s="ease-in-out";function c(e){let{initialState:t}=e;const[n,o]=(0,r.useState)(t??!1),a=(0,r.useCallback)((()=>{o((e=>!e))}),[]);return{collapsed:n,setCollapsed:o,toggleCollapsed:a}}const u={display:"none",overflow:"hidden",height:"0px"},d={display:"block",overflow:"visible",height:"auto"};function f(e,t){const n=t?u:d;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function p(e){let{collapsibleRef:t,collapsed:n,animation:o}=e;const a=(0,r.useRef)(!1);(0,r.useEffect)((()=>{const e=t.current;function r(){const t=e.scrollHeight,n=o?.duration??function(e){if((0,i.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${o?.easing??s}`,height:`${t}px`}}function l(){const t=r();e.style.transition=t.transition,e.style.height=t.height}if(!a.current)return f(e,n),void(a.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(l(),requestAnimationFrame((()=>{e.style.height=u.height,e.style.overflow=u.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{l()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,o])}function m(e){if(!o.A.canUseDOM)return e?u:d}function h(e){let{as:t="div",collapsed:n,children:o,animation:a,onCollapseTransitionEnd:i,className:s,disableSSRStyle:c}=e;const u=(0,r.useRef)(null);return p({collapsibleRef:u,collapsed:n,animation:a}),(0,l.jsx)(t,{ref:u,style:c?void 0:m(n),onTransitionEnd:e=>{"height"===e.propertyName&&(f(u.current,n),i?.(n))},className:s,children:o})}function g(e){let{collapsed:t,...n}=e;const[o,i]=(0,r.useState)(!t),[s,c]=(0,r.useState)(t);return(0,a.A)((()=>{t||i(!0)}),[t]),(0,a.A)((()=>{o&&c(t)}),[o,t]),o?(0,l.jsx)(h,{...n,collapsed:s}):null}function y(e){let{lazy:t,...n}=e;const r=t?g:h;return(0,l.jsx)(r,{...n})}},4794:(e,t,n)=>{"use strict";n.d(t,{M:()=>h,o:()=>m});var r=n(758),o=n(2195),a=n(8805),i=n(1367),l=n(1781),s=n(6070);const c=(0,a.Wf)("docusaurus.announcement.dismiss"),u=(0,a.Wf)("docusaurus.announcement.id"),d=()=>"true"===c.get(),f=e=>c.set(String(e)),p=r.createContext(null);function m(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,l.p)(),t=(0,o.A)(),[n,a]=(0,r.useState)((()=>!!t&&d()));(0,r.useEffect)((()=>{a(d())}),[]);const i=(0,r.useCallback)((()=>{f(!0),a(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=u.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;u.set(t),r&&f(!1),!r&&d()||a(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return(0,s.jsx)(p.Provider,{value:n,children:t})}function h(){const e=(0,r.useContext)(p);if(!e)throw new i.dV("AnnouncementBarProvider");return e}},3510:(e,t,n)=>{"use strict";n.d(t,{G:()=>y,a:()=>g});var r=n(758),o=n(3733),a=n(1367),i=n(8805),l=n(1781),s=n(6070);const c=r.createContext(void 0),u="theme",d=(0,i.Wf)(u),f={light:"light",dark:"dark"},p=e=>e===f.dark?f.dark:f.light,m=e=>o.A.canUseDOM?p(document.documentElement.getAttribute("data-theme")):p(e),h=e=>{d.set(p(e))};function g(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,l.p)(),[o,a]=(0,r.useState)(m(e));(0,r.useEffect)((()=>{t&&d.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:o=!0}=r;t?(a(t),o&&h(t)):(a(n?window.matchMedia("(prefers-color-scheme: dark)").matches?f.dark:f.light:e),d.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",p(o))}),[o]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==u)return;const t=d.get();null!==t&&i(p(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const s=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||s.current?s.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:o,setColorMode:i,get isDarkTheme(){return o===f.dark},setLightTheme(){i(f.light)},setDarkTheme(){i(f.dark)}})),[o,i])}();return(0,s.jsx)(c.Provider,{value:n,children:t})}function y(){const e=(0,r.useContext)(c);if(null==e)throw new a.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},6346:(e,t,n)=>{"use strict";n.d(t,{M:()=>p,e:()=>f});var r=n(758),o=n(6195),a=n(3216),i=n(2790),l=n(1781),s=n(1367),c=n(6070);const u=r.createContext(void 0);function d(){const e=function(){const e=(0,o.YL)(),{items:t}=(0,l.p)().navbar;return 0===t.length&&!e.component}(),t=(0,a.l)(),n=!e&&"mobile"===t,[s,c]=(0,r.useState)(!1);(0,i.$Z)((()=>{if(s)return c(!1),!1}));const u=(0,r.useCallback)((()=>{c((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&c(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:s})),[e,n,u,s])}function f(e){let{children:t}=e;const n=d();return(0,c.jsx)(u.Provider,{value:n,children:t})}function p(){const e=r.useContext(u);if(void 0===e)throw new s.dV("NavbarMobileSidebarProvider");return e}},6195:(e,t,n)=>{"use strict";n.d(t,{GX:()=>c,YL:()=>s,y_:()=>l});var r=n(758),o=n(1367),a=n(6070);const i=r.createContext(null);function l(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return(0,a.jsx)(i.Provider,{value:n,children:t})}function s(){const e=(0,r.useContext)(i);if(!e)throw new o.dV("NavbarSecondaryMenuContentProvider");return e[0]}function c(e){let{component:t,props:n}=e;const a=(0,r.useContext)(i);if(!a)throw new o.dV("NavbarSecondaryMenuContentProvider");const[,l]=a,s=(0,o.Be)(n);return(0,r.useEffect)((()=>{l({component:t,props:s})}),[l,t,s]),(0,r.useEffect)((()=>()=>l({component:null,props:null})),[l]),null}},1287:(e,t,n)=>{"use strict";n.d(t,{w:()=>o,J:()=>a});var r=n(758);const o="navigation-with-keyboard";function a(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(o),"mousedown"===e.type&&document.body.classList.remove(o)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(o),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},3310:(e,t,n)=>{"use strict";n.d(t,{b:()=>l,w:()=>s});var r=n(758),o=n(9014),a=n(2790);const i="q";function l(){return(0,a.l)(i)}function s(){const{siteConfig:{baseUrl:e,themeConfig:t}}=(0,o.A)(),{algolia:{searchPagePath:n}}=t;return(0,r.useCallback)((t=>`${e}${n}?${i}=${encodeURIComponent(t)}`),[e,n])}},3216:(e,t,n)=>{"use strict";n.d(t,{l:()=>l});var r=n(758),o=n(3733);const a={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function l(e){let{desktopBreakpoint:t=i}=void 0===e?{}:e;const[n,l]=(0,r.useState)((()=>"ssr"));return(0,r.useEffect)((()=>{function e(){l(function(e){if(!o.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?a.desktop:a.mobile}(t))}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[t]),n}},2382:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",blogAuthorsListPage:"blog-authors-list-page",blogAuthorsPostsPage:"blog-authors-posts-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",draftBanner:"theme-draft-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{blogFooterTagsRow:"theme-blog-footer-tags-row",blogFooterEditMetaRow:"theme-blog-footer-edit-meta-row"},pages:{pageFooterEditMetaRow:"theme-pages-footer-edit-meta-row"}}},3606:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>r})},62:(e,t,n)=>{"use strict";n.d(t,{s:()=>o});var r=n(9014);function o(e){const{siteConfig:t}=(0,r.A)(),{title:n,titleDelimiter:o}=t;return e?.trim().length?`${e.trim()} ${o} ${n}`:n}},2790:(e,t,n)=>{"use strict";n.d(t,{$Z:()=>i,l:()=>s});var r=n(758),o=n(5557),a=n(1367);function i(e){!function(e){const t=(0,o.W6)(),n=(0,a._q)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function l(e){const t=(0,o.W6)();return(0,r.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}function s(e){const t=function(e){return l((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}(e)??"",n=function(e){const t=(0,o.W6)();return(0,r.useCallback)(((n,r)=>{const o=new URLSearchParams(t.location.search);n?o.set(e,n):o.delete(e),(r?.push?t.push:t.replace)({search:o.toString()})}),[e,t])}(e);return[t,n]}},4804:(e,t,n)=>{"use strict";n.d(t,{e3:()=>p,be:()=>d,Jx:()=>m});var r=n(758),o=n(3526),a=n(8472),i=n(8242);function l(){const e=r.useContext(i.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var s=n(7437),c=n(62),u=n(6070);function d(e){let{title:t,description:n,keywords:r,image:o,children:i}=e;const l=(0,c.s)(t),{withBaseUrl:d}=(0,s.hH)(),f=o?d(o,{absolute:!0}):void 0;return(0,u.jsxs)(a.A,{children:[t&&(0,u.jsx)("title",{children:l}),t&&(0,u.jsx)("meta",{property:"og:title",content:l}),n&&(0,u.jsx)("meta",{name:"description",content:n}),n&&(0,u.jsx)("meta",{property:"og:description",content:n}),r&&(0,u.jsx)("meta",{name:"keywords",content:Array.isArray(r)?r.join(","):r}),f&&(0,u.jsx)("meta",{property:"og:image",content:f}),f&&(0,u.jsx)("meta",{name:"twitter:image",content:f}),i]})}const f=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(f),l=(0,o.A)(i,t);return(0,u.jsxs)(f.Provider,{value:l,children:[(0,u.jsx)(a.A,{children:(0,u.jsx)("html",{className:l})}),n]})}function m(e){let{children:t}=e;const n=l(),r=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const a=`plugin-id-${n.plugin.id}`;return(0,u.jsx)(p,{className:(0,o.A)(r,a),children:t})}},1367:(e,t,n)=>{"use strict";n.d(t,{Be:()=>c,ZC:()=>l,_q:()=>i,dV:()=>s,fM:()=>u});var r=n(758),o=n(3601),a=n(6070);function i(e){const t=(0,r.useRef)(e);return(0,o.A)((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function l(e){const t=(0,r.useRef)();return(0,o.A)((()=>{t.current=e})),t.current}class s extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?<name>\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function c(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function u(e){return t=>{let{children:n}=t;return(0,a.jsx)(a.Fragment,{children:e.reduceRight(((e,t)=>(0,a.jsx)(t,{children:e})),n)})}}},465:(e,t,n)=>{"use strict";function r(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}n.d(t,{G:()=>r})},8988:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>l,ys:()=>i});var r=n(758),o=n(1660),a=n(9014);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function l(){const{baseUrl:e}=(0,a.A)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function o(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(o).flatMap((e=>e.routes??[])))}(n)}({routes:o.A,baseUrl:e})),[e])}},2589:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>f,Tv:()=>c,gk:()=>p});var r=n(758),o=n(3733),a=n(2195),i=(n(3601),n(1367)),l=n(6070);const s=r.createContext(void 0);function c(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,l.jsx)(s.Provider,{value:n,children:t})}function u(){const e=(0,r.useContext)(s);if(null==e)throw new i.dV("ScrollControllerProvider");return e}const d=()=>o.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function f(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=u(),o=(0,r.useRef)(d()),a=(0,i._q)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=d();a(e,o.current),o.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[a,n,...t])}function p(){const e=(0,r.useRef)(null),t=(0,a.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const o=document.documentElement.scrollTop;(n&&o>e||!n&&o<e)&&(t=requestAnimationFrame(r),window.scrollTo(0,Math.floor(.85*(o-e))+e))}(),()=>t&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},8754:(e,t,n)=>{"use strict";n.d(t,{C:()=>r});const r="default"},8805:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>c});n(758);const r=JSON.parse('{"N":"localStorage","M":""}'),o=r.N;function a(e){let{key:t,oldValue:n,newValue:r,storage:o}=e;if(n===r)return;const a=document.createEvent("StorageEvent");a.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,o),window.dispatchEvent(a)}function i(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,l||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),l=!0),null}var t}let l=!1;const s={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function c(e,t){const n=`${e}${r.M}`;if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(n);const o=i(t?.persistence);return null===o?s:{get:()=>{try{return o.getItem(n)}catch(e){return console.error(`Docusaurus storage error, can't get key=${n}`,e),null}},set:e=>{try{const t=o.getItem(n);o.setItem(n,e),a({key:n,oldValue:t,newValue:e,storage:o})}catch(t){console.error(`Docusaurus storage error, can't set ${n}=${e}`,t)}},del:()=>{try{const e=o.getItem(n);o.removeItem(n),a({key:n,oldValue:e,newValue:null,storage:o})}catch(e){console.error(`Docusaurus storage error, can't delete key=${n}`,e)}},listen:e=>{try{const t=t=>{t.storageArea===o&&t.key===n&&e(t)};return window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)}catch(t){return console.error(`Docusaurus storage error, can't listen for changes of key=${n}`,t),()=>{}}}}}},2074:(e,t,n)=>{"use strict";n.d(t,{o:()=>i});var r=n(9014),o=n(5557),a=n(1574);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:l}}=(0,r.A)(),{pathname:s}=(0,o.zy)(),c=(0,a.Ks)(s,{trailingSlash:n,baseUrl:e}),u=l===i?e:e.replace(`/${l}/`,"/"),d=c.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${u}`:`${u}${e}/`}(n)}${d}`}}}},7259:(e,t,n)=>{"use strict";n.d(t,{$:()=>i});var r=n(758),o=n(5557),a=n(1367);function i(e){const t=(0,o.zy)(),n=(0,a.ZC)(t),i=(0,a._q)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},1781:(e,t,n)=>{"use strict";n.d(t,{p:()=>o});var r=n(9014);function o(){return(0,r.A)().siteConfig.themeConfig}},1135:(e,t,n)=>{"use strict";n.d(t,{c:()=>o});var r=n(9014);function o(){const{siteConfig:{themeConfig:e}}=(0,r.A)();return e}},7723:(e,t,n)=>{"use strict";n.d(t,{C:()=>l});var r=n(758),o=n(465),a=n(7437),i=n(1135);function l(){const{withBaseUrl:e}=(0,a.hH)(),{algolia:{externalUrlRegex:t,replaceSearchResultPathname:n}}=(0,i.c)();return(0,r.useCallback)((r=>{const a=new URL(r);if((0,o.G)(t,a.href))return r;const i=`${a.pathname+a.hash}`;return e(function(e,t){return t?e.replaceAll(new RegExp(t.from,"g"),t.to):e}(i,n))}),[e,t,n])}},2081:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addTrailingSlash=o,t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[i]=e.split(/[#?]/),l="/"===i||i===r?i:(s=i,c=n,c?o(s):a(s));var s,c;return e.replace(i,l)},t.addLeadingSlash=function(e){return(0,r.addPrefix)(e,"/")},t.removeTrailingSlash=a;const r=n(6876);function o(e){return e.endsWith("/")?e:`${e}/`}function a(e){return(0,r.removeSuffix)(e,"/")}},7791:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=function e(t){if(t.cause)return[t,...e(t.cause)];return[t]}},1574:(e,t,n)=>{"use strict";t.rA=t.Ks=void 0;const r=n(3422);var o=n(2081);Object.defineProperty(t,"Ks",{enumerable:!0,get:function(){return r.__importDefault(o).default}});var a=n(6876);var i=n(7791);Object.defineProperty(t,"rA",{enumerable:!0,get:function(){return i.getErrorCausalChain}})},6876:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addPrefix=function(e,t){return e.startsWith(t)?e:`${t}${e}`},t.removeSuffix=function(e,t){if(""===t)return e;return e.endsWith(t)?e.slice(0,-t.length):e},t.addSuffix=function(e,t){return e.endsWith(t)?e:`${e}${t}`},t.removePrefix=function(e,t){return e.startsWith(t)?e.slice(t.length):e}},3332:(e,t,n)=>{"use strict";n.d(t,{zR:()=>w,TM:()=>O,yJ:()=>p,sC:()=>A,AO:()=>f});var r=n(991);function o(e){return"/"===e.charAt(0)}function a(e,t){for(var n=t,r=n+1,o=e.length;r<o;n+=1,r+=1)e[n]=e[r];e.pop()}const i=function(e,t){void 0===t&&(t="");var n,r=e&&e.split("/")||[],i=t&&t.split("/")||[],l=e&&o(e),s=t&&o(t),c=l||s;if(e&&o(e)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";if(i.length){var u=i[i.length-1];n="."===u||".."===u||""===u}else n=!1;for(var d=0,f=i.length;f>=0;f--){var p=i[f];"."===p?a(i,f):".."===p?(a(i,f),d++):d&&(a(i,f),d--)}if(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&o(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var l=n(5385);function s(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function f(e){var t=e.pathname,n=e.search,r=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(o+="#"===r.charAt(0)?r:"#"+r),o}function p(e,t,n,o){var a;"string"==typeof e?(a=function(e){var t=e||"/",n="",r="",o=t.indexOf("#");-1!==o&&(r=t.substr(o),t=t.substr(0,o));var a=t.indexOf("?");return-1!==a&&(n=t.substr(a),t=t.substr(0,a)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),a.state=t):(void 0===(a=(0,r.A)({},e)).pathname&&(a.pathname=""),a.search?"?"!==a.search.charAt(0)&&(a.search="?"+a.search):a.search="",a.hash?"#"!==a.hash.charAt(0)&&(a.hash="#"+a.hash):a.hash="",void 0!==t&&void 0===a.state&&(a.state=t));try{a.pathname=decodeURI(a.pathname)}catch(l){throw l instanceof URIError?new URIError('Pathname "'+a.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):l}return n&&(a.key=n),o?a.pathname?"/"!==a.pathname.charAt(0)&&(a.pathname=i(a.pathname,o.pathname)):a.pathname=o.pathname:a.pathname||(a.pathname="/"),a}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,o){if(null!=e){var a="function"==typeof e?e(t,n):e;"string"==typeof a?"function"==typeof r?r(a,o):o(!0):o(!1!==a)}else o(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];t.forEach((function(e){return e.apply(void 0,n)}))}}}var h=!("undefined"==typeof window||!window.document||!window.document.createElement);function g(e,t){t(window.confirm(e))}var y="popstate",b="hashchange";function v(){try{return window.history.state||{}}catch(e){return{}}}function w(e){void 0===e&&(e={}),h||(0,l.A)(!1);var t,n=window.history,o=(-1===(t=window.navigator.userAgent).indexOf("Android 2.")&&-1===t.indexOf("Android 4.0")||-1===t.indexOf("Mobile Safari")||-1!==t.indexOf("Chrome")||-1!==t.indexOf("Windows Phone"))&&window.history&&"pushState"in window.history,a=!(-1===window.navigator.userAgent.indexOf("Trident")),i=e,c=i.forceRefresh,w=void 0!==c&&c,S=i.getUserConfirmation,x=void 0===S?g:S,k=i.keyLength,E=void 0===k?6:k,_=e.basename?d(s(e.basename)):"";function O(e){var t=e||{},n=t.key,r=t.state,o=window.location,a=o.pathname+o.search+o.hash;return _&&(a=u(a,_)),p(a,r,n)}function C(){return Math.random().toString(36).substr(2,E)}var A=m();function T(e){(0,r.A)($,e),$.length=n.length,A.notifyListeners($.location,$.action)}function j(e){(function(e){return void 0===e.state&&-1===navigator.userAgent.indexOf("CriOS")})(e)||N(O(e.state))}function P(){N(O(v()))}var I=!1;function N(e){if(I)I=!1,T();else{A.confirmTransitionTo(e,"POP",x,(function(t){t?T({action:"POP",location:e}):function(e){var t=$.location,n=L.indexOf(t.key);-1===n&&(n=0);var r=L.indexOf(e.key);-1===r&&(r=0);var o=n-r;o&&(I=!0,M(o))}(e)}))}}var R=O(v()),L=[R.key];function D(e){return _+f(e)}function M(e){n.go(e)}var F=0;function z(e){1===(F+=e)&&1===e?(window.addEventListener(y,j),a&&window.addEventListener(b,P)):0===F&&(window.removeEventListener(y,j),a&&window.removeEventListener(b,P))}var B=!1;var $={length:n.length,action:"POP",location:R,createHref:D,push:function(e,t){var r="PUSH",a=p(e,t,C(),$.location);A.confirmTransitionTo(a,r,x,(function(e){if(e){var t=D(a),i=a.key,l=a.state;if(o)if(n.pushState({key:i,state:l},null,t),w)window.location.href=t;else{var s=L.indexOf($.location.key),c=L.slice(0,s+1);c.push(a.key),L=c,T({action:r,location:a})}else window.location.href=t}}))},replace:function(e,t){var r="REPLACE",a=p(e,t,C(),$.location);A.confirmTransitionTo(a,r,x,(function(e){if(e){var t=D(a),i=a.key,l=a.state;if(o)if(n.replaceState({key:i,state:l},null,t),w)window.location.replace(t);else{var s=L.indexOf($.location.key);-1!==s&&(L[s]=a.key),T({action:r,location:a})}else window.location.replace(t)}}))},go:M,goBack:function(){M(-1)},goForward:function(){M(1)},block:function(e){void 0===e&&(e=!1);var t=A.setPrompt(e);return B||(z(1),B=!0),function(){return B&&(B=!1,z(-1)),t()}},listen:function(e){var t=A.appendListener(e);return z(1),function(){z(-1),t()}}};return $}var S="hashchange",x={hashbang:{encodePath:function(e){return"!"===e.charAt(0)?e:"!/"+c(e)},decodePath:function(e){return"!"===e.charAt(0)?e.substr(1):e}},noslash:{encodePath:c,decodePath:s},slash:{encodePath:s,decodePath:s}};function k(e){var t=e.indexOf("#");return-1===t?e:e.slice(0,t)}function E(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.substring(t+1)}function _(e){window.location.replace(k(window.location.href)+"#"+e)}function O(e){void 0===e&&(e={}),h||(0,l.A)(!1);var t=window.history,n=(window.navigator.userAgent.indexOf("Firefox"),e),o=n.getUserConfirmation,a=void 0===o?g:o,i=n.hashType,c=void 0===i?"slash":i,y=e.basename?d(s(e.basename)):"",b=x[c],v=b.encodePath,w=b.decodePath;function O(){var e=w(E());return y&&(e=u(e,y)),p(e)}var C=m();function A(e){(0,r.A)(B,e),B.length=t.length,C.notifyListeners(B.location,B.action)}var T=!1,j=null;function P(){var e,t,n=E(),r=v(n);if(n!==r)_(r);else{var o=O(),i=B.location;if(!T&&(t=o,(e=i).pathname===t.pathname&&e.search===t.search&&e.hash===t.hash))return;if(j===f(o))return;j=null,function(e){if(T)T=!1,A();else{var t="POP";C.confirmTransitionTo(e,t,a,(function(n){n?A({action:t,location:e}):function(e){var t=B.location,n=L.lastIndexOf(f(t));-1===n&&(n=0);var r=L.lastIndexOf(f(e));-1===r&&(r=0);var o=n-r;o&&(T=!0,D(o))}(e)}))}}(o)}}var I=E(),N=v(I);I!==N&&_(N);var R=O(),L=[f(R)];function D(e){t.go(e)}var M=0;function F(e){1===(M+=e)&&1===e?window.addEventListener(S,P):0===M&&window.removeEventListener(S,P)}var z=!1;var B={length:t.length,action:"POP",location:R,createHref:function(e){var t=document.querySelector("base"),n="";return t&&t.getAttribute("href")&&(n=k(window.location.href)),n+"#"+v(y+f(e))},push:function(e,t){var n="PUSH",r=p(e,void 0,void 0,B.location);C.confirmTransitionTo(r,n,a,(function(e){if(e){var t=f(r),o=v(y+t);if(E()!==o){j=t,function(e){window.location.hash=e}(o);var a=L.lastIndexOf(f(B.location)),i=L.slice(0,a+1);i.push(t),L=i,A({action:n,location:r})}else A()}}))},replace:function(e,t){var n="REPLACE",r=p(e,void 0,void 0,B.location);C.confirmTransitionTo(r,n,a,(function(e){if(e){var t=f(r),o=v(y+t);E()!==o&&(j=t,_(o));var a=L.indexOf(f(B.location));-1!==a&&(L[a]=t),A({action:n,location:r})}}))},go:D,goBack:function(){D(-1)},goForward:function(){D(1)},block:function(e){void 0===e&&(e=!1);var t=C.setPrompt(e);return z||(F(1),z=!0),function(){return z&&(z=!1,F(-1)),t()}},listen:function(e){var t=C.appendListener(e);return F(1),function(){F(-1),t()}}};return B}function C(e,t,n){return Math.min(Math.max(e,t),n)}function A(e){void 0===e&&(e={});var t=e,n=t.getUserConfirmation,o=t.initialEntries,a=void 0===o?["/"]:o,i=t.initialIndex,l=void 0===i?0:i,s=t.keyLength,c=void 0===s?6:s,u=m();function d(e){(0,r.A)(w,e),w.length=w.entries.length,u.notifyListeners(w.location,w.action)}function h(){return Math.random().toString(36).substr(2,c)}var g=C(l,0,a.length-1),y=a.map((function(e){return p(e,void 0,"string"==typeof e?h():e.key||h())})),b=f;function v(e){var t=C(w.index+e,0,w.entries.length-1),r=w.entries[t];u.confirmTransitionTo(r,"POP",n,(function(e){e?d({action:"POP",location:r,index:t}):d()}))}var w={length:y.length,action:"POP",location:y[g],index:g,entries:y,createHref:b,push:function(e,t){var r="PUSH",o=p(e,t,h(),w.location);u.confirmTransitionTo(o,r,n,(function(e){if(e){var t=w.index+1,n=w.entries.slice(0);n.length>t?n.splice(t,n.length-t,o):n.push(o),d({action:r,location:o,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",o=p(e,t,h(),w.location);u.confirmTransitionTo(o,r,n,(function(e){e&&(w.entries[w.index]=o,d({action:r,location:o}))}))},go:v,goBack:function(){v(-1)},goForward:function(){v(1)},canGo:function(e){var t=w.index+e;return t>=0&&t<w.entries.length},block:function(e){return void 0===e&&(e=!1),u.setPrompt(e)},listen:function(e){return u.appendListener(e)}};return w}},1035:(e,t,n)=>{"use strict";var r=n(5959),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},l={};function s(e){return r.isMemo(e)?i:l[e.$$typeof]||o}l[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},l[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,f=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var o=p(n);o&&o!==m&&e(t,o,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var l=s(t),h=s(n),g=0;g<i.length;++g){var y=i[g];if(!(a[y]||r&&r[y]||h&&h[y]||l&&l[y])){var b=f(n,y);try{c(t,y,b)}catch(v){}}}}return t}},9597:e=>{"use strict";e.exports=function(e,t,n,r,o,a,i,l){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,a,i,l],u=0;(s=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw s.framesToPop=1,s}}},5526:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},9041:(e,t,n)=>{"use strict";n.r(t)},4844:(e,t,n)=>{"use strict";n.r(t)},8744:function(e,t,n){var r,o;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};function o(e,t,n){return e<t?t:e>n?n:e}function a(e){return 100*(-1+e)}function i(e,t,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+a(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+a(e)+"%,0)"}:{"margin-left":a(e)+"%"}).transition="all "+t+"ms "+n,o}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,r.minimum,1),n.status=1===e?null:e;var a=n.render(!t),c=a.querySelector(r.barSelector),u=r.speed,d=r.easing;return a.offsetWidth,l((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(c,i(e,u,d)),1===e?(s(a,{transition:"none",opacity:1}),a.offsetWidth,setTimeout((function(){s(a,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var o,i=t.querySelector(r.barSelector),l=e?"-100":a(n.status||0),c=document.querySelector(r.parent);return s(i,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(o=t.querySelector(r.spinnerSelector))&&p(o),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&p(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var l=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),s=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,o=e.length,a=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((r=e[o]+a)in n)return r;return t}function o(e){return e=n(e),t[e]||(t[e]=r(e))}function a(e,t,n){t=o(t),e.style[t]=n}return function(e,t){var n,r,o=arguments;if(2==o.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&a(e,n,r);else a(e,o[1],o[2])}}();function c(e,t){return("string"==typeof e?e:f(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=f(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=f(e);c(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function f(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function p(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(o="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=o)},6150:(e,t,n)=>{var r=n(5526);e.exports=p,e.exports.parse=a,e.exports.compile=function(e,t){return l(a(e,t),t)},e.exports.tokensToFunction=l,e.exports.tokensToRegExp=f;var o=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function a(e,t){for(var n,r=[],a=0,i=0,l="",u=t&&t.delimiter||"/";null!=(n=o.exec(e));){var d=n[0],f=n[1],p=n.index;if(l+=e.slice(i,p),i=p+d.length,f)l+=f[1];else{var m=e[i],h=n[2],g=n[3],y=n[4],b=n[5],v=n[6],w=n[7];l&&(r.push(l),l="");var S=null!=h&&null!=m&&m!==h,x="+"===v||"*"===v,k="?"===v||"*"===v,E=n[2]||u,_=y||b;r.push({name:g||a++,prefix:h||"",delimiter:E,optional:k,repeat:x,partial:S,asterisk:!!w,pattern:_?c(_):w?".*":"[^"+s(E)+"]+?"})}}return i<e.length&&(l+=e.substr(i)),l&&r.push(l),r}function i(e){return encodeURI(e).replace(/[\/?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function l(e,t){for(var n=new Array(e.length),o=0;o<e.length;o++)"object"==typeof e[o]&&(n[o]=new RegExp("^(?:"+e[o].pattern+")$",d(t)));return function(t,o){for(var a="",l=t||{},s=(o||{}).pretty?i:encodeURIComponent,c=0;c<e.length;c++){var u=e[c];if("string"!=typeof u){var d,f=l[u.name];if(null==f){if(u.optional){u.partial&&(a+=u.prefix);continue}throw new TypeError('Expected "'+u.name+'" to be defined')}if(r(f)){if(!u.repeat)throw new TypeError('Expected "'+u.name+'" to not repeat, but received `'+JSON.stringify(f)+"`");if(0===f.length){if(u.optional)continue;throw new TypeError('Expected "'+u.name+'" to not be empty')}for(var p=0;p<f.length;p++){if(d=s(f[p]),!n[c].test(d))throw new TypeError('Expected all "'+u.name+'" to match "'+u.pattern+'", but received `'+JSON.stringify(d)+"`");a+=(0===p?u.prefix:u.delimiter)+d}}else{if(d=u.asterisk?encodeURI(f).replace(/[?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})):s(f),!n[c].test(d))throw new TypeError('Expected "'+u.name+'" to match "'+u.pattern+'", but received "'+d+'"');a+=u.prefix+d}}else a+=u}return a}}function s(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function c(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function u(e,t){return e.keys=t,e}function d(e){return e&&e.sensitive?"":"i"}function f(e,t,n){r(t)||(n=t||n,t=[]);for(var o=(n=n||{}).strict,a=!1!==n.end,i="",l=0;l<e.length;l++){var c=e[l];if("string"==typeof c)i+=s(c);else{var f=s(c.prefix),p="(?:"+c.pattern+")";t.push(c),c.repeat&&(p+="(?:"+f+p+")*"),i+=p=c.optional?c.partial?f+"("+p+")?":"(?:"+f+"("+p+"))?":f+"("+p+")"}}var m=s(n.delimiter||"/"),h=i.slice(-m.length)===m;return o||(i=(h?i.slice(0,-m.length):i)+"(?:"+m+"(?=$))?"),i+=a?"$":o&&h?"":"(?="+m+"|$)",u(new RegExp("^"+i,d(n)),t)}function p(e,t,n){return r(t)||(n=t||n,t=[]),n=n||{},e instanceof RegExp?function(e,t){var n=e.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)t.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return u(e,t)}(e,t):r(e)?function(e,t,n){for(var r=[],o=0;o<e.length;o++)r.push(p(e[o],t,n).source);return u(new RegExp("(?:"+r.join("|")+")",d(n)),t)}(e,t,n):function(e,t,n){return f(a(e,n),t,n)}(e,t,n)}},8520:()=>{!function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var o=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],a=r.variable[1].inside,i=0;i<o.length;i++)a[o[i]]=e.languages.bash[o[i]];e.languages.sh=e.languages.bash,e.languages.shell=e.languages.bash}(Prism)},1274:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,o,a){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(o,(function(e){if("function"==typeof a&&!a(e))return e;for(var o,l=i.length;-1!==n.code.indexOf(o=t(r,l));)++l;return i[l]=e,o})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var o=0,a=Object.keys(n.tokenStack);!function i(l){for(var s=0;s<l.length&&!(o>=a.length);s++){var c=l[s];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=a[o],d=n.tokenStack[u],f="string"==typeof c?c:c.content,p=t(r,u),m=f.indexOf(p);if(m>-1){++o;var h=f.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),y=f.substring(m+p.length),b=[];h&&b.push.apply(b,i([h])),b.push(g),y&&b.push.apply(b,i([y])),"string"==typeof c?l.splice.apply(l,[s,1].concat(b)):c.content=b}}else c.content&&i(c.content)}return l}(n.tokens)}}}})}(Prism)},6290:()=>{!function(e){var t=/(?:[\w-]+|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*")/.source;function n(e){return e.replace(/__/g,(function(){return t}))}e.languages.toml={comment:{pattern:/#.*/,greedy:!0},table:{pattern:RegExp(n(/(^[\t ]*\[\s*(?:\[\s*)?)__(?:\s*\.\s*__)*(?=\s*\])/.source),"m"),lookbehind:!0,greedy:!0,alias:"class-name"},key:{pattern:RegExp(n(/(^[\t ]*|[{,]\s*)__(?:\s*\.\s*__)*(?=\s*=)/.source),"m"),lookbehind:!0,greedy:!0,alias:"property"},string:{pattern:/"""(?:\\[\s\S]|[^\\])*?"""|'''[\s\S]*?'''|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},date:[{pattern:/\b\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)?\b/i,alias:"number"},{pattern:/\b\d{2}:\d{2}:\d{2}(?:\.\d+)?\b/,alias:"number"}],number:/(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\b\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]?\b(?:inf|nan)\b/,boolean:/\b(?:false|true)\b/,punctuation:/[.,=[\]{}]/}}(Prism)},6186:(e,t,n)=>{"use strict";var r=n(2985);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var l=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return n.PropTypes=n,n}},2736:(e,t,n)=>{e.exports=n(6186)()},2985:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},9481:(e,t,n)=>{"use strict";var r=n(758),o=n(1896);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var i=new Set,l={};function s(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(l[e]=t,e=0;e<t.length;e++)i.add(t[e])}var u=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),d=Object.prototype.hasOwnProperty,f=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,p={},m={};function h(e,t,n,r,o,a,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=i}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){g[e]=new h(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];g[t]=new h(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){g[e]=new h(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){g[e]=new h(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){g[e]=new h(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){g[e]=new h(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){g[e]=new h(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){g[e]=new h(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){g[e]=new h(e,5,!1,e.toLowerCase(),null,!1,!1)}));var y=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}function v(e,t,n,r){var o=g.hasOwnProperty(t)?g[t]:null;(null!==o?0!==o.type:r||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,r)&&(n=null),r||null===o?function(e){return!!d.call(m,e)||!d.call(p,e)&&(f.test(e)?m[e]=!0:(p[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,r=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new h(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new h(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(y,b);g[t]=new h(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new h(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new h("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new h(e,1,!1,e.toLowerCase(),null,!0,!0)}));var w=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,S=Symbol.for("react.element"),x=Symbol.for("react.portal"),k=Symbol.for("react.fragment"),E=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),O=Symbol.for("react.provider"),C=Symbol.for("react.context"),A=Symbol.for("react.forward_ref"),T=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),P=Symbol.for("react.memo"),I=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var N=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var R=Symbol.iterator;function L(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=R&&e[R]||e["@@iterator"])?e:null}var D,M=Object.assign;function F(e){if(void 0===D)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);D=t&&t[1]||""}return"\n"+D+e}var z=!1;function B(e,t){if(!e||z)return"";z=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}catch(c){if(c&&r&&"string"==typeof c.stack){for(var o=c.stack.split("\n"),a=r.stack.split("\n"),i=o.length-1,l=a.length-1;1<=i&&0<=l&&o[i]!==a[l];)l--;for(;1<=i&&0<=l;i--,l--)if(o[i]!==a[l]){if(1!==i||1!==l)do{if(i--,0>--l||o[i]!==a[l]){var s="\n"+o[i].replace(" at new "," at ");return e.displayName&&s.includes("<anonymous>")&&(s=s.replace("<anonymous>",e.displayName)),s}}while(1<=i&&0<=l);break}}}finally{z=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?F(e):""}function $(e){switch(e.tag){case 5:return F(e.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 2:case 15:return e=B(e.type,!1);case 11:return e=B(e.type.render,!1);case 1:return e=B(e.type,!0);default:return""}}function U(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case k:return"Fragment";case x:return"Portal";case _:return"Profiler";case E:return"StrictMode";case T:return"Suspense";case j:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case C:return(e.displayName||"Context")+".Consumer";case O:return(e._context.displayName||"Context")+".Provider";case A:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case P:return null!==(t=e.displayName||null)?t:U(e.type)||"Memo";case I:t=e._payload,e=e._init;try{return U(e(t))}catch(n){}}return null}function H(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return U(t);case 8:return t===E?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t}return null}function V(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function q(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function W(e){e._valueTracker||(e._valueTracker=function(e){var t=q(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){r=""+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function G(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=q(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function K(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function Y(e,t){var n=t.checked;return M({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function Q(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=V(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function Z(e,t){null!=(t=t.checked)&&v(e,"checked",t,!1)}function X(e,t){Z(e,t);var n=V(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?ee(e,t.type,n):t.hasOwnProperty("defaultValue")&&ee(e,t.type,V(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function J(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ee(e,t,n){"number"===t&&K(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var te=Array.isArray;function ne(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&r&&(e[n].defaultSelected=!0)}else{for(n=""+V(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(r&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function re(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(a(91));return M({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function oe(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(a(92));if(te(n)){if(1<n.length)throw Error(a(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:V(n)}}function ae(e,t){var n=V(t.value),r=V(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ie(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function le(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function se(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?le(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var ce,ue,de=(ue=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((ce=ce||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ce.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function fe(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var pe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},me=["Webkit","ms","Moz","O"];function he(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||pe.hasOwnProperty(e)&&pe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),o=he(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}Object.keys(pe).forEach((function(e){me.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),pe[t]=pe[e]}))}));var ye=M({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function be(e,t){if(t){if(ye[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(a(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(a(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(a(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(a(62))}}function ve(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function Se(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var xe=null,ke=null,Ee=null;function _e(e){if(e=wo(e)){if("function"!=typeof xe)throw Error(a(280));var t=e.stateNode;t&&(t=xo(t),xe(e.stateNode,e.type,t))}}function Oe(e){ke?Ee?Ee.push(e):Ee=[e]:ke=e}function Ce(){if(ke){var e=ke,t=Ee;if(Ee=ke=null,_e(e),t)for(e=0;e<t.length;e++)_e(t[e])}}function Ae(e,t){return e(t)}function Te(){}var je=!1;function Pe(e,t,n){if(je)return e(t,n);je=!0;try{return Ae(e,t,n)}finally{je=!1,(null!==ke||null!==Ee)&&(Te(),Ce())}}function Ie(e,t){var n=e.stateNode;if(null===n)return null;var r=xo(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(a(231,t,typeof n));return n}var Ne=!1;if(u)try{var Re={};Object.defineProperty(Re,"passive",{get:function(){Ne=!0}}),window.addEventListener("test",Re,Re),window.removeEventListener("test",Re,Re)}catch(ue){Ne=!1}function Le(e,t,n,r,o,a,i,l,s){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(u){this.onError(u)}}var De=!1,Me=null,Fe=!1,ze=null,Be={onError:function(e){De=!0,Me=e}};function $e(e,t,n,r,o,a,i,l,s){De=!1,Me=null,Le.apply(Be,arguments)}function Ue(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function He(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Ve(e){if(Ue(e)!==e)throw Error(a(188))}function qe(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Ue(e)))throw Error(a(188));return t!==e?null:e}for(var n=e,r=t;;){var o=n.return;if(null===o)break;var i=o.alternate;if(null===i){if(null!==(r=o.return)){n=r;continue}break}if(o.child===i.child){for(i=o.child;i;){if(i===n)return Ve(o),e;if(i===r)return Ve(o),t;i=i.sibling}throw Error(a(188))}if(n.return!==r.return)n=o,r=i;else{for(var l=!1,s=o.child;s;){if(s===n){l=!0,n=o,r=i;break}if(s===r){l=!0,r=o,n=i;break}s=s.sibling}if(!l){for(s=i.child;s;){if(s===n){l=!0,n=i,r=o;break}if(s===r){l=!0,r=i,n=o;break}s=s.sibling}if(!l)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(3!==n.tag)throw Error(a(188));return n.stateNode.current===n?e:t}(e))?We(e):null}function We(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=We(e);if(null!==t)return t;e=e.sibling}return null}var Ge=o.unstable_scheduleCallback,Ke=o.unstable_cancelCallback,Ye=o.unstable_shouldYield,Qe=o.unstable_requestPaint,Ze=o.unstable_now,Xe=o.unstable_getCurrentPriorityLevel,Je=o.unstable_ImmediatePriority,et=o.unstable_UserBlockingPriority,tt=o.unstable_NormalPriority,nt=o.unstable_LowPriority,rt=o.unstable_IdlePriority,ot=null,at=null;var it=Math.clz32?Math.clz32:function(e){return e>>>=0,0===e?32:31-(lt(e)/st|0)|0},lt=Math.log,st=Math.LN2;var ct=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ft(e,t){var n=e.pendingLanes;if(0===n)return 0;var r=0,o=e.suspendedLanes,a=e.pingedLanes,i=268435455&n;if(0!==i){var l=i&~o;0!==l?r=dt(l):0!==(a&=i)&&(r=dt(a))}else 0!==(i=n&~o)?r=dt(i):0!==a&&(r=dt(a));if(0===r)return 0;if(0!==t&&t!==r&&!(t&o)&&((o=r&-r)>=(a=t&-t)||16===o&&4194240&a))return t;if(4&r&&(r|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)o=1<<(n=31-it(t)),r|=e[n],t&=~o;return r}function pt(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function mt(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function ht(){var e=ct;return!(4194240&(ct<<=1))&&(ct=64),e}function gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function yt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=n}function bt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-it(n),o=1<<r;o&t|e[r]&t&&(e[r]|=t),n&=~o}}var vt=0;function wt(e){return 1<(e&=-e)?4<e?268435455&e?16:536870912:4:1}var St,xt,kt,Et,_t,Ot=!1,Ct=[],At=null,Tt=null,jt=null,Pt=new Map,It=new Map,Nt=[],Rt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Lt(e,t){switch(e){case"focusin":case"focusout":At=null;break;case"dragenter":case"dragleave":Tt=null;break;case"mouseover":case"mouseout":jt=null;break;case"pointerover":case"pointerout":Pt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":It.delete(t.pointerId)}}function Dt(e,t,n,r,o,a){return null===e||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[o]},null!==t&&(null!==(t=wo(t))&&xt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function Mt(e){var t=vo(e.target);if(null!==t){var n=Ue(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=He(n)))return e.blockedOn=t,void _t(e.priority,(function(){kt(n)}))}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Ft(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Yt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=wo(n))&&xt(t),e.blockedOn=n,!1;var r=new(n=e.nativeEvent).constructor(n.type,n);we=r,n.target.dispatchEvent(r),we=null,t.shift()}return!0}function zt(e,t,n){Ft(e)&&n.delete(t)}function Bt(){Ot=!1,null!==At&&Ft(At)&&(At=null),null!==Tt&&Ft(Tt)&&(Tt=null),null!==jt&&Ft(jt)&&(jt=null),Pt.forEach(zt),It.forEach(zt)}function $t(e,t){e.blockedOn===t&&(e.blockedOn=null,Ot||(Ot=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,Bt)))}function Ut(e){function t(t){return $t(t,e)}if(0<Ct.length){$t(Ct[0],e);for(var n=1;n<Ct.length;n++){var r=Ct[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==At&&$t(At,e),null!==Tt&&$t(Tt,e),null!==jt&&$t(jt,e),Pt.forEach(t),It.forEach(t),n=0;n<Nt.length;n++)(r=Nt[n]).blockedOn===e&&(r.blockedOn=null);for(;0<Nt.length&&null===(n=Nt[0]).blockedOn;)Mt(n),null===n.blockedOn&&Nt.shift()}var Ht=w.ReactCurrentBatchConfig,Vt=!0;function qt(e,t,n,r){var o=vt,a=Ht.transition;Ht.transition=null;try{vt=1,Gt(e,t,n,r)}finally{vt=o,Ht.transition=a}}function Wt(e,t,n,r){var o=vt,a=Ht.transition;Ht.transition=null;try{vt=4,Gt(e,t,n,r)}finally{vt=o,Ht.transition=a}}function Gt(e,t,n,r){if(Vt){var o=Yt(e,t,n,r);if(null===o)Vr(e,t,r,Kt,n),Lt(e,r);else if(function(e,t,n,r,o){switch(t){case"focusin":return At=Dt(At,e,t,n,r,o),!0;case"dragenter":return Tt=Dt(Tt,e,t,n,r,o),!0;case"mouseover":return jt=Dt(jt,e,t,n,r,o),!0;case"pointerover":var a=o.pointerId;return Pt.set(a,Dt(Pt.get(a)||null,e,t,n,r,o)),!0;case"gotpointercapture":return a=o.pointerId,It.set(a,Dt(It.get(a)||null,e,t,n,r,o)),!0}return!1}(o,e,t,n,r))r.stopPropagation();else if(Lt(e,r),4&t&&-1<Rt.indexOf(e)){for(;null!==o;){var a=wo(o);if(null!==a&&St(a),null===(a=Yt(e,t,n,r))&&Vr(e,t,r,Kt,n),a===o)break;o=a}null!==o&&r.stopPropagation()}else Vr(e,t,r,null,n)}}var Kt=null;function Yt(e,t,n,r){if(Kt=null,null!==(e=vo(e=Se(r))))if(null===(t=Ue(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=He(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Kt=e,null}function Qt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Xe()){case Je:return 1;case et:return 4;case tt:case nt:return 16;case rt:return 536870912;default:return 16}default:return 16}}var Zt=null,Xt=null,Jt=null;function en(){if(Jt)return Jt;var e,t,n=Xt,r=n.length,o="value"in Zt?Zt.value:Zt.textContent,a=o.length;for(e=0;e<r&&n[e]===o[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===o[a-t];t++);return Jt=o.slice(e,1<t?1-t:void 0)}function tn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function nn(){return!0}function rn(){return!1}function on(e){function t(t,n,r,o,a){for(var i in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=o,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?nn:rn,this.isPropagationStopped=rn,this}return M(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=nn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=nn)},persist:function(){},isPersistent:nn}),t}var an,ln,sn,cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},un=on(cn),dn=M({},cn,{view:0,detail:0}),fn=on(dn),pn=M({},dn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:_n,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==sn&&(sn&&"mousemove"===e.type?(an=e.screenX-sn.screenX,ln=e.screenY-sn.screenY):ln=an=0,sn=e),an)},movementY:function(e){return"movementY"in e?e.movementY:ln}}),mn=on(pn),hn=on(M({},pn,{dataTransfer:0})),gn=on(M({},dn,{relatedTarget:0})),yn=on(M({},cn,{animationName:0,elapsedTime:0,pseudoElement:0})),bn=M({},cn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),vn=on(bn),wn=on(M({},cn,{data:0})),Sn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},xn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},kn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function En(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=kn[e])&&!!t[e]}function _n(){return En}var On=M({},dn,{key:function(e){if(e.key){var t=Sn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?xn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:_n,charCode:function(e){return"keypress"===e.type?tn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Cn=on(On),An=on(M({},pn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Tn=on(M({},dn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:_n})),jn=on(M({},cn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Pn=M({},pn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),In=on(Pn),Nn=[9,13,27,32],Rn=u&&"CompositionEvent"in window,Ln=null;u&&"documentMode"in document&&(Ln=document.documentMode);var Dn=u&&"TextEvent"in window&&!Ln,Mn=u&&(!Rn||Ln&&8<Ln&&11>=Ln),Fn=String.fromCharCode(32),zn=!1;function Bn(e,t){switch(e){case"keyup":return-1!==Nn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function $n(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Un=!1;var Hn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Vn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Hn[e.type]:"textarea"===t}function qn(e,t,n,r){Oe(r),0<(t=Wr(t,"onChange")).length&&(n=new un("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Wn=null,Gn=null;function Kn(e){Fr(e,0)}function Yn(e){if(G(So(e)))return e}function Qn(e,t){if("change"===e)return t}var Zn=!1;if(u){var Xn;if(u){var Jn="oninput"in document;if(!Jn){var er=document.createElement("div");er.setAttribute("oninput","return;"),Jn="function"==typeof er.oninput}Xn=Jn}else Xn=!1;Zn=Xn&&(!document.documentMode||9<document.documentMode)}function tr(){Wn&&(Wn.detachEvent("onpropertychange",nr),Gn=Wn=null)}function nr(e){if("value"===e.propertyName&&Yn(Gn)){var t=[];qn(t,Gn,e,Se(e)),Pe(Kn,t)}}function rr(e,t,n){"focusin"===e?(tr(),Gn=n,(Wn=t).attachEvent("onpropertychange",nr)):"focusout"===e&&tr()}function or(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Yn(Gn)}function ar(e,t){if("click"===e)return Yn(t)}function ir(e,t){if("input"===e||"change"===e)return Yn(t)}var lr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t};function sr(e,t){if(lr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var o=n[r];if(!d.call(t,o)||!lr(e[o],t[o]))return!1}return!0}function cr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ur(e,t){var n,r=cr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=cr(r)}}function dr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function fr(){for(var e=window,t=K();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=K((e=t.contentWindow).document)}return t}function pr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function mr(e){var t=fr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&dr(n.ownerDocument.documentElement,n)){if(null!==r&&pr(n))if(t=r.start,void 0===(e=r.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=n.textContent.length,a=Math.min(r.start,o);r=void 0===r.end?a:Math.min(r.end,o),!e.extend&&a>r&&(o=r,r=a,a=o),o=ur(n,a);var i=ur(n,r);o&&i&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),a>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"==typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var hr=u&&"documentMode"in document&&11>=document.documentMode,gr=null,yr=null,br=null,vr=!1;function wr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;vr||null==gr||gr!==K(r)||("selectionStart"in(r=gr)&&pr(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},br&&sr(br,r)||(br=r,0<(r=Wr(yr,"onSelect")).length&&(t=new un("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=gr)))}function Sr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var xr={animationend:Sr("Animation","AnimationEnd"),animationiteration:Sr("Animation","AnimationIteration"),animationstart:Sr("Animation","AnimationStart"),transitionend:Sr("Transition","TransitionEnd")},kr={},Er={};function _r(e){if(kr[e])return kr[e];if(!xr[e])return e;var t,n=xr[e];for(t in n)if(n.hasOwnProperty(t)&&t in Er)return kr[e]=n[t];return e}u&&(Er=document.createElement("div").style,"AnimationEvent"in window||(delete xr.animationend.animation,delete xr.animationiteration.animation,delete xr.animationstart.animation),"TransitionEvent"in window||delete xr.transitionend.transition);var Or=_r("animationend"),Cr=_r("animationiteration"),Ar=_r("animationstart"),Tr=_r("transitionend"),jr=new Map,Pr="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Ir(e,t){jr.set(e,t),s(t,[e])}for(var Nr=0;Nr<Pr.length;Nr++){var Rr=Pr[Nr];Ir(Rr.toLowerCase(),"on"+(Rr[0].toUpperCase()+Rr.slice(1)))}Ir(Or,"onAnimationEnd"),Ir(Cr,"onAnimationIteration"),Ir(Ar,"onAnimationStart"),Ir("dblclick","onDoubleClick"),Ir("focusin","onFocus"),Ir("focusout","onBlur"),Ir(Tr,"onTransitionEnd"),c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),s("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),s("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),s("onBeforeInput",["compositionend","keypress","textInput","paste"]),s("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Lr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Dr=new Set("cancel close invalid load scroll toggle".split(" ").concat(Lr));function Mr(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,o,i,l,s,c){if($e.apply(this,arguments),De){if(!De)throw Error(a(198));var u=Me;De=!1,Me=null,Fe||(Fe=!0,ze=u)}}(r,t,void 0,e),e.currentTarget=null}function Fr(e,t){t=!!(4&t);for(var n=0;n<e.length;n++){var r=e[n],o=r.event;r=r.listeners;e:{var a=void 0;if(t)for(var i=r.length-1;0<=i;i--){var l=r[i],s=l.instance,c=l.currentTarget;if(l=l.listener,s!==a&&o.isPropagationStopped())break e;Mr(o,l,c),a=s}else for(i=0;i<r.length;i++){if(s=(l=r[i]).instance,c=l.currentTarget,l=l.listener,s!==a&&o.isPropagationStopped())break e;Mr(o,l,c),a=s}}}if(Fe)throw e=ze,Fe=!1,ze=null,e}function zr(e,t){var n=t[go];void 0===n&&(n=t[go]=new Set);var r=e+"__bubble";n.has(r)||(Hr(t,e,2,!1),n.add(r))}function Br(e,t,n){var r=0;t&&(r|=4),Hr(n,e,r,t)}var $r="_reactListening"+Math.random().toString(36).slice(2);function Ur(e){if(!e[$r]){e[$r]=!0,i.forEach((function(t){"selectionchange"!==t&&(Dr.has(t)||Br(t,!1,e),Br(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[$r]||(t[$r]=!0,Br("selectionchange",!1,t))}}function Hr(e,t,n,r){switch(Qt(t)){case 1:var o=qt;break;case 4:o=Wt;break;default:o=Gt}n=o.bind(null,t,n,e),o=void 0,!Ne||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),r?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function Vr(e,t,n,r,o){var a=r;if(!(1&t||2&t||null===r))e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var l=r.stateNode.containerInfo;if(l===o||8===l.nodeType&&l.parentNode===o)break;if(4===i)for(i=r.return;null!==i;){var s=i.tag;if((3===s||4===s)&&((s=i.stateNode.containerInfo)===o||8===s.nodeType&&s.parentNode===o))return;i=i.return}for(;null!==l;){if(null===(i=vo(l)))return;if(5===(s=i.tag)||6===s){r=a=i;continue e}l=l.parentNode}}r=r.return}Pe((function(){var r=a,o=Se(n),i=[];e:{var l=jr.get(e);if(void 0!==l){var s=un,c=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":s=Cn;break;case"focusin":c="focus",s=gn;break;case"focusout":c="blur",s=gn;break;case"beforeblur":case"afterblur":s=gn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":s=mn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":s=hn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":s=Tn;break;case Or:case Cr:case Ar:s=yn;break;case Tr:s=jn;break;case"scroll":s=fn;break;case"wheel":s=In;break;case"copy":case"cut":case"paste":s=vn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":s=An}var u=!!(4&t),d=!u&&"scroll"===e,f=u?null!==l?l+"Capture":null:l;u=[];for(var p,m=r;null!==m;){var h=(p=m).stateNode;if(5===p.tag&&null!==h&&(p=h,null!==f&&(null!=(h=Ie(m,f))&&u.push(qr(m,h,p)))),d)break;m=m.return}0<u.length&&(l=new s(l,c,null,n,o),i.push({event:l,listeners:u}))}}if(!(7&t)){if(s="mouseout"===e||"pointerout"===e,(!(l="mouseover"===e||"pointerover"===e)||n===we||!(c=n.relatedTarget||n.fromElement)||!vo(c)&&!c[ho])&&(s||l)&&(l=o.window===o?o:(l=o.ownerDocument)?l.defaultView||l.parentWindow:window,s?(s=r,null!==(c=(c=n.relatedTarget||n.toElement)?vo(c):null)&&(c!==(d=Ue(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(s=null,c=r),s!==c)){if(u=mn,h="onMouseLeave",f="onMouseEnter",m="mouse","pointerout"!==e&&"pointerover"!==e||(u=An,h="onPointerLeave",f="onPointerEnter",m="pointer"),d=null==s?l:So(s),p=null==c?l:So(c),(l=new u(h,m+"leave",s,n,o)).target=d,l.relatedTarget=p,h=null,vo(o)===r&&((u=new u(f,m+"enter",c,n,o)).target=p,u.relatedTarget=d,h=u),d=h,s&&c)e:{for(f=c,m=0,p=u=s;p;p=Gr(p))m++;for(p=0,h=f;h;h=Gr(h))p++;for(;0<m-p;)u=Gr(u),m--;for(;0<p-m;)f=Gr(f),p--;for(;m--;){if(u===f||null!==f&&u===f.alternate)break e;u=Gr(u),f=Gr(f)}u=null}else u=null;null!==s&&Kr(i,l,s,u,!1),null!==c&&null!==d&&Kr(i,d,c,u,!0)}if("select"===(s=(l=r?So(r):window).nodeName&&l.nodeName.toLowerCase())||"input"===s&&"file"===l.type)var g=Qn;else if(Vn(l))if(Zn)g=ir;else{g=or;var y=rr}else(s=l.nodeName)&&"input"===s.toLowerCase()&&("checkbox"===l.type||"radio"===l.type)&&(g=ar);switch(g&&(g=g(e,r))?qn(i,g,n,o):(y&&y(e,l,r),"focusout"===e&&(y=l._wrapperState)&&y.controlled&&"number"===l.type&&ee(l,"number",l.value)),y=r?So(r):window,e){case"focusin":(Vn(y)||"true"===y.contentEditable)&&(gr=y,yr=r,br=null);break;case"focusout":br=yr=gr=null;break;case"mousedown":vr=!0;break;case"contextmenu":case"mouseup":case"dragend":vr=!1,wr(i,n,o);break;case"selectionchange":if(hr)break;case"keydown":case"keyup":wr(i,n,o)}var b;if(Rn)e:{switch(e){case"compositionstart":var v="onCompositionStart";break e;case"compositionend":v="onCompositionEnd";break e;case"compositionupdate":v="onCompositionUpdate";break e}v=void 0}else Un?Bn(e,n)&&(v="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(v="onCompositionStart");v&&(Mn&&"ko"!==n.locale&&(Un||"onCompositionStart"!==v?"onCompositionEnd"===v&&Un&&(b=en()):(Xt="value"in(Zt=o)?Zt.value:Zt.textContent,Un=!0)),0<(y=Wr(r,v)).length&&(v=new wn(v,e,null,n,o),i.push({event:v,listeners:y}),b?v.data=b:null!==(b=$n(n))&&(v.data=b))),(b=Dn?function(e,t){switch(e){case"compositionend":return $n(t);case"keypress":return 32!==t.which?null:(zn=!0,Fn);case"textInput":return(e=t.data)===Fn&&zn?null:e;default:return null}}(e,n):function(e,t){if(Un)return"compositionend"===e||!Rn&&Bn(e,t)?(e=en(),Jt=Xt=Zt=null,Un=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Mn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(r=Wr(r,"onBeforeInput")).length&&(o=new wn("onBeforeInput","beforeinput",null,n,o),i.push({event:o,listeners:r}),o.data=b))}Fr(i,t)}))}function qr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Wr(e,t){for(var n=t+"Capture",r=[];null!==e;){var o=e,a=o.stateNode;5===o.tag&&null!==a&&(o=a,null!=(a=Ie(e,n))&&r.unshift(qr(e,a,o)),null!=(a=Ie(e,t))&&r.push(qr(e,a,o))),e=e.return}return r}function Gr(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Kr(e,t,n,r,o){for(var a=t._reactName,i=[];null!==n&&n!==r;){var l=n,s=l.alternate,c=l.stateNode;if(null!==s&&s===r)break;5===l.tag&&null!==c&&(l=c,o?null!=(s=Ie(n,a))&&i.unshift(qr(n,s,l)):o||null!=(s=Ie(n,a))&&i.push(qr(n,s,l))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}var Yr=/\r\n?/g,Qr=/\u0000|\uFFFD/g;function Zr(e){return("string"==typeof e?e:""+e).replace(Yr,"\n").replace(Qr,"")}function Xr(e,t,n){if(t=Zr(t),Zr(e)!==t&&n)throw Error(a(425))}function Jr(){}var eo=null,to=null;function no(e,t){return"textarea"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var ro="function"==typeof setTimeout?setTimeout:void 0,oo="function"==typeof clearTimeout?clearTimeout:void 0,ao="function"==typeof Promise?Promise:void 0,io="function"==typeof queueMicrotask?queueMicrotask:void 0!==ao?function(e){return ao.resolve(null).then(e).catch(lo)}:ro;function lo(e){setTimeout((function(){throw e}))}function so(e,t){var n=t,r=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&8===o.nodeType)if("/$"===(n=o.data)){if(0===r)return e.removeChild(o),void Ut(t);r--}else"$"!==n&&"$?"!==n&&"$!"!==n||r++;n=o}while(n);Ut(t)}function co(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function uo(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var fo=Math.random().toString(36).slice(2),po="__reactFiber$"+fo,mo="__reactProps$"+fo,ho="__reactContainer$"+fo,go="__reactEvents$"+fo,yo="__reactListeners$"+fo,bo="__reactHandles$"+fo;function vo(e){var t=e[po];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ho]||n[po]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=uo(e);null!==e;){if(n=e[po])return n;e=uo(e)}return t}n=(e=n).parentNode}return null}function wo(e){return!(e=e[po]||e[ho])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function So(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(a(33))}function xo(e){return e[mo]||null}var ko=[],Eo=-1;function _o(e){return{current:e}}function Oo(e){0>Eo||(e.current=ko[Eo],ko[Eo]=null,Eo--)}function Co(e,t){Eo++,ko[Eo]=e.current,e.current=t}var Ao={},To=_o(Ao),jo=_o(!1),Po=Ao;function Io(e,t){var n=e.type.contextTypes;if(!n)return Ao;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o,a={};for(o in n)a[o]=t[o];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function No(e){return null!=(e=e.childContextTypes)}function Ro(){Oo(jo),Oo(To)}function Lo(e,t,n){if(To.current!==Ao)throw Error(a(168));Co(To,t),Co(jo,n)}function Do(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in t))throw Error(a(108,H(e)||"Unknown",o));return M({},n,r)}function Mo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Ao,Po=To.current,Co(To,e),Co(jo,jo.current),!0}function Fo(e,t,n){var r=e.stateNode;if(!r)throw Error(a(169));n?(e=Do(e,t,Po),r.__reactInternalMemoizedMergedChildContext=e,Oo(jo),Oo(To),Co(To,e)):Oo(jo),Co(jo,n)}var zo=null,Bo=!1,$o=!1;function Uo(e){null===zo?zo=[e]:zo.push(e)}function Ho(){if(!$o&&null!==zo){$o=!0;var e=0,t=vt;try{var n=zo;for(vt=1;e<n.length;e++){var r=n[e];do{r=r(!0)}while(null!==r)}zo=null,Bo=!1}catch(o){throw null!==zo&&(zo=zo.slice(e+1)),Ge(Je,Ho),o}finally{vt=t,$o=!1}}return null}var Vo=[],qo=0,Wo=null,Go=0,Ko=[],Yo=0,Qo=null,Zo=1,Xo="";function Jo(e,t){Vo[qo++]=Go,Vo[qo++]=Wo,Wo=e,Go=t}function ea(e,t,n){Ko[Yo++]=Zo,Ko[Yo++]=Xo,Ko[Yo++]=Qo,Qo=e;var r=Zo;e=Xo;var o=32-it(r)-1;r&=~(1<<o),n+=1;var a=32-it(t)+o;if(30<a){var i=o-o%5;a=(r&(1<<i)-1).toString(32),r>>=i,o-=i,Zo=1<<32-it(t)+o|n<<o|r,Xo=a+e}else Zo=1<<a|n<<o|r,Xo=e}function ta(e){null!==e.return&&(Jo(e,1),ea(e,1,0))}function na(e){for(;e===Wo;)Wo=Vo[--qo],Vo[qo]=null,Go=Vo[--qo],Vo[qo]=null;for(;e===Qo;)Qo=Ko[--Yo],Ko[Yo]=null,Xo=Ko[--Yo],Ko[Yo]=null,Zo=Ko[--Yo],Ko[Yo]=null}var ra=null,oa=null,aa=!1,ia=null;function la(e,t){var n=Pc(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function sa(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,ra=e,oa=co(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,ra=e,oa=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Qo?{id:Zo,overflow:Xo}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Pc(18,null,null,0)).stateNode=t,n.return=e,e.child=n,ra=e,oa=null,!0);default:return!1}}function ca(e){return!(!(1&e.mode)||128&e.flags)}function ua(e){if(aa){var t=oa;if(t){var n=t;if(!sa(e,t)){if(ca(e))throw Error(a(418));t=co(n.nextSibling);var r=ra;t&&sa(e,t)?la(r,n):(e.flags=-4097&e.flags|2,aa=!1,ra=e)}}else{if(ca(e))throw Error(a(418));e.flags=-4097&e.flags|2,aa=!1,ra=e}}}function da(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;ra=e}function fa(e){if(e!==ra)return!1;if(!aa)return da(e),aa=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!no(e.type,e.memoizedProps)),t&&(t=oa)){if(ca(e))throw pa(),Error(a(418));for(;t;)la(e,t),t=co(t.nextSibling)}if(da(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(a(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){oa=co(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}oa=null}}else oa=ra?co(e.stateNode.nextSibling):null;return!0}function pa(){for(var e=oa;e;)e=co(e.nextSibling)}function ma(){oa=ra=null,aa=!1}function ha(e){null===ia?ia=[e]:ia.push(e)}var ga=w.ReactCurrentBatchConfig;function ya(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(a(309));var r=n.stateNode}if(!r)throw Error(a(147,e));var o=r,i=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===i?t.ref:(t=function(e){var t=o.refs;null===e?delete t[i]:t[i]=e},t._stringRef=i,t)}if("string"!=typeof e)throw Error(a(284));if(!n._owner)throw Error(a(290,e))}return e}function ba(e,t){throw e=Object.prototype.toString.call(t),Error(a(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function va(e){return(0,e._init)(e._payload)}function wa(e){function t(t,n){if(e){var r=t.deletions;null===r?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=Nc(e,t)).index=0,e.sibling=null,e}function i(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags|=2,n):r:(t.flags|=2,n):(t.flags|=1048576,n)}function l(t){return e&&null===t.alternate&&(t.flags|=2),t}function s(e,t,n,r){return null===t||6!==t.tag?((t=Mc(n,e.mode,r)).return=e,t):((t=o(t,n)).return=e,t)}function c(e,t,n,r){var a=n.type;return a===k?d(e,t,n.props.children,r,n.key):null!==t&&(t.elementType===a||"object"==typeof a&&null!==a&&a.$$typeof===I&&va(a)===t.type)?((r=o(t,n.props)).ref=ya(e,t,n),r.return=e,r):((r=Rc(n.type,n.key,n.props,null,e.mode,r)).ref=ya(e,t,n),r.return=e,r)}function u(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Fc(n,e.mode,r)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function d(e,t,n,r,a){return null===t||7!==t.tag?((t=Lc(n,e.mode,r,a)).return=e,t):((t=o(t,n)).return=e,t)}function f(e,t,n){if("string"==typeof t&&""!==t||"number"==typeof t)return(t=Mc(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case S:return(n=Rc(t.type,t.key,t.props,null,e.mode,n)).ref=ya(e,null,t),n.return=e,n;case x:return(t=Fc(t,e.mode,n)).return=e,t;case I:return f(e,(0,t._init)(t._payload),n)}if(te(t)||L(t))return(t=Lc(t,e.mode,n,null)).return=e,t;ba(e,t)}return null}function p(e,t,n,r){var o=null!==t?t.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==o?null:s(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case S:return n.key===o?c(e,t,n,r):null;case x:return n.key===o?u(e,t,n,r):null;case I:return p(e,t,(o=n._init)(n._payload),r)}if(te(n)||L(n))return null!==o?null:d(e,t,n,r,null);ba(e,n)}return null}function m(e,t,n,r,o){if("string"==typeof r&&""!==r||"number"==typeof r)return s(t,e=e.get(n)||null,""+r,o);if("object"==typeof r&&null!==r){switch(r.$$typeof){case S:return c(t,e=e.get(null===r.key?n:r.key)||null,r,o);case x:return u(t,e=e.get(null===r.key?n:r.key)||null,r,o);case I:return m(e,t,n,(0,r._init)(r._payload),o)}if(te(r)||L(r))return d(t,e=e.get(n)||null,r,o,null);ba(t,r)}return null}function h(o,a,l,s){for(var c=null,u=null,d=a,h=a=0,g=null;null!==d&&h<l.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var y=p(o,d,l[h],s);if(null===y){null===d&&(d=g);break}e&&d&&null===y.alternate&&t(o,d),a=i(y,a,h),null===u?c=y:u.sibling=y,u=y,d=g}if(h===l.length)return n(o,d),aa&&Jo(o,h),c;if(null===d){for(;h<l.length;h++)null!==(d=f(o,l[h],s))&&(a=i(d,a,h),null===u?c=d:u.sibling=d,u=d);return aa&&Jo(o,h),c}for(d=r(o,d);h<l.length;h++)null!==(g=m(d,o,h,l[h],s))&&(e&&null!==g.alternate&&d.delete(null===g.key?h:g.key),a=i(g,a,h),null===u?c=g:u.sibling=g,u=g);return e&&d.forEach((function(e){return t(o,e)})),aa&&Jo(o,h),c}function g(o,l,s,c){var u=L(s);if("function"!=typeof u)throw Error(a(150));if(null==(s=u.call(s)))throw Error(a(151));for(var d=u=null,h=l,g=l=0,y=null,b=s.next();null!==h&&!b.done;g++,b=s.next()){h.index>g?(y=h,h=null):y=h.sibling;var v=p(o,h,b.value,c);if(null===v){null===h&&(h=y);break}e&&h&&null===v.alternate&&t(o,h),l=i(v,l,g),null===d?u=v:d.sibling=v,d=v,h=y}if(b.done)return n(o,h),aa&&Jo(o,g),u;if(null===h){for(;!b.done;g++,b=s.next())null!==(b=f(o,b.value,c))&&(l=i(b,l,g),null===d?u=b:d.sibling=b,d=b);return aa&&Jo(o,g),u}for(h=r(o,h);!b.done;g++,b=s.next())null!==(b=m(h,o,g,b.value,c))&&(e&&null!==b.alternate&&h.delete(null===b.key?g:b.key),l=i(b,l,g),null===d?u=b:d.sibling=b,d=b);return e&&h.forEach((function(e){return t(o,e)})),aa&&Jo(o,g),u}return function e(r,a,i,s){if("object"==typeof i&&null!==i&&i.type===k&&null===i.key&&(i=i.props.children),"object"==typeof i&&null!==i){switch(i.$$typeof){case S:e:{for(var c=i.key,u=a;null!==u;){if(u.key===c){if((c=i.type)===k){if(7===u.tag){n(r,u.sibling),(a=o(u,i.props.children)).return=r,r=a;break e}}else if(u.elementType===c||"object"==typeof c&&null!==c&&c.$$typeof===I&&va(c)===u.type){n(r,u.sibling),(a=o(u,i.props)).ref=ya(r,u,i),a.return=r,r=a;break e}n(r,u);break}t(r,u),u=u.sibling}i.type===k?((a=Lc(i.props.children,r.mode,s,i.key)).return=r,r=a):((s=Rc(i.type,i.key,i.props,null,r.mode,s)).ref=ya(r,a,i),s.return=r,r=s)}return l(r);case x:e:{for(u=i.key;null!==a;){if(a.key===u){if(4===a.tag&&a.stateNode.containerInfo===i.containerInfo&&a.stateNode.implementation===i.implementation){n(r,a.sibling),(a=o(a,i.children||[])).return=r,r=a;break e}n(r,a);break}t(r,a),a=a.sibling}(a=Fc(i,r.mode,s)).return=r,r=a}return l(r);case I:return e(r,a,(u=i._init)(i._payload),s)}if(te(i))return h(r,a,i,s);if(L(i))return g(r,a,i,s);ba(r,i)}return"string"==typeof i&&""!==i||"number"==typeof i?(i=""+i,null!==a&&6===a.tag?(n(r,a.sibling),(a=o(a,i)).return=r,r=a):(n(r,a),(a=Mc(i,r.mode,s)).return=r,r=a),l(r)):n(r,a)}}var Sa=wa(!0),xa=wa(!1),ka=_o(null),Ea=null,_a=null,Oa=null;function Ca(){Oa=_a=Ea=null}function Aa(e){var t=ka.current;Oo(ka),e._currentValue=t}function Ta(e,t,n){for(;null!==e;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==r&&(r.childLanes|=t)):null!==r&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function ja(e,t){Ea=e,Oa=_a=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(!!(e.lanes&t)&&(vl=!0),e.firstContext=null)}function Pa(e){var t=e._currentValue;if(Oa!==e)if(e={context:e,memoizedValue:t,next:null},null===_a){if(null===Ea)throw Error(a(308));_a=e,Ea.dependencies={lanes:0,firstContext:e}}else _a=_a.next=e;return t}var Ia=null;function Na(e){null===Ia?Ia=[e]:Ia.push(e)}function Ra(e,t,n,r){var o=t.interleaved;return null===o?(n.next=n,Na(t)):(n.next=o.next,o.next=n),t.interleaved=n,La(e,r)}function La(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}var Da=!1;function Ma(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Fa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function za(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Ba(e,t,n){var r=e.updateQueue;if(null===r)return null;if(r=r.shared,2&As){var o=r.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),r.pending=t,La(e,n)}return null===(o=r.interleaved)?(t.next=t,Na(r)):(t.next=o.next,o.next=t),r.interleaved=t,La(e,n)}function $a(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,4194240&n)){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,bt(e,n)}}function Ua(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var o=null,a=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===a?o=a=i:a=a.next=i,n=n.next}while(null!==n);null===a?o=a=t:a=a.next=t}else o=a=t;return n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:a,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Ha(e,t,n,r){var o=e.updateQueue;Da=!1;var a=o.firstBaseUpdate,i=o.lastBaseUpdate,l=o.shared.pending;if(null!==l){o.shared.pending=null;var s=l,c=s.next;s.next=null,null===i?a=c:i.next=c,i=s;var u=e.alternate;null!==u&&((l=(u=u.updateQueue).lastBaseUpdate)!==i&&(null===l?u.firstBaseUpdate=c:l.next=c,u.lastBaseUpdate=s))}if(null!==a){var d=o.baseState;for(i=0,u=c=s=null,l=a;;){var f=l.lane,p=l.eventTime;if((r&f)===f){null!==u&&(u=u.next={eventTime:p,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var m=e,h=l;switch(f=t,p=n,h.tag){case 1:if("function"==typeof(m=h.payload)){d=m.call(p,d,f);break e}d=m;break e;case 3:m.flags=-65537&m.flags|128;case 0:if(null==(f="function"==typeof(m=h.payload)?m.call(p,d,f):m))break e;d=M({},d,f);break e;case 2:Da=!0}}null!==l.callback&&0!==l.lane&&(e.flags|=64,null===(f=o.effects)?o.effects=[l]:f.push(l))}else p={eventTime:p,lane:f,tag:l.tag,payload:l.payload,callback:l.callback,next:null},null===u?(c=u=p,s=d):u=u.next=p,i|=f;if(null===(l=l.next)){if(null===(l=o.shared.pending))break;l=(f=l).next,f.next=null,o.lastBaseUpdate=f,o.shared.pending=null}}if(null===u&&(s=d),o.baseState=s,o.firstBaseUpdate=c,o.lastBaseUpdate=u,null!==(t=o.shared.interleaved)){o=t;do{i|=o.lane,o=o.next}while(o!==t)}else null===a&&(o.shared.lanes=0);Ds|=i,e.lanes=i,e.memoizedState=d}}function Va(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],o=r.callback;if(null!==o){if(r.callback=null,r=n,"function"!=typeof o)throw Error(a(191,o));o.call(r)}}}var qa={},Wa=_o(qa),Ga=_o(qa),Ka=_o(qa);function Ya(e){if(e===qa)throw Error(a(174));return e}function Qa(e,t){switch(Co(Ka,t),Co(Ga,e),Co(Wa,qa),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:se(null,"");break;default:t=se(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Oo(Wa),Co(Wa,t)}function Za(){Oo(Wa),Oo(Ga),Oo(Ka)}function Xa(e){Ya(Ka.current);var t=Ya(Wa.current),n=se(t,e.type);t!==n&&(Co(Ga,e),Co(Wa,n))}function Ja(e){Ga.current===e&&(Oo(Wa),Oo(Ga))}var ei=_o(0);function ti(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(128&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ni=[];function ri(){for(var e=0;e<ni.length;e++)ni[e]._workInProgressVersionPrimary=null;ni.length=0}var oi=w.ReactCurrentDispatcher,ai=w.ReactCurrentBatchConfig,ii=0,li=null,si=null,ci=null,ui=!1,di=!1,fi=0,pi=0;function mi(){throw Error(a(321))}function hi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!lr(e[n],t[n]))return!1;return!0}function gi(e,t,n,r,o,i){if(ii=i,li=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,oi.current=null===e||null===e.memoizedState?Ji:el,e=n(r,o),di){i=0;do{if(di=!1,fi=0,25<=i)throw Error(a(301));i+=1,ci=si=null,t.updateQueue=null,oi.current=tl,e=n(r,o)}while(di)}if(oi.current=Xi,t=null!==si&&null!==si.next,ii=0,ci=si=li=null,ui=!1,t)throw Error(a(300));return e}function yi(){var e=0!==fi;return fi=0,e}function bi(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ci?li.memoizedState=ci=e:ci=ci.next=e,ci}function vi(){if(null===si){var e=li.alternate;e=null!==e?e.memoizedState:null}else e=si.next;var t=null===ci?li.memoizedState:ci.next;if(null!==t)ci=t,si=e;else{if(null===e)throw Error(a(310));e={memoizedState:(si=e).memoizedState,baseState:si.baseState,baseQueue:si.baseQueue,queue:si.queue,next:null},null===ci?li.memoizedState=ci=e:ci=ci.next=e}return ci}function wi(e,t){return"function"==typeof t?t(e):t}function Si(e){var t=vi(),n=t.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=e;var r=si,o=r.baseQueue,i=n.pending;if(null!==i){if(null!==o){var l=o.next;o.next=i.next,i.next=l}r.baseQueue=o=i,n.pending=null}if(null!==o){i=o.next,r=r.baseState;var s=l=null,c=null,u=i;do{var d=u.lane;if((ii&d)===d)null!==c&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===c?(s=c=f,l=r):c=c.next=f,li.lanes|=d,Ds|=d}u=u.next}while(null!==u&&u!==i);null===c?l=r:c.next=s,lr(r,t.memoizedState)||(vl=!0),t.memoizedState=r,t.baseState=l,t.baseQueue=c,n.lastRenderedState=r}if(null!==(e=n.interleaved)){o=e;do{i=o.lane,li.lanes|=i,Ds|=i,o=o.next}while(o!==e)}else null===o&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function xi(e){var t=vi(),n=t.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=e;var r=n.dispatch,o=n.pending,i=t.memoizedState;if(null!==o){n.pending=null;var l=o=o.next;do{i=e(i,l.action),l=l.next}while(l!==o);lr(i,t.memoizedState)||(vl=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function ki(){}function Ei(e,t){var n=li,r=vi(),o=t(),i=!lr(r.memoizedState,o);if(i&&(r.memoizedState=o,vl=!0),r=r.queue,Di(Ci.bind(null,n,r,e),[e]),r.getSnapshot!==t||i||null!==ci&&1&ci.memoizedState.tag){if(n.flags|=2048,Pi(9,Oi.bind(null,n,r,o,t),void 0,null),null===Ts)throw Error(a(349));30&ii||_i(n,t,o)}return o}function _i(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=li.updateQueue)?(t={lastEffect:null,stores:null},li.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Oi(e,t,n,r){t.value=n,t.getSnapshot=r,Ai(t)&&Ti(e)}function Ci(e,t,n){return n((function(){Ai(t)&&Ti(e)}))}function Ai(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!lr(e,n)}catch(r){return!0}}function Ti(e){var t=La(e,1);null!==t&&nc(t,e,1,-1)}function ji(e){var t=bi();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:wi,lastRenderedState:e},t.queue=e,e=e.dispatch=Ki.bind(null,li,e),[t.memoizedState,e]}function Pi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=li.updateQueue)?(t={lastEffect:null,stores:null},li.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function Ii(){return vi().memoizedState}function Ni(e,t,n,r){var o=bi();li.flags|=e,o.memoizedState=Pi(1|t,n,void 0,void 0===r?null:r)}function Ri(e,t,n,r){var o=vi();r=void 0===r?null:r;var a=void 0;if(null!==si){var i=si.memoizedState;if(a=i.destroy,null!==r&&hi(r,i.deps))return void(o.memoizedState=Pi(t,n,a,r))}li.flags|=e,o.memoizedState=Pi(1|t,n,a,r)}function Li(e,t){return Ni(8390656,8,e,t)}function Di(e,t){return Ri(2048,8,e,t)}function Mi(e,t){return Ri(4,2,e,t)}function Fi(e,t){return Ri(4,4,e,t)}function zi(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Bi(e,t,n){return n=null!=n?n.concat([e]):null,Ri(4,4,zi.bind(null,t,e),n)}function $i(){}function Ui(e,t){var n=vi();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&hi(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Hi(e,t){var n=vi();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&hi(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Vi(e,t,n){return 21&ii?(lr(n,t)||(n=ht(),li.lanes|=n,Ds|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,vl=!0),e.memoizedState=n)}function qi(e,t){var n=vt;vt=0!==n&&4>n?n:4,e(!0);var r=ai.transition;ai.transition={};try{e(!1),t()}finally{vt=n,ai.transition=r}}function Wi(){return vi().memoizedState}function Gi(e,t,n){var r=tc(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Yi(e))Qi(t,n);else if(null!==(n=Ra(e,t,n,r))){nc(n,e,r,ec()),Zi(n,t,r)}}function Ki(e,t,n){var r=tc(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Yi(e))Qi(t,o);else{var a=e.alternate;if(0===e.lanes&&(null===a||0===a.lanes)&&null!==(a=t.lastRenderedReducer))try{var i=t.lastRenderedState,l=a(i,n);if(o.hasEagerState=!0,o.eagerState=l,lr(l,i)){var s=t.interleaved;return null===s?(o.next=o,Na(t)):(o.next=s.next,s.next=o),void(t.interleaved=o)}}catch(c){}null!==(n=Ra(e,t,o,r))&&(nc(n,e,r,o=ec()),Zi(n,t,r))}}function Yi(e){var t=e.alternate;return e===li||null!==t&&t===li}function Qi(e,t){di=ui=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Zi(e,t,n){if(4194240&n){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,bt(e,n)}}var Xi={readContext:Pa,useCallback:mi,useContext:mi,useEffect:mi,useImperativeHandle:mi,useInsertionEffect:mi,useLayoutEffect:mi,useMemo:mi,useReducer:mi,useRef:mi,useState:mi,useDebugValue:mi,useDeferredValue:mi,useTransition:mi,useMutableSource:mi,useSyncExternalStore:mi,useId:mi,unstable_isNewReconciler:!1},Ji={readContext:Pa,useCallback:function(e,t){return bi().memoizedState=[e,void 0===t?null:t],e},useContext:Pa,useEffect:Li,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Ni(4194308,4,zi.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ni(4194308,4,e,t)},useInsertionEffect:function(e,t){return Ni(4,2,e,t)},useMemo:function(e,t){var n=bi();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=bi();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Gi.bind(null,li,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},bi().memoizedState=e},useState:ji,useDebugValue:$i,useDeferredValue:function(e){return bi().memoizedState=e},useTransition:function(){var e=ji(!1),t=e[0];return e=qi.bind(null,e[1]),bi().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=li,o=bi();if(aa){if(void 0===n)throw Error(a(407));n=n()}else{if(n=t(),null===Ts)throw Error(a(349));30&ii||_i(r,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,Li(Ci.bind(null,r,i,e),[e]),r.flags|=2048,Pi(9,Oi.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=bi(),t=Ts.identifierPrefix;if(aa){var n=Xo;t=":"+t+"R"+(n=(Zo&~(1<<32-it(Zo)-1)).toString(32)+n),0<(n=fi++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=pi++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},el={readContext:Pa,useCallback:Ui,useContext:Pa,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Mi,useLayoutEffect:Fi,useMemo:Hi,useReducer:Si,useRef:Ii,useState:function(){return Si(wi)},useDebugValue:$i,useDeferredValue:function(e){return Vi(vi(),si.memoizedState,e)},useTransition:function(){return[Si(wi)[0],vi().memoizedState]},useMutableSource:ki,useSyncExternalStore:Ei,useId:Wi,unstable_isNewReconciler:!1},tl={readContext:Pa,useCallback:Ui,useContext:Pa,useEffect:Di,useImperativeHandle:Bi,useInsertionEffect:Mi,useLayoutEffect:Fi,useMemo:Hi,useReducer:xi,useRef:Ii,useState:function(){return xi(wi)},useDebugValue:$i,useDeferredValue:function(e){var t=vi();return null===si?t.memoizedState=e:Vi(t,si.memoizedState,e)},useTransition:function(){return[xi(wi)[0],vi().memoizedState]},useMutableSource:ki,useSyncExternalStore:Ei,useId:Wi,unstable_isNewReconciler:!1};function nl(e,t){if(e&&e.defaultProps){for(var n in t=M({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}function rl(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:M({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var ol={isMounted:function(e){return!!(e=e._reactInternals)&&Ue(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ec(),o=tc(e),a=za(r,o);a.payload=t,null!=n&&(a.callback=n),null!==(t=Ba(e,a,o))&&(nc(t,e,o,r),$a(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ec(),o=tc(e),a=za(r,o);a.tag=1,a.payload=t,null!=n&&(a.callback=n),null!==(t=Ba(e,a,o))&&(nc(t,e,o,r),$a(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ec(),r=tc(e),o=za(n,r);o.tag=2,null!=t&&(o.callback=t),null!==(t=Ba(e,o,r))&&(nc(t,e,r,n),$a(t,e,r))}};function al(e,t,n,r,o,a,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,a,i):!t.prototype||!t.prototype.isPureReactComponent||(!sr(n,r)||!sr(o,a))}function il(e,t,n){var r=!1,o=Ao,a=t.contextType;return"object"==typeof a&&null!==a?a=Pa(a):(o=No(t)?Po:To.current,a=(r=null!=(r=t.contextTypes))?Io(e,o):Ao),t=new t(n,a),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=ol,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=a),t}function ll(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&ol.enqueueReplaceState(t,t.state,null)}function sl(e,t,n,r){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs={},Ma(e);var a=t.contextType;"object"==typeof a&&null!==a?o.context=Pa(a):(a=No(t)?Po:To.current,o.context=Io(e,a)),o.state=e.memoizedState,"function"==typeof(a=t.getDerivedStateFromProps)&&(rl(e,t,a,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&ol.enqueueReplaceState(o,o.state,null),Ha(e,n,o,r),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4194308)}function cl(e,t){try{var n="",r=t;do{n+=$(r),r=r.return}while(r);var o=n}catch(a){o="\nError generating stack: "+a.message+"\n"+a.stack}return{value:e,source:t,stack:o,digest:null}}function ul(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function dl(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}var fl="function"==typeof WeakMap?WeakMap:Map;function pl(e,t,n){(n=za(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Vs||(Vs=!0,qs=r),dl(0,t)},n}function ml(e,t,n){(n=za(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var o=t.value;n.payload=function(){return r(o)},n.callback=function(){dl(0,t)}}var a=e.stateNode;return null!==a&&"function"==typeof a.componentDidCatch&&(n.callback=function(){dl(0,t),"function"!=typeof r&&(null===Ws?Ws=new Set([this]):Ws.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function hl(e,t,n){var r=e.pingCache;if(null===r){r=e.pingCache=new fl;var o=new Set;r.set(t,o)}else void 0===(o=r.get(t))&&(o=new Set,r.set(t,o));o.has(n)||(o.add(n),e=_c.bind(null,e,t,n),t.then(e,e))}function gl(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function yl(e,t,n,r,o){return 1&e.mode?(e.flags|=65536,e.lanes=o,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=za(-1,1)).tag=2,Ba(n,t,1))),n.lanes|=1),e)}var bl=w.ReactCurrentOwner,vl=!1;function wl(e,t,n,r){t.child=null===e?xa(t,null,n,r):Sa(t,e.child,n,r)}function Sl(e,t,n,r,o){n=n.render;var a=t.ref;return ja(t,o),r=gi(e,t,n,r,a,o),n=yi(),null===e||vl?(aa&&n&&ta(t),t.flags|=1,wl(e,t,r,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Vl(e,t,o))}function xl(e,t,n,r,o){if(null===e){var a=n.type;return"function"!=typeof a||Ic(a)||void 0!==a.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Rc(n.type,null,r,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=a,kl(e,t,a,r,o))}if(a=e.child,!(e.lanes&o)){var i=a.memoizedProps;if((n=null!==(n=n.compare)?n:sr)(i,r)&&e.ref===t.ref)return Vl(e,t,o)}return t.flags|=1,(e=Nc(a,r)).ref=t.ref,e.return=t,t.child=e}function kl(e,t,n,r,o){if(null!==e){var a=e.memoizedProps;if(sr(a,r)&&e.ref===t.ref){if(vl=!1,t.pendingProps=r=a,!(e.lanes&o))return t.lanes=e.lanes,Vl(e,t,o);131072&e.flags&&(vl=!0)}}return Ol(e,t,n,r,o)}function El(e,t,n){var r=t.pendingProps,o=r.children,a=null!==e?e.memoizedState:null;if("hidden"===r.mode)if(1&t.mode){if(!(1073741824&n))return e=null!==a?a.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Co(Ns,Is),Is|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=null!==a?a.baseLanes:n,Co(Ns,Is),Is|=r}else t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Co(Ns,Is),Is|=n;else null!==a?(r=a.baseLanes|n,t.memoizedState=null):r=n,Co(Ns,Is),Is|=r;return wl(e,t,o,n),t.child}function _l(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Ol(e,t,n,r,o){var a=No(n)?Po:To.current;return a=Io(t,a),ja(t,o),n=gi(e,t,n,r,a,o),r=yi(),null===e||vl?(aa&&r&&ta(t),t.flags|=1,wl(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Vl(e,t,o))}function Cl(e,t,n,r,o){if(No(n)){var a=!0;Mo(t)}else a=!1;if(ja(t,o),null===t.stateNode)Hl(e,t),il(t,n,r),sl(t,n,r,o),r=!0;else if(null===e){var i=t.stateNode,l=t.memoizedProps;i.props=l;var s=i.context,c=n.contextType;"object"==typeof c&&null!==c?c=Pa(c):c=Io(t,c=No(n)?Po:To.current);var u=n.getDerivedStateFromProps,d="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==r||s!==c)&&ll(t,i,r,c),Da=!1;var f=t.memoizedState;i.state=f,Ha(t,r,i,o),s=t.memoizedState,l!==r||f!==s||jo.current||Da?("function"==typeof u&&(rl(t,n,u,r),s=t.memoizedState),(l=Da||al(t,n,l,r,f,s,c))?(d||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4194308)):("function"==typeof i.componentDidMount&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=s),i.props=r,i.state=s,i.context=c,r=l):("function"==typeof i.componentDidMount&&(t.flags|=4194308),r=!1)}else{i=t.stateNode,Fa(e,t),l=t.memoizedProps,c=t.type===t.elementType?l:nl(t.type,l),i.props=c,d=t.pendingProps,f=i.context,"object"==typeof(s=n.contextType)&&null!==s?s=Pa(s):s=Io(t,s=No(n)?Po:To.current);var p=n.getDerivedStateFromProps;(u="function"==typeof p||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==d||f!==s)&&ll(t,i,r,s),Da=!1,f=t.memoizedState,i.state=f,Ha(t,r,i,o);var m=t.memoizedState;l!==d||f!==m||jo.current||Da?("function"==typeof p&&(rl(t,n,p,r),m=t.memoizedState),(c=Da||al(t,n,c,r,f,m,s)||!1)?(u||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(r,m,s),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,m,s)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),i.props=r,i.state=m,i.context=s,r=c):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return Al(e,t,n,r,a,o)}function Al(e,t,n,r,o,a){_l(e,t);var i=!!(128&t.flags);if(!r&&!i)return o&&Fo(t,n,!1),Vl(e,t,a);r=t.stateNode,bl.current=t;var l=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=Sa(t,e.child,null,a),t.child=Sa(t,null,l,a)):wl(e,t,l,a),t.memoizedState=r.state,o&&Fo(t,n,!0),t.child}function Tl(e){var t=e.stateNode;t.pendingContext?Lo(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Lo(0,t.context,!1),Qa(e,t.containerInfo)}function jl(e,t,n,r,o){return ma(),ha(o),t.flags|=256,wl(e,t,n,r),t.child}var Pl,Il,Nl,Rl,Ll={dehydrated:null,treeContext:null,retryLane:0};function Dl(e){return{baseLanes:e,cachePool:null,transitions:null}}function Ml(e,t,n){var r,o=t.pendingProps,i=ei.current,l=!1,s=!!(128&t.flags);if((r=s)||(r=(null===e||null!==e.memoizedState)&&!!(2&i)),r?(l=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(i|=1),Co(ei,1&i),null===e)return ua(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(1&t.mode?"$!"===e.data?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(s=o.children,e=o.fallback,l?(o=t.mode,l=t.child,s={mode:"hidden",children:s},1&o||null===l?l=Dc(s,o,0,null):(l.childLanes=0,l.pendingProps=s),e=Lc(e,o,n,null),l.return=t,e.return=t,l.sibling=e,t.child=l,t.child.memoizedState=Dl(n),t.memoizedState=Ll,e):Fl(t,s));if(null!==(i=e.memoizedState)&&null!==(r=i.dehydrated))return function(e,t,n,r,o,i,l){if(n)return 256&t.flags?(t.flags&=-257,zl(e,t,l,r=ul(Error(a(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(i=r.fallback,o=t.mode,r=Dc({mode:"visible",children:r.children},o,0,null),(i=Lc(i,o,l,null)).flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,1&t.mode&&Sa(t,e.child,null,l),t.child.memoizedState=Dl(l),t.memoizedState=Ll,i);if(!(1&t.mode))return zl(e,t,l,null);if("$!"===o.data){if(r=o.nextSibling&&o.nextSibling.dataset)var s=r.dgst;return r=s,zl(e,t,l,r=ul(i=Error(a(419)),r,void 0))}if(s=!!(l&e.childLanes),vl||s){if(null!==(r=Ts)){switch(l&-l){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}0!==(o=o&(r.suspendedLanes|l)?0:o)&&o!==i.retryLane&&(i.retryLane=o,La(e,o),nc(r,e,o,-1))}return hc(),zl(e,t,l,r=ul(Error(a(421))))}return"$?"===o.data?(t.flags|=128,t.child=e.child,t=Cc.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,oa=co(o.nextSibling),ra=t,aa=!0,ia=null,null!==e&&(Ko[Yo++]=Zo,Ko[Yo++]=Xo,Ko[Yo++]=Qo,Zo=e.id,Xo=e.overflow,Qo=t),t=Fl(t,r.children),t.flags|=4096,t)}(e,t,s,o,r,i,n);if(l){l=o.fallback,s=t.mode,r=(i=e.child).sibling;var c={mode:"hidden",children:o.children};return 1&s||t.child===i?(o=Nc(i,c)).subtreeFlags=14680064&i.subtreeFlags:((o=t.child).childLanes=0,o.pendingProps=c,t.deletions=null),null!==r?l=Nc(r,l):(l=Lc(l,s,n,null)).flags|=2,l.return=t,o.return=t,o.sibling=l,t.child=o,o=l,l=t.child,s=null===(s=e.child.memoizedState)?Dl(n):{baseLanes:s.baseLanes|n,cachePool:null,transitions:s.transitions},l.memoizedState=s,l.childLanes=e.childLanes&~n,t.memoizedState=Ll,o}return e=(l=e.child).sibling,o=Nc(l,{mode:"visible",children:o.children}),!(1&t.mode)&&(o.lanes=n),o.return=t,o.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=o,t.memoizedState=null,o}function Fl(e,t){return(t=Dc({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function zl(e,t,n,r){return null!==r&&ha(r),Sa(t,e.child,null,n),(e=Fl(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Bl(e,t,n){e.lanes|=t;var r=e.alternate;null!==r&&(r.lanes|=t),Ta(e.return,t,n)}function $l(e,t,n,r,o){var a=e.memoizedState;null===a?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailMode=o)}function Ul(e,t,n){var r=t.pendingProps,o=r.revealOrder,a=r.tail;if(wl(e,t,r.children,n),2&(r=ei.current))r=1&r|2,t.flags|=128;else{if(null!==e&&128&e.flags)e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Bl(e,n,t);else if(19===e.tag)Bl(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(Co(ei,r),1&t.mode)switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===ti(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),$l(t,!1,o,n,a);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ti(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}$l(t,!0,n,null,a);break;case"together":$l(t,!1,null,null,void 0);break;default:t.memoizedState=null}else t.memoizedState=null;return t.child}function Hl(e,t){!(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Vl(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Ds|=t.lanes,!(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(a(153));if(null!==t.child){for(n=Nc(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Nc(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function ql(e,t){if(!aa)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Wl(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=14680064&o.subtreeFlags,r|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Gl(e,t,n){var r=t.pendingProps;switch(na(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Wl(t),null;case 1:case 17:return No(t.type)&&Ro(),Wl(t),null;case 3:return r=t.stateNode,Za(),Oo(jo),Oo(To),ri(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(fa(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&!(256&t.flags)||(t.flags|=1024,null!==ia&&(ic(ia),ia=null))),Il(e,t),Wl(t),null;case 5:Ja(t);var o=Ya(Ka.current);if(n=t.type,null!==e&&null!=t.stateNode)Nl(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(null===t.stateNode)throw Error(a(166));return Wl(t),null}if(e=Ya(Wa.current),fa(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[po]=t,r[mo]=i,e=!!(1&t.mode),n){case"dialog":zr("cancel",r),zr("close",r);break;case"iframe":case"object":case"embed":zr("load",r);break;case"video":case"audio":for(o=0;o<Lr.length;o++)zr(Lr[o],r);break;case"source":zr("error",r);break;case"img":case"image":case"link":zr("error",r),zr("load",r);break;case"details":zr("toggle",r);break;case"input":Q(r,i),zr("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},zr("invalid",r);break;case"textarea":oe(r,i),zr("invalid",r)}for(var s in be(n,i),o=null,i)if(i.hasOwnProperty(s)){var c=i[s];"children"===s?"string"==typeof c?r.textContent!==c&&(!0!==i.suppressHydrationWarning&&Xr(r.textContent,c,e),o=["children",c]):"number"==typeof c&&r.textContent!==""+c&&(!0!==i.suppressHydrationWarning&&Xr(r.textContent,c,e),o=["children",""+c]):l.hasOwnProperty(s)&&null!=c&&"onScroll"===s&&zr("scroll",r)}switch(n){case"input":W(r),J(r,i,!0);break;case"textarea":W(r),ie(r);break;case"select":case"option":break;default:"function"==typeof i.onClick&&(r.onclick=Jr)}r=o,t.updateQueue=r,null!==r&&(t.flags|=4)}else{s=9===o.nodeType?o:o.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=le(n)),"http://www.w3.org/1999/xhtml"===e?"script"===n?((e=s.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),"select"===n&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[po]=t,e[mo]=r,Pl(e,t,!1,!1),t.stateNode=e;e:{switch(s=ve(n,r),n){case"dialog":zr("cancel",e),zr("close",e),o=r;break;case"iframe":case"object":case"embed":zr("load",e),o=r;break;case"video":case"audio":for(o=0;o<Lr.length;o++)zr(Lr[o],e);o=r;break;case"source":zr("error",e),o=r;break;case"img":case"image":case"link":zr("error",e),zr("load",e),o=r;break;case"details":zr("toggle",e),o=r;break;case"input":Q(e,r),o=Y(e,r),zr("invalid",e);break;case"option":default:o=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=M({},r,{value:void 0}),zr("invalid",e);break;case"textarea":oe(e,r),o=re(e,r),zr("invalid",e)}for(i in be(n,o),c=o)if(c.hasOwnProperty(i)){var u=c[i];"style"===i?ge(e,u):"dangerouslySetInnerHTML"===i?null!=(u=u?u.__html:void 0)&&de(e,u):"children"===i?"string"==typeof u?("textarea"!==n||""!==u)&&fe(e,u):"number"==typeof u&&fe(e,""+u):"suppressContentEditableWarning"!==i&&"suppressHydrationWarning"!==i&&"autoFocus"!==i&&(l.hasOwnProperty(i)?null!=u&&"onScroll"===i&&zr("scroll",e):null!=u&&v(e,i,u,s))}switch(n){case"input":W(e),J(e,r,!1);break;case"textarea":W(e),ie(e);break;case"option":null!=r.value&&e.setAttribute("value",""+V(r.value));break;case"select":e.multiple=!!r.multiple,null!=(i=r.value)?ne(e,!!r.multiple,i,!1):null!=r.defaultValue&&ne(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=Jr)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return Wl(t),null;case 6:if(e&&null!=t.stateNode)Rl(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(a(166));if(n=Ya(Ka.current),Ya(Wa.current),fa(t)){if(r=t.stateNode,n=t.memoizedProps,r[po]=t,(i=r.nodeValue!==n)&&null!==(e=ra))switch(e.tag){case 3:Xr(r.nodeValue,n,!!(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Xr(r.nodeValue,n,!!(1&e.mode))}i&&(t.flags|=4)}else(r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[po]=t,t.stateNode=r}return Wl(t),null;case 13:if(Oo(ei),r=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(aa&&null!==oa&&1&t.mode&&!(128&t.flags))pa(),ma(),t.flags|=98560,i=!1;else if(i=fa(t),null!==r&&null!==r.dehydrated){if(null===e){if(!i)throw Error(a(318));if(!(i=null!==(i=t.memoizedState)?i.dehydrated:null))throw Error(a(317));i[po]=t}else ma(),!(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Wl(t),i=!1}else null!==ia&&(ic(ia),ia=null),i=!0;if(!i)return 65536&t.flags?t:null}return 128&t.flags?(t.lanes=n,t):((r=null!==r)!==(null!==e&&null!==e.memoizedState)&&r&&(t.child.flags|=8192,1&t.mode&&(null===e||1&ei.current?0===Rs&&(Rs=3):hc())),null!==t.updateQueue&&(t.flags|=4),Wl(t),null);case 4:return Za(),Il(e,t),null===e&&Ur(t.stateNode.containerInfo),Wl(t),null;case 10:return Aa(t.type._context),Wl(t),null;case 19:if(Oo(ei),null===(i=t.memoizedState))return Wl(t),null;if(r=!!(128&t.flags),null===(s=i.rendering))if(r)ql(i,!1);else{if(0!==Rs||null!==e&&128&e.flags)for(e=t.child;null!==e;){if(null!==(s=ti(e))){for(t.flags|=128,ql(i,!1),null!==(r=s.updateQueue)&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;null!==n;)e=r,(i=n).flags&=14680066,null===(s=i.alternate)?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=s.childLanes,i.lanes=s.lanes,i.child=s.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=s.memoizedProps,i.memoizedState=s.memoizedState,i.updateQueue=s.updateQueue,i.type=s.type,e=s.dependencies,i.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Co(ei,1&ei.current|2),t.child}e=e.sibling}null!==i.tail&&Ze()>Us&&(t.flags|=128,r=!0,ql(i,!1),t.lanes=4194304)}else{if(!r)if(null!==(e=ti(s))){if(t.flags|=128,r=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),ql(i,!0),null===i.tail&&"hidden"===i.tailMode&&!s.alternate&&!aa)return Wl(t),null}else 2*Ze()-i.renderingStartTime>Us&&1073741824!==n&&(t.flags|=128,r=!0,ql(i,!1),t.lanes=4194304);i.isBackwards?(s.sibling=t.child,t.child=s):(null!==(n=i.last)?n.sibling=s:t.child=s,i.last=s)}return null!==i.tail?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Ze(),t.sibling=null,n=ei.current,Co(ei,r?1&n|2:1&n),t):(Wl(t),null);case 22:case 23:return dc(),r=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==r&&(t.flags|=8192),r&&1&t.mode?!!(1073741824&Is)&&(Wl(t),6&t.subtreeFlags&&(t.flags|=8192)):Wl(t),null;case 24:case 25:return null}throw Error(a(156,t.tag))}function Kl(e,t){switch(na(t),t.tag){case 1:return No(t.type)&&Ro(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return Za(),Oo(jo),Oo(To),ri(),65536&(e=t.flags)&&!(128&e)?(t.flags=-65537&e|128,t):null;case 5:return Ja(t),null;case 13:if(Oo(ei),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(a(340));ma()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Oo(ei),null;case 4:return Za(),null;case 10:return Aa(t.type._context),null;case 22:case 23:return dc(),null;default:return null}}Pl=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Il=function(){},Nl=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,Ya(Wa.current);var a,i=null;switch(n){case"input":o=Y(e,o),r=Y(e,r),i=[];break;case"select":o=M({},o,{value:void 0}),r=M({},r,{value:void 0}),i=[];break;case"textarea":o=re(e,o),r=re(e,r),i=[];break;default:"function"!=typeof o.onClick&&"function"==typeof r.onClick&&(e.onclick=Jr)}for(u in be(n,r),n=null,o)if(!r.hasOwnProperty(u)&&o.hasOwnProperty(u)&&null!=o[u])if("style"===u){var s=o[u];for(a in s)s.hasOwnProperty(a)&&(n||(n={}),n[a]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(l.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in r){var c=r[u];if(s=null!=o?o[u]:void 0,r.hasOwnProperty(u)&&c!==s&&(null!=c||null!=s))if("style"===u)if(s){for(a in s)!s.hasOwnProperty(a)||c&&c.hasOwnProperty(a)||(n||(n={}),n[a]="");for(a in c)c.hasOwnProperty(a)&&s[a]!==c[a]&&(n||(n={}),n[a]=c[a])}else n||(i||(i=[]),i.push(u,n)),n=c;else"dangerouslySetInnerHTML"===u?(c=c?c.__html:void 0,s=s?s.__html:void 0,null!=c&&s!==c&&(i=i||[]).push(u,c)):"children"===u?"string"!=typeof c&&"number"!=typeof c||(i=i||[]).push(u,""+c):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(l.hasOwnProperty(u)?(null!=c&&"onScroll"===u&&zr("scroll",e),i||s===c||(i=[])):(i=i||[]).push(u,c))}n&&(i=i||[]).push("style",n);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Rl=function(e,t,n,r){n!==r&&(t.flags|=4)};var Yl=!1,Ql=!1,Zl="function"==typeof WeakSet?WeakSet:Set,Xl=null;function Jl(e,t){var n=e.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(r){Ec(e,t,r)}else n.current=null}function es(e,t,n){try{n()}catch(r){Ec(e,t,r)}}var ts=!1;function ns(e,t,n){var r=t.updateQueue;if(null!==(r=null!==r?r.lastEffect:null)){var o=r=r.next;do{if((o.tag&e)===e){var a=o.destroy;o.destroy=void 0,void 0!==a&&es(t,n,a)}o=o.next}while(o!==r)}}function rs(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function os(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"==typeof t?t(e):t.current=e}}function as(e){var t=e.alternate;null!==t&&(e.alternate=null,as(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[po],delete t[mo],delete t[go],delete t[yo],delete t[bo])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function is(e){return 5===e.tag||3===e.tag||4===e.tag}function ls(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||is(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function ss(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=Jr));else if(4!==r&&null!==(e=e.child))for(ss(e,t,n),e=e.sibling;null!==e;)ss(e,t,n),e=e.sibling}function cs(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(cs(e,t,n),e=e.sibling;null!==e;)cs(e,t,n),e=e.sibling}var us=null,ds=!1;function fs(e,t,n){for(n=n.child;null!==n;)ps(e,t,n),n=n.sibling}function ps(e,t,n){if(at&&"function"==typeof at.onCommitFiberUnmount)try{at.onCommitFiberUnmount(ot,n)}catch(l){}switch(n.tag){case 5:Ql||Jl(n,t);case 6:var r=us,o=ds;us=null,fs(e,t,n),ds=o,null!==(us=r)&&(ds?(e=us,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):us.removeChild(n.stateNode));break;case 18:null!==us&&(ds?(e=us,n=n.stateNode,8===e.nodeType?so(e.parentNode,n):1===e.nodeType&&so(e,n),Ut(e)):so(us,n.stateNode));break;case 4:r=us,o=ds,us=n.stateNode.containerInfo,ds=!0,fs(e,t,n),us=r,ds=o;break;case 0:case 11:case 14:case 15:if(!Ql&&(null!==(r=n.updateQueue)&&null!==(r=r.lastEffect))){o=r=r.next;do{var a=o,i=a.destroy;a=a.tag,void 0!==i&&(2&a||4&a)&&es(n,t,i),o=o.next}while(o!==r)}fs(e,t,n);break;case 1:if(!Ql&&(Jl(n,t),"function"==typeof(r=n.stateNode).componentWillUnmount))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Ec(n,t,l)}fs(e,t,n);break;case 21:fs(e,t,n);break;case 22:1&n.mode?(Ql=(r=Ql)||null!==n.memoizedState,fs(e,t,n),Ql=r):fs(e,t,n);break;default:fs(e,t,n)}}function ms(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Zl),t.forEach((function(t){var r=Ac.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function hs(e,t){var n=t.deletions;if(null!==n)for(var r=0;r<n.length;r++){var o=n[r];try{var i=e,l=t,s=l;e:for(;null!==s;){switch(s.tag){case 5:us=s.stateNode,ds=!1;break e;case 3:case 4:us=s.stateNode.containerInfo,ds=!0;break e}s=s.return}if(null===us)throw Error(a(160));ps(i,l,o),us=null,ds=!1;var c=o.alternate;null!==c&&(c.return=null),o.return=null}catch(u){Ec(o,t,u)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)gs(t,e),t=t.sibling}function gs(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(hs(t,e),ys(e),4&r){try{ns(3,e,e.return),rs(3,e)}catch(g){Ec(e,e.return,g)}try{ns(5,e,e.return)}catch(g){Ec(e,e.return,g)}}break;case 1:hs(t,e),ys(e),512&r&&null!==n&&Jl(n,n.return);break;case 5:if(hs(t,e),ys(e),512&r&&null!==n&&Jl(n,n.return),32&e.flags){var o=e.stateNode;try{fe(o,"")}catch(g){Ec(e,e.return,g)}}if(4&r&&null!=(o=e.stateNode)){var i=e.memoizedProps,l=null!==n?n.memoizedProps:i,s=e.type,c=e.updateQueue;if(e.updateQueue=null,null!==c)try{"input"===s&&"radio"===i.type&&null!=i.name&&Z(o,i),ve(s,l);var u=ve(s,i);for(l=0;l<c.length;l+=2){var d=c[l],f=c[l+1];"style"===d?ge(o,f):"dangerouslySetInnerHTML"===d?de(o,f):"children"===d?fe(o,f):v(o,d,f,u)}switch(s){case"input":X(o,i);break;case"textarea":ae(o,i);break;case"select":var p=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!i.multiple;var m=i.value;null!=m?ne(o,!!i.multiple,m,!1):p!==!!i.multiple&&(null!=i.defaultValue?ne(o,!!i.multiple,i.defaultValue,!0):ne(o,!!i.multiple,i.multiple?[]:"",!1))}o[mo]=i}catch(g){Ec(e,e.return,g)}}break;case 6:if(hs(t,e),ys(e),4&r){if(null===e.stateNode)throw Error(a(162));o=e.stateNode,i=e.memoizedProps;try{o.nodeValue=i}catch(g){Ec(e,e.return,g)}}break;case 3:if(hs(t,e),ys(e),4&r&&null!==n&&n.memoizedState.isDehydrated)try{Ut(t.containerInfo)}catch(g){Ec(e,e.return,g)}break;case 4:default:hs(t,e),ys(e);break;case 13:hs(t,e),ys(e),8192&(o=e.child).flags&&(i=null!==o.memoizedState,o.stateNode.isHidden=i,!i||null!==o.alternate&&null!==o.alternate.memoizedState||($s=Ze())),4&r&&ms(e);break;case 22:if(d=null!==n&&null!==n.memoizedState,1&e.mode?(Ql=(u=Ql)||d,hs(t,e),Ql=u):hs(t,e),ys(e),8192&r){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!d&&1&e.mode)for(Xl=e,d=e.child;null!==d;){for(f=Xl=d;null!==Xl;){switch(m=(p=Xl).child,p.tag){case 0:case 11:case 14:case 15:ns(4,p,p.return);break;case 1:Jl(p,p.return);var h=p.stateNode;if("function"==typeof h.componentWillUnmount){r=p,n=p.return;try{t=r,h.props=t.memoizedProps,h.state=t.memoizedState,h.componentWillUnmount()}catch(g){Ec(r,n,g)}}break;case 5:Jl(p,p.return);break;case 22:if(null!==p.memoizedState){Ss(f);continue}}null!==m?(m.return=p,Xl=m):Ss(f)}d=d.sibling}e:for(d=null,f=e;;){if(5===f.tag){if(null===d){d=f;try{o=f.stateNode,u?"function"==typeof(i=o.style).setProperty?i.setProperty("display","none","important"):i.display="none":(s=f.stateNode,l=null!=(c=f.memoizedProps.style)&&c.hasOwnProperty("display")?c.display:null,s.style.display=he("display",l))}catch(g){Ec(e,e.return,g)}}}else if(6===f.tag){if(null===d)try{f.stateNode.nodeValue=u?"":f.memoizedProps}catch(g){Ec(e,e.return,g)}}else if((22!==f.tag&&23!==f.tag||null===f.memoizedState||f===e)&&null!==f.child){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;null===f.sibling;){if(null===f.return||f.return===e)break e;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:hs(t,e),ys(e),4&r&&ms(e);case 21:}}function ys(e){var t=e.flags;if(2&t){try{e:{for(var n=e.return;null!==n;){if(is(n)){var r=n;break e}n=n.return}throw Error(a(160))}switch(r.tag){case 5:var o=r.stateNode;32&r.flags&&(fe(o,""),r.flags&=-33),cs(e,ls(e),o);break;case 3:case 4:var i=r.stateNode.containerInfo;ss(e,ls(e),i);break;default:throw Error(a(161))}}catch(l){Ec(e,e.return,l)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function bs(e,t,n){Xl=e,vs(e,t,n)}function vs(e,t,n){for(var r=!!(1&e.mode);null!==Xl;){var o=Xl,a=o.child;if(22===o.tag&&r){var i=null!==o.memoizedState||Yl;if(!i){var l=o.alternate,s=null!==l&&null!==l.memoizedState||Ql;l=Yl;var c=Ql;if(Yl=i,(Ql=s)&&!c)for(Xl=o;null!==Xl;)s=(i=Xl).child,22===i.tag&&null!==i.memoizedState?xs(o):null!==s?(s.return=i,Xl=s):xs(o);for(;null!==a;)Xl=a,vs(a,t,n),a=a.sibling;Xl=o,Yl=l,Ql=c}ws(e)}else 8772&o.subtreeFlags&&null!==a?(a.return=o,Xl=a):ws(e)}}function ws(e){for(;null!==Xl;){var t=Xl;if(8772&t.flags){var n=t.alternate;try{if(8772&t.flags)switch(t.tag){case 0:case 11:case 15:Ql||rs(5,t);break;case 1:var r=t.stateNode;if(4&t.flags&&!Ql)if(null===n)r.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:nl(t.type,n.memoizedProps);r.componentDidUpdate(o,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;null!==i&&Va(t,i,r);break;case 3:var l=t.updateQueue;if(null!==l){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}Va(t,l,n)}break;case 5:var s=t.stateNode;if(null===n&&4&t.flags){n=s;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var d=u.memoizedState;if(null!==d){var f=d.dehydrated;null!==f&&Ut(f)}}}break;default:throw Error(a(163))}Ql||512&t.flags&&os(t)}catch(p){Ec(t,t.return,p)}}if(t===e){Xl=null;break}if(null!==(n=t.sibling)){n.return=t.return,Xl=n;break}Xl=t.return}}function Ss(e){for(;null!==Xl;){var t=Xl;if(t===e){Xl=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Xl=n;break}Xl=t.return}}function xs(e){for(;null!==Xl;){var t=Xl;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{rs(4,t)}catch(s){Ec(t,n,s)}break;case 1:var r=t.stateNode;if("function"==typeof r.componentDidMount){var o=t.return;try{r.componentDidMount()}catch(s){Ec(t,o,s)}}var a=t.return;try{os(t)}catch(s){Ec(t,a,s)}break;case 5:var i=t.return;try{os(t)}catch(s){Ec(t,i,s)}}}catch(s){Ec(t,t.return,s)}if(t===e){Xl=null;break}var l=t.sibling;if(null!==l){l.return=t.return,Xl=l;break}Xl=t.return}}var ks,Es=Math.ceil,_s=w.ReactCurrentDispatcher,Os=w.ReactCurrentOwner,Cs=w.ReactCurrentBatchConfig,As=0,Ts=null,js=null,Ps=0,Is=0,Ns=_o(0),Rs=0,Ls=null,Ds=0,Ms=0,Fs=0,zs=null,Bs=null,$s=0,Us=1/0,Hs=null,Vs=!1,qs=null,Ws=null,Gs=!1,Ks=null,Ys=0,Qs=0,Zs=null,Xs=-1,Js=0;function ec(){return 6&As?Ze():-1!==Xs?Xs:Xs=Ze()}function tc(e){return 1&e.mode?2&As&&0!==Ps?Ps&-Ps:null!==ga.transition?(0===Js&&(Js=ht()),Js):0!==(e=vt)?e:e=void 0===(e=window.event)?16:Qt(e.type):1}function nc(e,t,n,r){if(50<Qs)throw Qs=0,Zs=null,Error(a(185));yt(e,n,r),2&As&&e===Ts||(e===Ts&&(!(2&As)&&(Ms|=n),4===Rs&&lc(e,Ps)),rc(e,r),1===n&&0===As&&!(1&t.mode)&&(Us=Ze()+500,Bo&&Ho()))}function rc(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,o=e.expirationTimes,a=e.pendingLanes;0<a;){var i=31-it(a),l=1<<i,s=o[i];-1===s?l&n&&!(l&r)||(o[i]=pt(l,t)):s<=t&&(e.expiredLanes|=l),a&=~l}}(e,t);var r=ft(e,e===Ts?Ps:0);if(0===r)null!==n&&Ke(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(null!=n&&Ke(n),1===t)0===e.tag?function(e){Bo=!0,Uo(e)}(sc.bind(null,e)):Uo(sc.bind(null,e)),io((function(){!(6&As)&&Ho()})),n=null;else{switch(wt(r)){case 1:n=Je;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=rt}n=Tc(n,oc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function oc(e,t){if(Xs=-1,Js=0,6&As)throw Error(a(327));var n=e.callbackNode;if(xc()&&e.callbackNode!==n)return null;var r=ft(e,e===Ts?Ps:0);if(0===r)return null;if(30&r||r&e.expiredLanes||t)t=gc(e,r);else{t=r;var o=As;As|=2;var i=mc();for(Ts===e&&Ps===t||(Hs=null,Us=Ze()+500,fc(e,t));;)try{bc();break}catch(s){pc(e,s)}Ca(),_s.current=i,As=o,null!==js?t=0:(Ts=null,Ps=0,t=Rs)}if(0!==t){if(2===t&&(0!==(o=mt(e))&&(r=o,t=ac(e,o))),1===t)throw n=Ls,fc(e,0),lc(e,r),rc(e,Ze()),n;if(6===t)lc(e,r);else{if(o=e.current.alternate,!(30&r||function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var r=0;r<n.length;r++){var o=n[r],a=o.getSnapshot;o=o.value;try{if(!lr(a(),o))return!1}catch(l){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(o)||(t=gc(e,r),2===t&&(i=mt(e),0!==i&&(r=i,t=ac(e,i))),1!==t)))throw n=Ls,fc(e,0),lc(e,r),rc(e,Ze()),n;switch(e.finishedWork=o,e.finishedLanes=r,t){case 0:case 1:throw Error(a(345));case 2:case 5:Sc(e,Bs,Hs);break;case 3:if(lc(e,r),(130023424&r)===r&&10<(t=$s+500-Ze())){if(0!==ft(e,0))break;if(((o=e.suspendedLanes)&r)!==r){ec(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=ro(Sc.bind(null,e,Bs,Hs),t);break}Sc(e,Bs,Hs);break;case 4:if(lc(e,r),(4194240&r)===r)break;for(t=e.eventTimes,o=-1;0<r;){var l=31-it(r);i=1<<l,(l=t[l])>o&&(o=l),r&=~i}if(r=o,10<(r=(120>(r=Ze()-r)?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Es(r/1960))-r)){e.timeoutHandle=ro(Sc.bind(null,e,Bs,Hs),r);break}Sc(e,Bs,Hs);break;default:throw Error(a(329))}}}return rc(e,Ze()),e.callbackNode===n?oc.bind(null,e):null}function ac(e,t){var n=zs;return e.current.memoizedState.isDehydrated&&(fc(e,t).flags|=256),2!==(e=gc(e,t))&&(t=Bs,Bs=n,null!==t&&ic(t)),e}function ic(e){null===Bs?Bs=e:Bs.push.apply(Bs,e)}function lc(e,t){for(t&=~Fs,t&=~Ms,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-it(t),r=1<<n;e[n]=-1,t&=~r}}function sc(e){if(6&As)throw Error(a(327));xc();var t=ft(e,0);if(!(1&t))return rc(e,Ze()),null;var n=gc(e,t);if(0!==e.tag&&2===n){var r=mt(e);0!==r&&(t=r,n=ac(e,r))}if(1===n)throw n=Ls,fc(e,0),lc(e,t),rc(e,Ze()),n;if(6===n)throw Error(a(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Sc(e,Bs,Hs),rc(e,Ze()),null}function cc(e,t){var n=As;As|=1;try{return e(t)}finally{0===(As=n)&&(Us=Ze()+500,Bo&&Ho())}}function uc(e){null!==Ks&&0===Ks.tag&&!(6&As)&&xc();var t=As;As|=1;var n=Cs.transition,r=vt;try{if(Cs.transition=null,vt=1,e)return e()}finally{vt=r,Cs.transition=n,!(6&(As=t))&&Ho()}}function dc(){Is=Ns.current,Oo(Ns)}function fc(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,oo(n)),null!==js)for(n=js.return;null!==n;){var r=n;switch(na(r),r.tag){case 1:null!=(r=r.type.childContextTypes)&&Ro();break;case 3:Za(),Oo(jo),Oo(To),ri();break;case 5:Ja(r);break;case 4:Za();break;case 13:case 19:Oo(ei);break;case 10:Aa(r.type._context);break;case 22:case 23:dc()}n=n.return}if(Ts=e,js=e=Nc(e.current,null),Ps=Is=t,Rs=0,Ls=null,Fs=Ms=Ds=0,Bs=zs=null,null!==Ia){for(t=0;t<Ia.length;t++)if(null!==(r=(n=Ia[t]).interleaved)){n.interleaved=null;var o=r.next,a=n.pending;if(null!==a){var i=a.next;a.next=o,r.next=i}n.pending=r}Ia=null}return e}function pc(e,t){for(;;){var n=js;try{if(Ca(),oi.current=Xi,ui){for(var r=li.memoizedState;null!==r;){var o=r.queue;null!==o&&(o.pending=null),r=r.next}ui=!1}if(ii=0,ci=si=li=null,di=!1,fi=0,Os.current=null,null===n||null===n.return){Rs=1,Ls=t,js=null;break}e:{var i=e,l=n.return,s=n,c=t;if(t=Ps,s.flags|=32768,null!==c&&"object"==typeof c&&"function"==typeof c.then){var u=c,d=s,f=d.tag;if(!(1&d.mode||0!==f&&11!==f&&15!==f)){var p=d.alternate;p?(d.updateQueue=p.updateQueue,d.memoizedState=p.memoizedState,d.lanes=p.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=gl(l);if(null!==m){m.flags&=-257,yl(m,l,s,0,t),1&m.mode&&hl(i,u,t),c=u;var h=(t=m).updateQueue;if(null===h){var g=new Set;g.add(c),t.updateQueue=g}else h.add(c);break e}if(!(1&t)){hl(i,u,t),hc();break e}c=Error(a(426))}else if(aa&&1&s.mode){var y=gl(l);if(null!==y){!(65536&y.flags)&&(y.flags|=256),yl(y,l,s,0,t),ha(cl(c,s));break e}}i=c=cl(c,s),4!==Rs&&(Rs=2),null===zs?zs=[i]:zs.push(i),i=l;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t,Ua(i,pl(0,c,t));break e;case 1:s=c;var b=i.type,v=i.stateNode;if(!(128&i.flags||"function"!=typeof b.getDerivedStateFromError&&(null===v||"function"!=typeof v.componentDidCatch||null!==Ws&&Ws.has(v)))){i.flags|=65536,t&=-t,i.lanes|=t,Ua(i,ml(i,s,t));break e}}i=i.return}while(null!==i)}wc(n)}catch(w){t=w,js===n&&null!==n&&(js=n=n.return);continue}break}}function mc(){var e=_s.current;return _s.current=Xi,null===e?Xi:e}function hc(){0!==Rs&&3!==Rs&&2!==Rs||(Rs=4),null===Ts||!(268435455&Ds)&&!(268435455&Ms)||lc(Ts,Ps)}function gc(e,t){var n=As;As|=2;var r=mc();for(Ts===e&&Ps===t||(Hs=null,fc(e,t));;)try{yc();break}catch(o){pc(e,o)}if(Ca(),As=n,_s.current=r,null!==js)throw Error(a(261));return Ts=null,Ps=0,Rs}function yc(){for(;null!==js;)vc(js)}function bc(){for(;null!==js&&!Ye();)vc(js)}function vc(e){var t=ks(e.alternate,e,Is);e.memoizedProps=e.pendingProps,null===t?wc(e):js=t,Os.current=null}function wc(e){var t=e;do{var n=t.alternate;if(e=t.return,32768&t.flags){if(null!==(n=Kl(n,t)))return n.flags&=32767,void(js=n);if(null===e)return Rs=6,void(js=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}else if(null!==(n=Gl(n,t,Is)))return void(js=n);if(null!==(t=t.sibling))return void(js=t);js=t=e}while(null!==t);0===Rs&&(Rs=5)}function Sc(e,t,n){var r=vt,o=Cs.transition;try{Cs.transition=null,vt=1,function(e,t,n,r){do{xc()}while(null!==Ks);if(6&As)throw Error(a(327));n=e.finishedWork;var o=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(a(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-it(n),a=1<<o;t[o]=0,r[o]=-1,e[o]=-1,n&=~a}}(e,i),e===Ts&&(js=Ts=null,Ps=0),!(2064&n.subtreeFlags)&&!(2064&n.flags)||Gs||(Gs=!0,Tc(tt,(function(){return xc(),null}))),i=!!(15990&n.flags),!!(15990&n.subtreeFlags)||i){i=Cs.transition,Cs.transition=null;var l=vt;vt=1;var s=As;As|=4,Os.current=null,function(e,t){if(eo=Vt,pr(e=fr())){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{var r=(n=(n=e.ownerDocument)&&n.defaultView||window).getSelection&&n.getSelection();if(r&&0!==r.rangeCount){n=r.anchorNode;var o=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch(S){n=null;break e}var l=0,s=-1,c=-1,u=0,d=0,f=e,p=null;t:for(;;){for(var m;f!==n||0!==o&&3!==f.nodeType||(s=l+o),f!==i||0!==r&&3!==f.nodeType||(c=l+r),3===f.nodeType&&(l+=f.nodeValue.length),null!==(m=f.firstChild);)p=f,f=m;for(;;){if(f===e)break t;if(p===n&&++u===o&&(s=l),p===i&&++d===r&&(c=l),null!==(m=f.nextSibling))break;p=(f=p).parentNode}f=m}n=-1===s||-1===c?null:{start:s,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(to={focusedElem:e,selectionRange:n},Vt=!1,Xl=t;null!==Xl;)if(e=(t=Xl).child,1028&t.subtreeFlags&&null!==e)e.return=t,Xl=e;else for(;null!==Xl;){t=Xl;try{var h=t.alternate;if(1024&t.flags)switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==h){var g=h.memoizedProps,y=h.memoizedState,b=t.stateNode,v=b.getSnapshotBeforeUpdate(t.elementType===t.type?g:nl(t.type,g),y);b.__reactInternalSnapshotBeforeUpdate=v}break;case 3:var w=t.stateNode.containerInfo;1===w.nodeType?w.textContent="":9===w.nodeType&&w.documentElement&&w.removeChild(w.documentElement);break;default:throw Error(a(163))}}catch(S){Ec(t,t.return,S)}if(null!==(e=t.sibling)){e.return=t.return,Xl=e;break}Xl=t.return}h=ts,ts=!1}(e,n),gs(n,e),mr(to),Vt=!!eo,to=eo=null,e.current=n,bs(n,e,o),Qe(),As=s,vt=l,Cs.transition=i}else e.current=n;if(Gs&&(Gs=!1,Ks=e,Ys=o),i=e.pendingLanes,0===i&&(Ws=null),function(e){if(at&&"function"==typeof at.onCommitFiberRoot)try{at.onCommitFiberRoot(ot,e,void 0,!(128&~e.current.flags))}catch(t){}}(n.stateNode),rc(e,Ze()),null!==t)for(r=e.onRecoverableError,n=0;n<t.length;n++)o=t[n],r(o.value,{componentStack:o.stack,digest:o.digest});if(Vs)throw Vs=!1,e=qs,qs=null,e;!!(1&Ys)&&0!==e.tag&&xc(),i=e.pendingLanes,1&i?e===Zs?Qs++:(Qs=0,Zs=e):Qs=0,Ho()}(e,t,n,r)}finally{Cs.transition=o,vt=r}return null}function xc(){if(null!==Ks){var e=wt(Ys),t=Cs.transition,n=vt;try{if(Cs.transition=null,vt=16>e?16:e,null===Ks)var r=!1;else{if(e=Ks,Ks=null,Ys=0,6&As)throw Error(a(331));var o=As;for(As|=4,Xl=e.current;null!==Xl;){var i=Xl,l=i.child;if(16&Xl.flags){var s=i.deletions;if(null!==s){for(var c=0;c<s.length;c++){var u=s[c];for(Xl=u;null!==Xl;){var d=Xl;switch(d.tag){case 0:case 11:case 15:ns(8,d,i)}var f=d.child;if(null!==f)f.return=d,Xl=f;else for(;null!==Xl;){var p=(d=Xl).sibling,m=d.return;if(as(d),d===u){Xl=null;break}if(null!==p){p.return=m,Xl=p;break}Xl=m}}}var h=i.alternate;if(null!==h){var g=h.child;if(null!==g){h.child=null;do{var y=g.sibling;g.sibling=null,g=y}while(null!==g)}}Xl=i}}if(2064&i.subtreeFlags&&null!==l)l.return=i,Xl=l;else e:for(;null!==Xl;){if(2048&(i=Xl).flags)switch(i.tag){case 0:case 11:case 15:ns(9,i,i.return)}var b=i.sibling;if(null!==b){b.return=i.return,Xl=b;break e}Xl=i.return}}var v=e.current;for(Xl=v;null!==Xl;){var w=(l=Xl).child;if(2064&l.subtreeFlags&&null!==w)w.return=l,Xl=w;else e:for(l=v;null!==Xl;){if(2048&(s=Xl).flags)try{switch(s.tag){case 0:case 11:case 15:rs(9,s)}}catch(x){Ec(s,s.return,x)}if(s===l){Xl=null;break e}var S=s.sibling;if(null!==S){S.return=s.return,Xl=S;break e}Xl=s.return}}if(As=o,Ho(),at&&"function"==typeof at.onPostCommitFiberRoot)try{at.onPostCommitFiberRoot(ot,e)}catch(x){}r=!0}return r}finally{vt=n,Cs.transition=t}}return!1}function kc(e,t,n){e=Ba(e,t=pl(0,t=cl(n,t),1),1),t=ec(),null!==e&&(yt(e,1,t),rc(e,t))}function Ec(e,t,n){if(3===e.tag)kc(e,e,n);else for(;null!==t;){if(3===t.tag){kc(t,e,n);break}if(1===t.tag){var r=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Ws||!Ws.has(r))){t=Ba(t,e=ml(t,e=cl(n,e),1),1),e=ec(),null!==t&&(yt(t,1,e),rc(t,e));break}}t=t.return}}function _c(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=ec(),e.pingedLanes|=e.suspendedLanes&n,Ts===e&&(Ps&n)===n&&(4===Rs||3===Rs&&(130023424&Ps)===Ps&&500>Ze()-$s?fc(e,0):Fs|=n),rc(e,t)}function Oc(e,t){0===t&&(1&e.mode?(t=ut,!(130023424&(ut<<=1))&&(ut=4194304)):t=1);var n=ec();null!==(e=La(e,t))&&(yt(e,t,n),rc(e,n))}function Cc(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Oc(e,n)}function Ac(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(a(314))}null!==r&&r.delete(t),Oc(e,n)}function Tc(e,t){return Ge(e,t)}function jc(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pc(e,t,n,r){return new jc(e,t,n,r)}function Ic(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Nc(e,t){var n=e.alternate;return null===n?((n=Pc(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Rc(e,t,n,r,o,i){var l=2;if(r=e,"function"==typeof e)Ic(e)&&(l=1);else if("string"==typeof e)l=5;else e:switch(e){case k:return Lc(n.children,o,i,t);case E:l=8,o|=8;break;case _:return(e=Pc(12,n,t,2|o)).elementType=_,e.lanes=i,e;case T:return(e=Pc(13,n,t,o)).elementType=T,e.lanes=i,e;case j:return(e=Pc(19,n,t,o)).elementType=j,e.lanes=i,e;case N:return Dc(n,o,i,t);default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case O:l=10;break e;case C:l=9;break e;case A:l=11;break e;case P:l=14;break e;case I:l=16,r=null;break e}throw Error(a(130,null==e?e:typeof e,""))}return(t=Pc(l,n,t,o)).elementType=e,t.type=r,t.lanes=i,t}function Lc(e,t,n,r){return(e=Pc(7,e,r,t)).lanes=n,e}function Dc(e,t,n,r){return(e=Pc(22,e,r,t)).elementType=N,e.lanes=n,e.stateNode={isHidden:!1},e}function Mc(e,t,n){return(e=Pc(6,e,null,t)).lanes=n,e}function Fc(e,t,n){return(t=Pc(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function zc(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Bc(e,t,n,r,o,a,i,l,s){return e=new zc(e,t,n,l,s),1===t?(t=1,!0===a&&(t|=8)):t=0,a=Pc(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ma(a),e}function $c(e){if(!e)return Ao;e:{if(Ue(e=e._reactInternals)!==e||1!==e.tag)throw Error(a(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(No(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(a(171))}if(1===e.tag){var n=e.type;if(No(n))return Do(e,n,t)}return t}function Uc(e,t,n,r,o,a,i,l,s){return(e=Bc(n,r,!0,e,0,a,0,l,s)).context=$c(null),n=e.current,(a=za(r=ec(),o=tc(n))).callback=null!=t?t:null,Ba(n,a,o),e.current.lanes=o,yt(e,o,r),rc(e,r),e}function Hc(e,t,n,r){var o=t.current,a=ec(),i=tc(o);return n=$c(n),null===t.context?t.context=n:t.pendingContext=n,(t=za(a,i)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),null!==(e=Ba(o,t,i))&&(nc(e,o,i,a),$a(e,o,i)),i}function Vc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function qc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Wc(e,t){qc(e,t),(e=e.alternate)&&qc(e,t)}ks=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||jo.current)vl=!0;else{if(!(e.lanes&n||128&t.flags))return vl=!1,function(e,t,n){switch(t.tag){case 3:Tl(t),ma();break;case 5:Xa(t);break;case 1:No(t.type)&&Mo(t);break;case 4:Qa(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,o=t.memoizedProps.value;Co(ka,r._currentValue),r._currentValue=o;break;case 13:if(null!==(r=t.memoizedState))return null!==r.dehydrated?(Co(ei,1&ei.current),t.flags|=128,null):n&t.child.childLanes?Ml(e,t,n):(Co(ei,1&ei.current),null!==(e=Vl(e,t,n))?e.sibling:null);Co(ei,1&ei.current);break;case 19:if(r=!!(n&t.childLanes),128&e.flags){if(r)return Ul(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),Co(ei,ei.current),r)break;return null;case 22:case 23:return t.lanes=0,El(e,t,n)}return Vl(e,t,n)}(e,t,n);vl=!!(131072&e.flags)}else vl=!1,aa&&1048576&t.flags&&ea(t,Go,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Hl(e,t),e=t.pendingProps;var o=Io(t,To.current);ja(t,n),o=gi(null,t,r,e,o,n);var i=yi();return t.flags|=1,"object"==typeof o&&null!==o&&"function"==typeof o.render&&void 0===o.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,No(r)?(i=!0,Mo(t)):i=!1,t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,Ma(t),o.updater=ol,t.stateNode=o,o._reactInternals=t,sl(t,r,e,n),t=Al(null,t,r,!0,i,n)):(t.tag=0,aa&&i&&ta(t),wl(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Hl(e,t),e=t.pendingProps,r=(o=r._init)(r._payload),t.type=r,o=t.tag=function(e){if("function"==typeof e)return Ic(e)?1:0;if(null!=e){if((e=e.$$typeof)===A)return 11;if(e===P)return 14}return 2}(r),e=nl(r,e),o){case 0:t=Ol(null,t,r,e,n);break e;case 1:t=Cl(null,t,r,e,n);break e;case 11:t=Sl(null,t,r,e,n);break e;case 14:t=xl(null,t,r,nl(r.type,e),n);break e}throw Error(a(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,Ol(e,t,r,o=t.elementType===r?o:nl(r,o),n);case 1:return r=t.type,o=t.pendingProps,Cl(e,t,r,o=t.elementType===r?o:nl(r,o),n);case 3:e:{if(Tl(t),null===e)throw Error(a(387));r=t.pendingProps,o=(i=t.memoizedState).element,Fa(e,t),Ha(t,r,null,n);var l=t.memoizedState;if(r=l.element,i.isDehydrated){if(i={element:r,isDehydrated:!1,cache:l.cache,pendingSuspenseBoundaries:l.pendingSuspenseBoundaries,transitions:l.transitions},t.updateQueue.baseState=i,t.memoizedState=i,256&t.flags){t=jl(e,t,r,n,o=cl(Error(a(423)),t));break e}if(r!==o){t=jl(e,t,r,n,o=cl(Error(a(424)),t));break e}for(oa=co(t.stateNode.containerInfo.firstChild),ra=t,aa=!0,ia=null,n=xa(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(ma(),r===o){t=Vl(e,t,n);break e}wl(e,t,r,n)}t=t.child}return t;case 5:return Xa(t),null===e&&ua(t),r=t.type,o=t.pendingProps,i=null!==e?e.memoizedProps:null,l=o.children,no(r,o)?l=null:null!==i&&no(r,i)&&(t.flags|=32),_l(e,t),wl(e,t,l,n),t.child;case 6:return null===e&&ua(t),null;case 13:return Ml(e,t,n);case 4:return Qa(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=Sa(t,null,r,n):wl(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,Sl(e,t,r,o=t.elementType===r?o:nl(r,o),n);case 7:return wl(e,t,t.pendingProps,n),t.child;case 8:case 12:return wl(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,i=t.memoizedProps,l=o.value,Co(ka,r._currentValue),r._currentValue=l,null!==i)if(lr(i.value,l)){if(i.children===o.children&&!jo.current){t=Vl(e,t,n);break e}}else for(null!==(i=t.child)&&(i.return=t);null!==i;){var s=i.dependencies;if(null!==s){l=i.child;for(var c=s.firstContext;null!==c;){if(c.context===r){if(1===i.tag){(c=za(-1,n&-n)).tag=2;var u=i.updateQueue;if(null!==u){var d=(u=u.shared).pending;null===d?c.next=c:(c.next=d.next,d.next=c),u.pending=c}}i.lanes|=n,null!==(c=i.alternate)&&(c.lanes|=n),Ta(i.return,n,t),s.lanes|=n;break}c=c.next}}else if(10===i.tag)l=i.type===t.type?null:i.child;else if(18===i.tag){if(null===(l=i.return))throw Error(a(341));l.lanes|=n,null!==(s=l.alternate)&&(s.lanes|=n),Ta(l,n,t),l=i.sibling}else l=i.child;if(null!==l)l.return=i;else for(l=i;null!==l;){if(l===t){l=null;break}if(null!==(i=l.sibling)){i.return=l.return,l=i;break}l=l.return}i=l}wl(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,ja(t,n),r=r(o=Pa(o)),t.flags|=1,wl(e,t,r,n),t.child;case 14:return o=nl(r=t.type,t.pendingProps),xl(e,t,r,o=nl(r.type,o),n);case 15:return kl(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:nl(r,o),Hl(e,t),t.tag=1,No(r)?(e=!0,Mo(t)):e=!1,ja(t,n),il(t,r,o),sl(t,r,o,n),Al(null,t,r,!0,e,n);case 19:return Ul(e,t,n);case 22:return El(e,t,n)}throw Error(a(156,t.tag))};var Gc="function"==typeof reportError?reportError:function(e){console.error(e)};function Kc(e){this._internalRoot=e}function Yc(e){this._internalRoot=e}function Qc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Zc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Xc(){}function Jc(e,t,n,r,o){var a=n._reactRootContainer;if(a){var i=a;if("function"==typeof o){var l=o;o=function(){var e=Vc(i);l.call(e)}}Hc(t,i,e,o)}else i=function(e,t,n,r,o){if(o){if("function"==typeof r){var a=r;r=function(){var e=Vc(i);a.call(e)}}var i=Uc(t,r,e,0,null,!1,0,"",Xc);return e._reactRootContainer=i,e[ho]=i.current,Ur(8===e.nodeType?e.parentNode:e),uc(),i}for(;o=e.lastChild;)e.removeChild(o);if("function"==typeof r){var l=r;r=function(){var e=Vc(s);l.call(e)}}var s=Bc(e,0,!1,null,0,!1,0,"",Xc);return e._reactRootContainer=s,e[ho]=s.current,Ur(8===e.nodeType?e.parentNode:e),uc((function(){Hc(t,s,n,r)})),s}(n,t,e,o,r);return Vc(i)}Yc.prototype.render=Kc.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(a(409));Hc(e,t,null,null)},Yc.prototype.unmount=Kc.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;uc((function(){Hc(null,e,null,null)})),t[ho]=null}},Yc.prototype.unstable_scheduleHydration=function(e){if(e){var t=Et();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Nt.length&&0!==t&&t<Nt[n].priority;n++);Nt.splice(n,0,e),0===n&&Mt(e)}},St=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=dt(t.pendingLanes);0!==n&&(bt(t,1|n),rc(t,Ze()),!(6&As)&&(Us=Ze()+500,Ho()))}break;case 13:uc((function(){var t=La(e,1);if(null!==t){var n=ec();nc(t,e,1,n)}})),Wc(e,1)}},xt=function(e){if(13===e.tag){var t=La(e,134217728);if(null!==t)nc(t,e,134217728,ec());Wc(e,134217728)}},kt=function(e){if(13===e.tag){var t=tc(e),n=La(e,t);if(null!==n)nc(n,e,t,ec());Wc(e,t)}},Et=function(){return vt},_t=function(e,t){var n=vt;try{return vt=e,t()}finally{vt=n}},xe=function(e,t,n){switch(t){case"input":if(X(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=xo(r);if(!o)throw Error(a(90));G(r),X(r,o)}}}break;case"textarea":ae(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},Ae=cc,Te=uc;var eu={usingClientEntryPoint:!1,Events:[wo,So,xo,Oe,Ce,cc]},tu={findFiberByHostInstance:vo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},nu={bundleType:tu.bundleType,version:tu.version,rendererPackageName:tu.rendererPackageName,rendererConfig:tu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:w.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=qe(e))?null:e.stateNode},findFiberByHostInstance:tu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var ru=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!ru.isDisabled&&ru.supportsFiber)try{ot=ru.inject(nu),at=ru}catch(ue){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=eu,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Qc(t))throw Error(a(200));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:x,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.createRoot=function(e,t){if(!Qc(e))throw Error(a(299));var n=!1,r="",o=Gc;return null!=t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(r=t.identifierPrefix),void 0!==t.onRecoverableError&&(o=t.onRecoverableError)),t=Bc(e,1,!1,null,0,n,0,r,o),e[ho]=t.current,Ur(8===e.nodeType?e.parentNode:e),new Kc(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(a(188));throw e=Object.keys(e).join(","),Error(a(268,e))}return e=null===(e=qe(t))?null:e.stateNode},t.flushSync=function(e){return uc(e)},t.hydrate=function(e,t,n){if(!Zc(t))throw Error(a(200));return Jc(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Qc(e))throw Error(a(405));var r=null!=n&&n.hydratedSources||null,o=!1,i="",l=Gc;if(null!=n&&(!0===n.unstable_strictMode&&(o=!0),void 0!==n.identifierPrefix&&(i=n.identifierPrefix),void 0!==n.onRecoverableError&&(l=n.onRecoverableError)),t=Uc(t,null,e,1,null!=n?n:null,o,0,i,l),e[ho]=t.current,Ur(e),r)for(e=0;e<r.length;e++)o=(o=(n=r[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new Yc(t)},t.render=function(e,t,n){if(!Zc(t))throw Error(a(200));return Jc(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Zc(e))throw Error(a(40));return!!e._reactRootContainer&&(uc((function(){Jc(null,null,e,!1,(function(){e._reactRootContainer=null,e[ho]=null}))})),!0)},t.unstable_batchedUpdates=cc,t.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Zc(n))throw Error(a(200));if(null==e||void 0===e._reactInternals)throw Error(a(38));return Jc(e,t,n,!1,r)},t.version="18.3.1-next-f1338f8080-20240426"},9576:(e,t,n)=>{"use strict";var r=n(8143);t.createRoot=r.createRoot,t.hydrateRoot=r.hydrateRoot},8143:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(9481)},4072:e=>{var t="undefined"!=typeof Element,n="function"==typeof Map,r="function"==typeof Set,o="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;function a(e,i){if(e===i)return!0;if(e&&i&&"object"==typeof e&&"object"==typeof i){if(e.constructor!==i.constructor)return!1;var l,s,c,u;if(Array.isArray(e)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(!a(e[s],i[s]))return!1;return!0}if(n&&e instanceof Map&&i instanceof Map){if(e.size!==i.size)return!1;for(u=e.entries();!(s=u.next()).done;)if(!i.has(s.value[0]))return!1;for(u=e.entries();!(s=u.next()).done;)if(!a(s.value[1],i.get(s.value[0])))return!1;return!0}if(r&&e instanceof Set&&i instanceof Set){if(e.size!==i.size)return!1;for(u=e.entries();!(s=u.next()).done;)if(!i.has(s.value[0]))return!1;return!0}if(o&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(i)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(e[s]!==i[s])return!1;return!0}if(e.constructor===RegExp)return e.source===i.source&&e.flags===i.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"==typeof e.valueOf&&"function"==typeof i.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString&&"function"==typeof e.toString&&"function"==typeof i.toString)return e.toString()===i.toString();if((l=(c=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(s=l;0!=s--;)if(!Object.prototype.hasOwnProperty.call(i,c[s]))return!1;if(t&&e instanceof Element)return!1;for(s=l;0!=s--;)if(("_owner"!==c[s]&&"__v"!==c[s]&&"__o"!==c[s]||!e.$$typeof)&&!a(e[c[s]],i[c[s]]))return!1;return!0}return e!=e&&i!=i}e.exports=function(e,t){try{return a(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},932:(e,t,n)=>{"use strict";n.d(t,{mg:()=>J,vd:()=>q});var r=n(758),o=n(2736),a=n.n(o),i=n(4072),l=n.n(i),s=n(9597),c=n.n(s),u=n(2945),d=n.n(u);function f(){return f=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},f.apply(this,arguments)}function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,m(e,t)}function m(e,t){return m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},m(e,t)}function h(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)t.indexOf(n=a[r])>=0||(o[n]=e[n]);return o}var g={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},y={rel:["amphtml","canonical","alternate"]},b={type:["application/ld+json"]},v={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},w=Object.keys(g).map((function(e){return g[e]})),S={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},x=Object.keys(S).reduce((function(e,t){return e[S[t]]=t,e}),{}),k=function(e,t){for(var n=e.length-1;n>=0;n-=1){var r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},E=function(e){var t=k(e,g.TITLE),n=k(e,"titleTemplate");if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(function(){return t}));var r=k(e,"defaultTitle");return t||r||void 0},_=function(e){return k(e,"onChangeClientState")||function(){}},O=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return f({},e,t)}),{})},C=function(e,t){return t.filter((function(e){return void 0!==e[g.BASE]})).map((function(e){return e[g.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),o=0;o<r.length;o+=1){var a=r[o].toLowerCase();if(-1!==e.indexOf(a)&&n[a])return t.concat(n)}return t}),[])},A=function(e,t,n){var r={};return n.filter((function(t){return!!Array.isArray(t[e])||(void 0!==t[e]&&console&&"function"==typeof console.warn&&console.warn("Helmet: "+e+' should be of type "Array". Instead found type "'+typeof t[e]+'"'),!1)})).map((function(t){return t[e]})).reverse().reduce((function(e,n){var o={};n.filter((function(e){for(var n,a=Object.keys(e),i=0;i<a.length;i+=1){var l=a[i],s=l.toLowerCase();-1===t.indexOf(s)||"rel"===n&&"canonical"===e[n].toLowerCase()||"rel"===s&&"stylesheet"===e[s].toLowerCase()||(n=s),-1===t.indexOf(l)||"innerHTML"!==l&&"cssText"!==l&&"itemprop"!==l||(n=l)}if(!n||!e[n])return!1;var c=e[n].toLowerCase();return r[n]||(r[n]={}),o[n]||(o[n]={}),!r[n][c]&&(o[n][c]=!0,!0)})).reverse().forEach((function(t){return e.push(t)}));for(var a=Object.keys(o),i=0;i<a.length;i+=1){var l=a[i],s=f({},r[l],o[l]);r[l]=s}return e}),[]).reverse()},T=function(e,t){if(Array.isArray(e)&&e.length)for(var n=0;n<e.length;n+=1)if(e[n][t])return!0;return!1},j=function(e){return Array.isArray(e)?e.join(""):e},P=function(e,t){return Array.isArray(e)?e.reduce((function(e,n){return function(e,t){for(var n=Object.keys(e),r=0;r<n.length;r+=1)if(t[n[r]]&&t[n[r]].includes(e[n[r]]))return!0;return!1}(n,t)?e.priority.push(n):e.default.push(n),e}),{priority:[],default:[]}):{default:e}},I=function(e,t){var n;return f({},e,((n={})[t]=void 0,n))},N=[g.NOSCRIPT,g.SCRIPT,g.STYLE],R=function(e,t){return void 0===t&&(t=!0),!1===t?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},L=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},D=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[S[n]||n]=e[n],t}),t)},M=function(e,t){return t.map((function(t,n){var o,a=((o={key:n})["data-rh"]=!0,o);return Object.keys(t).forEach((function(e){var n=S[e]||e;"innerHTML"===n||"cssText"===n?a.dangerouslySetInnerHTML={__html:t.innerHTML||t.cssText}:a[n]=t[e]})),r.createElement(e,a)}))},F=function(e,t,n){switch(e){case g.TITLE:return{toComponent:function(){return n=t.titleAttributes,(o={key:e=t.title})["data-rh"]=!0,a=D(n,o),[r.createElement(g.TITLE,a,e)];var e,n,o,a},toString:function(){return function(e,t,n,r){var o=L(n),a=j(t);return o?"<"+e+' data-rh="true" '+o+">"+R(a,r)+"</"+e+">":"<"+e+' data-rh="true">'+R(a,r)+"</"+e+">"}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return D(t)},toString:function(){return L(t)}};default:return{toComponent:function(){return M(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var o=Object.keys(r).filter((function(e){return!("innerHTML"===e||"cssText"===e)})).reduce((function(e,t){var o=void 0===r[t]?t:t+'="'+R(r[t],n)+'"';return e?e+" "+o:o}),""),a=r.innerHTML||r.cssText||"",i=-1===N.indexOf(e);return t+"<"+e+' data-rh="true" '+o+(i?"/>":">"+a+"</"+e+">")}),"")}(e,t,n)}}}},z=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,o=e.htmlAttributes,a=e.noscriptTags,i=e.styleTags,l=e.title,s=void 0===l?"":l,c=e.titleAttributes,u=e.linkTags,d=e.metaTags,f=e.scriptTags,p={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var m=function(e){var t=e.linkTags,n=e.scriptTags,r=e.encode,o=P(e.metaTags,v),a=P(t,y),i=P(n,b);return{priorityMethods:{toComponent:function(){return[].concat(M(g.META,o.priority),M(g.LINK,a.priority),M(g.SCRIPT,i.priority))},toString:function(){return F(g.META,o.priority,r)+" "+F(g.LINK,a.priority,r)+" "+F(g.SCRIPT,i.priority,r)}},metaTags:o.default,linkTags:a.default,scriptTags:i.default}}(e);p=m.priorityMethods,u=m.linkTags,d=m.metaTags,f=m.scriptTags}return{priority:p,base:F(g.BASE,t,r),bodyAttributes:F("bodyAttributes",n,r),htmlAttributes:F("htmlAttributes",o,r),link:F(g.LINK,u,r),meta:F(g.META,d,r),noscript:F(g.NOSCRIPT,a,r),script:F(g.SCRIPT,f,r),style:F(g.STYLE,i,r),title:F(g.TITLE,{title:s,titleAttributes:c},r)}},B=[],$=function(e,t){var n=this;void 0===t&&(t="undefined"!=typeof document),this.instances=[],this.value={setHelmet:function(e){n.context.helmet=e},helmetInstances:{get:function(){return n.canUseDOM?B:n.instances},add:function(e){(n.canUseDOM?B:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?B:n.instances).indexOf(e);(n.canUseDOM?B:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=z({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},U=r.createContext({}),H=a().shape({setHelmet:a().func,helmetInstances:a().shape({get:a().func,add:a().func,remove:a().func})}),V="undefined"!=typeof document,q=function(e){function t(n){var r;return(r=e.call(this,n)||this).helmetData=new $(r.props.context,t.canUseDOM),r}return p(t,e),t.prototype.render=function(){return r.createElement(U.Provider,{value:this.helmetData.value},this.props.children)},t}(r.Component);q.canUseDOM=V,q.propTypes={context:a().shape({helmet:a().shape()}),children:a().node.isRequired},q.defaultProps={context:{}},q.displayName="HelmetProvider";var W=function(e,t){var n,r=document.head||document.querySelector(g.HEAD),o=r.querySelectorAll(e+"[data-rh]"),a=[].slice.call(o),i=[];return t&&t.length&&t.forEach((function(t){var r=document.createElement(e);for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&("innerHTML"===o?r.innerHTML=t.innerHTML:"cssText"===o?r.styleSheet?r.styleSheet.cssText=t.cssText:r.appendChild(document.createTextNode(t.cssText)):r.setAttribute(o,void 0===t[o]?"":t[o]));r.setAttribute("data-rh","true"),a.some((function(e,t){return n=t,r.isEqualNode(e)}))?a.splice(n,1):i.push(r)})),a.forEach((function(e){return e.parentNode.removeChild(e)})),i.forEach((function(e){return r.appendChild(e)})),{oldTags:a,newTags:i}},G=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute("data-rh"),o=r?r.split(","):[],a=[].concat(o),i=Object.keys(t),l=0;l<i.length;l+=1){var s=i[l],c=t[s]||"";n.getAttribute(s)!==c&&n.setAttribute(s,c),-1===o.indexOf(s)&&o.push(s);var u=a.indexOf(s);-1!==u&&a.splice(u,1)}for(var d=a.length-1;d>=0;d-=1)n.removeAttribute(a[d]);o.length===a.length?n.removeAttribute("data-rh"):n.getAttribute("data-rh")!==i.join(",")&&n.setAttribute("data-rh",i.join(","))}},K=function(e,t){var n=e.baseTag,r=e.htmlAttributes,o=e.linkTags,a=e.metaTags,i=e.noscriptTags,l=e.onChangeClientState,s=e.scriptTags,c=e.styleTags,u=e.title,d=e.titleAttributes;G(g.BODY,e.bodyAttributes),G(g.HTML,r),function(e,t){void 0!==e&&document.title!==e&&(document.title=j(e)),G(g.TITLE,t)}(u,d);var f={baseTag:W(g.BASE,n),linkTags:W(g.LINK,o),metaTags:W(g.META,a),noscriptTags:W(g.NOSCRIPT,i),scriptTags:W(g.SCRIPT,s),styleTags:W(g.STYLE,c)},p={},m={};Object.keys(f).forEach((function(e){var t=f[e],n=t.newTags,r=t.oldTags;n.length&&(p[e]=n),r.length&&(m[e]=f[e].oldTags)})),t&&t(),l(e,p,m)},Y=null,Q=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(t=e.call.apply(e,[this].concat(r))||this).rendered=!1,t}p(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!d()(e,this.props)},n.componentDidUpdate=function(){this.emitChange()},n.componentWillUnmount=function(){this.props.context.helmetInstances.remove(this),this.emitChange()},n.emitChange=function(){var e,t,n=this.props.context,r=n.setHelmet,o=null,a=(e=n.helmetInstances.get().map((function(e){var t=f({},e.props);return delete t.context,t})),{baseTag:C(["href"],e),bodyAttributes:O("bodyAttributes",e),defer:k(e,"defer"),encode:k(e,"encodeSpecialCharacters"),htmlAttributes:O("htmlAttributes",e),linkTags:A(g.LINK,["rel","href"],e),metaTags:A(g.META,["name","charset","http-equiv","property","itemprop"],e),noscriptTags:A(g.NOSCRIPT,["innerHTML"],e),onChangeClientState:_(e),scriptTags:A(g.SCRIPT,["src","innerHTML"],e),styleTags:A(g.STYLE,["cssText"],e),title:E(e),titleAttributes:O("titleAttributes",e),prioritizeSeoTags:T(e,"prioritizeSeoTags")});q.canUseDOM?(t=a,Y&&cancelAnimationFrame(Y),t.defer?Y=requestAnimationFrame((function(){K(t,(function(){Y=null}))})):(K(t),Y=null)):z&&(o=z(a)),r(o)},n.init=function(){this.rendered||(this.rendered=!0,this.props.context.helmetInstances.add(this),this.emitChange())},n.render=function(){return this.init(),null},t}(r.Component);Q.propTypes={context:H.isRequired},Q.displayName="HelmetDispatcher";var Z=["children"],X=["children"],J=function(e){function t(){return e.apply(this,arguments)||this}p(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!l()(I(this.props,"helmetData"),I(e,"helmetData"))},n.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case g.SCRIPT:case g.NOSCRIPT:return{innerHTML:t};case g.STYLE:return{cssText:t};default:throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")}},n.flattenArrayTypeChildren=function(e){var t,n=e.child,r=e.arrayTypeChildren;return f({},r,((t={})[n.type]=[].concat(r[n.type]||[],[f({},e.newChildProps,this.mapNestedChildrenToProps(n,e.nestedChildren))]),t))},n.mapObjectTypeChildren=function(e){var t,n,r=e.child,o=e.newProps,a=e.newChildProps,i=e.nestedChildren;switch(r.type){case g.TITLE:return f({},o,((t={})[r.type]=i,t.titleAttributes=f({},a),t));case g.BODY:return f({},o,{bodyAttributes:f({},a)});case g.HTML:return f({},o,{htmlAttributes:f({},a)});default:return f({},o,((n={})[r.type]=f({},a),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=f({},t);return Object.keys(e).forEach((function(t){var r;n=f({},n,((r={})[t]=e[t],r))})),n},n.warnOnInvalidChildren=function(e,t){return c()(w.some((function(t){return e.type===t})),"function"==typeof e.type?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":"Only elements types "+w.join(", ")+" are allowed. Helmet does not support rendering <"+e.type+"> elements. Refer to our API for more information."),c()(!t||"string"==typeof t||Array.isArray(t)&&!t.some((function(e){return"string"!=typeof e})),"Helmet expects a string as a child of <"+e.type+">. Did you forget to wrap your children in braces? ( <"+e.type+">{``}</"+e.type+"> ) Refer to our API for more information."),!0},n.mapChildrenToProps=function(e,t){var n=this,o={};return r.Children.forEach(e,(function(e){if(e&&e.props){var r=e.props,a=r.children,i=h(r,Z),l=Object.keys(i).reduce((function(e,t){return e[x[t]||t]=i[t],e}),{}),s=e.type;switch("symbol"==typeof s?s=s.toString():n.warnOnInvalidChildren(e,a),s){case g.FRAGMENT:t=n.mapChildrenToProps(a,t);break;case g.LINK:case g.META:case g.NOSCRIPT:case g.SCRIPT:case g.STYLE:o=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:o,newChildProps:l,nestedChildren:a});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:l,nestedChildren:a})}}})),this.mapArrayTypeChildrenToProps(o,t)},n.render=function(){var e=this.props,t=e.children,n=h(e,X),o=f({},n),a=n.helmetData;return t&&(o=this.mapChildrenToProps(t,o)),!a||a instanceof $||(a=new $(a.context,a.instances)),a?r.createElement(Q,f({},o,{context:a.value,helmetData:void 0})):r.createElement(U.Consumer,null,(function(e){return r.createElement(Q,f({},o,{context:e}))}))},t}(r.Component);J.propTypes={base:a().object,bodyAttributes:a().object,children:a().oneOfType([a().arrayOf(a().node),a().node]),defaultTitle:a().string,defer:a().bool,encodeSpecialCharacters:a().bool,htmlAttributes:a().object,link:a().arrayOf(a().object),meta:a().arrayOf(a().object),noscript:a().arrayOf(a().object),onChangeClientState:a().func,script:a().arrayOf(a().object),style:a().arrayOf(a().object),title:a().string,titleAttributes:a().object,titleTemplate:a().string,prioritizeSeoTags:a().bool,helmetData:a().object},J.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},J.displayName="Helmet"},5843:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,o=n?Symbol.for("react.portal"):60106,a=n?Symbol.for("react.fragment"):60107,i=n?Symbol.for("react.strict_mode"):60108,l=n?Symbol.for("react.profiler"):60114,s=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,f=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,h=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,y=n?Symbol.for("react.block"):60121,b=n?Symbol.for("react.fundamental"):60117,v=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function S(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case d:case a:case l:case i:case p:return e;default:switch(e=e&&e.$$typeof){case c:case f:case g:case h:case s:return e;default:return t}}case o:return t}}}function x(e){return S(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=s,t.Element=r,t.ForwardRef=f,t.Fragment=a,t.Lazy=g,t.Memo=h,t.Portal=o,t.Profiler=l,t.StrictMode=i,t.Suspense=p,t.isAsyncMode=function(e){return x(e)||S(e)===u},t.isConcurrentMode=x,t.isContextConsumer=function(e){return S(e)===c},t.isContextProvider=function(e){return S(e)===s},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return S(e)===f},t.isFragment=function(e){return S(e)===a},t.isLazy=function(e){return S(e)===g},t.isMemo=function(e){return S(e)===h},t.isPortal=function(e){return S(e)===o},t.isProfiler=function(e){return S(e)===l},t.isStrictMode=function(e){return S(e)===i},t.isSuspense=function(e){return S(e)===p},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===a||e===d||e===l||e===i||e===p||e===m||"object"==typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===h||e.$$typeof===s||e.$$typeof===c||e.$$typeof===f||e.$$typeof===b||e.$$typeof===v||e.$$typeof===w||e.$$typeof===y)},t.typeOf=S},5959:(e,t,n)=>{"use strict";e.exports=n(5843)},1977:(e,t,n)=>{"use strict";n.d(t,{u:()=>i,v:()=>l});var r=n(5557),o=n(991),a=n(758);function i(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var o=e.path?(0,r.B6)(t,e):n.length?n[n.length-1].match:r.Ix.computeRootMatch(t);return o&&(n.push({route:e,match:o}),e.routes&&i(e.routes,t,n)),o})),n}function l(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),e?a.createElement(r.dO,n,e.map((function(e,n){return a.createElement(r.qh,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,o.A)({},n,{},t,{route:e})):a.createElement(e.component,(0,o.A)({},n,t,{route:e}))}})}))):null}},1742:(e,t,n)=>{"use strict";n.d(t,{I9:()=>d,Kd:()=>u,N_:()=>y,k2:()=>w});var r=n(5557),o=n(1141),a=n(758),i=n(3332),l=n(991),s=n(3302),c=n(5385),u=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(t=e.call.apply(e,[this].concat(r))||this).history=(0,i.zR)(t.props),t}return(0,o.A)(t,e),t.prototype.render=function(){return a.createElement(r.Ix,{history:this.history,children:this.props.children})},t}(a.Component);var d=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(t=e.call.apply(e,[this].concat(r))||this).history=(0,i.TM)(t.props),t}return(0,o.A)(t,e),t.prototype.render=function(){return a.createElement(r.Ix,{history:this.history,children:this.props.children})},t}(a.Component);var f=function(e,t){return"function"==typeof e?e(t):e},p=function(e,t){return"string"==typeof e?(0,i.yJ)(e,null,null,t):e},m=function(e){return e},h=a.forwardRef;void 0===h&&(h=m);var g=h((function(e,t){var n=e.innerRef,r=e.navigate,o=e.onClick,i=(0,s.A)(e,["innerRef","navigate","onClick"]),c=i.target,u=(0,l.A)({},i,{onClick:function(e){try{o&&o(e)}catch(t){throw e.preventDefault(),t}e.defaultPrevented||0!==e.button||c&&"_self"!==c||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)||(e.preventDefault(),r())}});return u.ref=m!==h&&t||n,a.createElement("a",u)}));var y=h((function(e,t){var n=e.component,o=void 0===n?g:n,u=e.replace,d=e.to,y=e.innerRef,b=(0,s.A)(e,["component","replace","to","innerRef"]);return a.createElement(r.XZ.Consumer,null,(function(e){e||(0,c.A)(!1);var n=e.history,r=p(f(d,e.location),e.location),s=r?n.createHref(r):"",g=(0,l.A)({},b,{href:s,navigate:function(){var t=f(d,e.location),r=(0,i.AO)(e.location)===(0,i.AO)(p(t));(u||r?n.replace:n.push)(t)}});return m!==h?g.ref=t||y:g.innerRef=y,a.createElement(o,g)}))})),b=function(e){return e},v=a.forwardRef;void 0===v&&(v=b);var w=v((function(e,t){var n=e["aria-current"],o=void 0===n?"page":n,i=e.activeClassName,u=void 0===i?"active":i,d=e.activeStyle,m=e.className,h=e.exact,g=e.isActive,w=e.location,S=e.sensitive,x=e.strict,k=e.style,E=e.to,_=e.innerRef,O=(0,s.A)(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return a.createElement(r.XZ.Consumer,null,(function(e){e||(0,c.A)(!1);var n=w||e.location,i=p(f(E,n),n),s=i.pathname,C=s&&s.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),A=C?(0,r.B6)(n.pathname,{path:C,exact:h,sensitive:S,strict:x}):null,T=!!(g?g(A,n):A),j="function"==typeof m?m(T):m,P="function"==typeof k?k(T):k;T&&(j=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).join(" ")}(j,u),P=(0,l.A)({},P,d));var I=(0,l.A)({"aria-current":T&&o||null,className:j,style:P,to:i},O);return b!==v?I.ref=t||_:I.innerRef=_,a.createElement(y,I)}))}))},5557:(e,t,n)=>{"use strict";n.d(t,{B6:()=>k,Ix:()=>v,W6:()=>I,XZ:()=>b,dO:()=>j,qh:()=>E,zy:()=>N});var r=n(1141),o=n(758),a=n(2736),i=n.n(a),l=n(3332),s=n(5385),c=n(991),u=n(6150),d=n.n(u),f=(n(5959),n(3302)),p=(n(1035),1073741823),m="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};var h=o.createContext||function(e,t){var n,a,l="__create-react-context-"+function(){var e="__global_unique_id__";return m[e]=(m[e]||0)+1}()+"__",s=function(e){function n(){for(var t,n,r,o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];return(t=e.call.apply(e,[this].concat(a))||this).emitter=(n=t.props.value,r=[],{on:function(e){r.push(e)},off:function(e){r=r.filter((function(t){return t!==e}))},get:function(){return n},set:function(e,t){n=e,r.forEach((function(e){return e(n,t)}))}}),t}(0,r.A)(n,e);var o=n.prototype;return o.getChildContext=function(){var e;return(e={})[l]=this.emitter,e},o.componentWillReceiveProps=function(e){if(this.props.value!==e.value){var n,r=this.props.value,o=e.value;((a=r)===(i=o)?0!==a||1/a==1/i:a!=a&&i!=i)?n=0:(n="function"==typeof t?t(r,o):p,0!==(n|=0)&&this.emitter.set(e.value,n))}var a,i},o.render=function(){return this.props.children},n}(o.Component);s.childContextTypes=((n={})[l]=i().object.isRequired,n);var c=function(t){function n(){for(var e,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(e=t.call.apply(t,[this].concat(r))||this).observedBits=void 0,e.state={value:e.getValue()},e.onUpdate=function(t,n){(0|e.observedBits)&n&&e.setState({value:e.getValue()})},e}(0,r.A)(n,t);var o=n.prototype;return o.componentWillReceiveProps=function(e){var t=e.observedBits;this.observedBits=null==t?p:t},o.componentDidMount=function(){this.context[l]&&this.context[l].on(this.onUpdate);var e=this.props.observedBits;this.observedBits=null==e?p:e},o.componentWillUnmount=function(){this.context[l]&&this.context[l].off(this.onUpdate)},o.getValue=function(){return this.context[l]?this.context[l].get():e},o.render=function(){return(e=this.props.children,Array.isArray(e)?e[0]:e)(this.state.value);var e},n}(o.Component);return c.contextTypes=((a={})[l]=i().object,a),{Provider:s,Consumer:c}},g=function(e){var t=h();return t.displayName=e,t},y=g("Router-History"),b=g("Router"),v=function(e){function t(t){var n;return(n=e.call(this,t)||this).state={location:t.history.location},n._isMounted=!1,n._pendingLocation=null,t.staticContext||(n.unlisten=t.history.listen((function(e){n._pendingLocation=e}))),n}(0,r.A)(t,e),t.computeRootMatch=function(e){return{path:"/",url:"/",params:{},isExact:"/"===e}};var n=t.prototype;return n.componentDidMount=function(){var e=this;this._isMounted=!0,this.unlisten&&this.unlisten(),this.props.staticContext||(this.unlisten=this.props.history.listen((function(t){e._isMounted&&e.setState({location:t})}))),this._pendingLocation&&this.setState({location:this._pendingLocation})},n.componentWillUnmount=function(){this.unlisten&&(this.unlisten(),this._isMounted=!1,this._pendingLocation=null)},n.render=function(){return o.createElement(b.Provider,{value:{history:this.props.history,location:this.state.location,match:t.computeRootMatch(this.state.location.pathname),staticContext:this.props.staticContext}},o.createElement(y.Provider,{children:this.props.children||null,value:this.props.history}))},t}(o.Component);o.Component;o.Component;var w={},S=1e4,x=0;function k(e,t){void 0===t&&(t={}),("string"==typeof t||Array.isArray(t))&&(t={path:t});var n=t,r=n.path,o=n.exact,a=void 0!==o&&o,i=n.strict,l=void 0!==i&&i,s=n.sensitive,c=void 0!==s&&s;return[].concat(r).reduce((function(t,n){if(!n&&""!==n)return null;if(t)return t;var r=function(e,t){var n=""+t.end+t.strict+t.sensitive,r=w[n]||(w[n]={});if(r[e])return r[e];var o=[],a={regexp:d()(e,o,t),keys:o};return x<S&&(r[e]=a,x++),a}(n,{end:a,strict:l,sensitive:c}),o=r.regexp,i=r.keys,s=o.exec(e);if(!s)return null;var u=s[0],f=s.slice(1),p=e===u;return a&&!p?null:{path:n,url:"/"===n&&""===u?"/":u,isExact:p,params:i.reduce((function(e,t,n){return e[t.name]=f[n],e}),{})}}),null)}var E=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.A)(t,e),t.prototype.render=function(){var e=this;return o.createElement(b.Consumer,null,(function(t){t||(0,s.A)(!1);var n=e.props.location||t.location,r=e.props.computedMatch?e.props.computedMatch:e.props.path?k(n.pathname,e.props):t.match,a=(0,c.A)({},t,{location:n,match:r}),i=e.props,l=i.children,u=i.component,d=i.render;return Array.isArray(l)&&function(e){return 0===o.Children.count(e)}(l)&&(l=null),o.createElement(b.Provider,{value:a},a.match?l?"function"==typeof l?l(a):l:u?o.createElement(u,a):d?d(a):null:"function"==typeof l?l(a):null)}))},t}(o.Component);function _(e){return"/"===e.charAt(0)?e:"/"+e}function O(e,t){if(!e)return t;var n=_(e);return 0!==t.pathname.indexOf(n)?t:(0,c.A)({},t,{pathname:t.pathname.substr(n.length)})}function C(e){return"string"==typeof e?e:(0,l.AO)(e)}function A(e){return function(){(0,s.A)(!1)}}function T(){}o.Component;var j=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.A)(t,e),t.prototype.render=function(){var e=this;return o.createElement(b.Consumer,null,(function(t){t||(0,s.A)(!1);var n,r,a=e.props.location||t.location;return o.Children.forEach(e.props.children,(function(e){if(null==r&&o.isValidElement(e)){n=e;var i=e.props.path||e.props.from;r=i?k(a.pathname,(0,c.A)({},e.props,{path:i})):t.match}})),r?o.cloneElement(n,{location:a,computedMatch:r}):null}))},t}(o.Component);var P=o.useContext;function I(){return P(y)}function N(){return P(b).location}},7462:(e,t,n)=>{"use strict";var r=n(758),o=Symbol.for("react.element"),a=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,l=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,a={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)i.call(t,r)&&!s.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===a[r]&&(a[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:a,_owner:l.current}}t.Fragment=a,t.jsx=c,t.jsxs=c},2713:(e,t)=>{"use strict";var n=Symbol.for("react.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),l=Symbol.for("react.provider"),s=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),p=Symbol.iterator;var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h=Object.assign,g={};function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}function b(){}function v(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=y.prototype;var w=v.prototype=new b;w.constructor=v,h(w,y.prototype),w.isPureReactComponent=!0;var S=Array.isArray,x=Object.prototype.hasOwnProperty,k={current:null},E={key:!0,ref:!0,__self:!0,__source:!0};function _(e,t,r){var o,a={},i=null,l=null;if(null!=t)for(o in void 0!==t.ref&&(l=t.ref),void 0!==t.key&&(i=""+t.key),t)x.call(t,o)&&!E.hasOwnProperty(o)&&(a[o]=t[o]);var s=arguments.length-2;if(1===s)a.children=r;else if(1<s){for(var c=Array(s),u=0;u<s;u++)c[u]=arguments[u+2];a.children=c}if(e&&e.defaultProps)for(o in s=e.defaultProps)void 0===a[o]&&(a[o]=s[o]);return{$$typeof:n,type:e,key:i,ref:l,props:a,_owner:k.current}}function O(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var C=/\/+/g;function A(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(e,t,o,a,i){var l=typeof e;"undefined"!==l&&"boolean"!==l||(e=null);var s=!1;if(null===e)s=!0;else switch(l){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case n:case r:s=!0}}if(s)return i=i(s=e),e=""===a?"."+A(s,0):a,S(i)?(o="",null!=e&&(o=e.replace(C,"$&/")+"/"),T(i,t,o,"",(function(e){return e}))):null!=i&&(O(i)&&(i=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,o+(!i.key||s&&s.key===i.key?"":(""+i.key).replace(C,"$&/")+"/")+e)),t.push(i)),1;if(s=0,a=""===a?".":a+":",S(e))for(var c=0;c<e.length;c++){var u=a+A(l=e[c],c);s+=T(l,t,o,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=p&&e[p]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),c=0;!(l=e.next()).done;)s+=T(l=l.value,t,o,u=a+A(l,c++),i);else if("object"===l)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return s}function j(e,t,n){if(null==e)return e;var r=[],o=0;return T(e,r,"","",(function(e){return t.call(n,e,o++)})),r}function P(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var I={current:null},N={transition:null},R={ReactCurrentDispatcher:I,ReactCurrentBatchConfig:N,ReactCurrentOwner:k};function L(){throw Error("act(...) is not supported in production builds of React.")}t.Children={map:j,forEach:function(e,t,n){j(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return j(e,(function(){t++})),t},toArray:function(e){return j(e,(function(e){return e}))||[]},only:function(e){if(!O(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=y,t.Fragment=o,t.Profiler=i,t.PureComponent=v,t.StrictMode=a,t.Suspense=u,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=R,t.act=L,t.cloneElement=function(e,t,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o=h({},e.props),a=e.key,i=e.ref,l=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,l=k.current),void 0!==t.key&&(a=""+t.key),e.type&&e.type.defaultProps)var s=e.type.defaultProps;for(c in t)x.call(t,c)&&!E.hasOwnProperty(c)&&(o[c]=void 0===t[c]&&void 0!==s?s[c]:t[c])}var c=arguments.length-2;if(1===c)o.children=r;else if(1<c){s=Array(c);for(var u=0;u<c;u++)s[u]=arguments[u+2];o.children=s}return{$$typeof:n,type:e.type,key:a,ref:i,props:o,_owner:l}},t.createContext=function(e){return(e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:l,_context:e},e.Consumer=e},t.createElement=_,t.createFactory=function(e){var t=_.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:c,render:e}},t.isValidElement=O,t.lazy=function(e){return{$$typeof:f,_payload:{_status:-1,_result:e},_init:P}},t.memo=function(e,t){return{$$typeof:d,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=N.transition;N.transition={};try{e()}finally{N.transition=t}},t.unstable_act=L,t.useCallback=function(e,t){return I.current.useCallback(e,t)},t.useContext=function(e){return I.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return I.current.useDeferredValue(e)},t.useEffect=function(e,t){return I.current.useEffect(e,t)},t.useId=function(){return I.current.useId()},t.useImperativeHandle=function(e,t,n){return I.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return I.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return I.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return I.current.useMemo(e,t)},t.useReducer=function(e,t,n){return I.current.useReducer(e,t,n)},t.useRef=function(e){return I.current.useRef(e)},t.useState=function(e){return I.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return I.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return I.current.useTransition()},t.version="18.3.1"},758:(e,t,n)=>{"use strict";e.exports=n(2713)},6070:(e,t,n)=>{"use strict";e.exports=n(7462)},4733:(e,t)=>{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var r=n-1>>>1,o=e[r];if(!(0<a(o,t)))break e;e[r]=t,e[n]=o,n=r}}function r(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,o=e.length,i=o>>>1;r<i;){var l=2*(r+1)-1,s=e[l],c=l+1,u=e[c];if(0>a(s,n))c<o&&0>a(u,s)?(e[r]=u,e[c]=n,r=c):(e[r]=s,e[l]=n,r=l);else{if(!(c<o&&0>a(u,n)))break e;e[r]=u,e[c]=n,r=c}}}return t}function a(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var l=Date,s=l.now();t.unstable_now=function(){return l.now()-s}}var c=[],u=[],d=1,f=null,p=3,m=!1,h=!1,g=!1,y="function"==typeof setTimeout?setTimeout:null,b="function"==typeof clearTimeout?clearTimeout:null,v="undefined"!=typeof setImmediate?setImmediate:null;function w(e){for(var t=r(u);null!==t;){if(null===t.callback)o(u);else{if(!(t.startTime<=e))break;o(u),t.sortIndex=t.expirationTime,n(c,t)}t=r(u)}}function S(e){if(g=!1,w(e),!h)if(null!==r(c))h=!0,N(x);else{var t=r(u);null!==t&&R(S,t.startTime-e)}}function x(e,n){h=!1,g&&(g=!1,b(O),O=-1),m=!0;var a=p;try{for(w(n),f=r(c);null!==f&&(!(f.expirationTime>n)||e&&!T());){var i=f.callback;if("function"==typeof i){f.callback=null,p=f.priorityLevel;var l=i(f.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?f.callback=l:f===r(c)&&o(c),w(n)}else o(c);f=r(c)}if(null!==f)var s=!0;else{var d=r(u);null!==d&&R(S,d.startTime-n),s=!1}return s}finally{f=null,p=a,m=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var k,E=!1,_=null,O=-1,C=5,A=-1;function T(){return!(t.unstable_now()-A<C)}function j(){if(null!==_){var e=t.unstable_now();A=e;var n=!0;try{n=_(!0,e)}finally{n?k():(E=!1,_=null)}}else E=!1}if("function"==typeof v)k=function(){v(j)};else if("undefined"!=typeof MessageChannel){var P=new MessageChannel,I=P.port2;P.port1.onmessage=j,k=function(){I.postMessage(null)}}else k=function(){y(j,0)};function N(e){_=e,E||(E=!0,k())}function R(e,n){O=y((function(){e(t.unstable_now())}),n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){h||m||(h=!0,N(x))},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):C=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return p},t.unstable_getFirstCallbackNode=function(){return r(c)},t.unstable_next=function(e){switch(p){case 1:case 2:case 3:var t=3;break;default:t=p}var n=p;p=t;try{return e()}finally{p=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=p;p=e;try{return t()}finally{p=n}},t.unstable_scheduleCallback=function(e,o,a){var i=t.unstable_now();switch("object"==typeof a&&null!==a?a="number"==typeof(a=a.delay)&&0<a?i+a:i:a=i,e){case 1:var l=-1;break;case 2:l=250;break;case 5:l=1073741823;break;case 4:l=1e4;break;default:l=5e3}return e={id:d++,callback:o,priorityLevel:e,startTime:a,expirationTime:l=a+l,sortIndex:-1},a>i?(e.sortIndex=a,n(u,e),null===r(c)&&e===r(u)&&(g?(b(O),O=-1):g=!0,R(S,a-i))):(e.sortIndex=l,n(c,e),h||m||(h=!0,N(x))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=p;return function(){var n=p;p=t;try{return e.apply(this,arguments)}finally{p=n}}}},1896:(e,t,n)=>{"use strict";e.exports=n(4733)},2945:e=>{e.exports=function(e,t,n,r){var o=n?n.call(r,e,t):void 0;if(void 0!==o)return!!o;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var a=Object.keys(e),i=Object.keys(t);if(a.length!==i.length)return!1;for(var l=Object.prototype.hasOwnProperty.bind(t),s=0;s<a.length;s++){var c=a[s];if(!l(c))return!1;var u=e[c],d=t[c];if(!1===(o=n?n.call(r,u,d,c):void 0)||void 0===o&&u!==d)return!1}return!0}},4784:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>r});const r={title:"Calimero 2.0",tagline:"Calimero Network is a framework which enables building fully decentralized applications, ensuring everyone's data privacy.",favicon:"img/favicon.ico",url:"https://calimero-network.github.io",baseUrl:"/",organizationName:"calimero-network",projectName:"calimero-2.0",onBrokenLinks:"throw",onBrokenMarkdownLinks:"warn",i18n:{defaultLocale:"en",locales:["en"],path:"i18n",localeConfigs:{}},headTags:[{tagName:"script",attributes:{"data-collect-dnt":"true",src:"https://scripts.simpleanalyticscdn.com/latest.js",async:"async",defer:"defer"}}],presets:[["classic",{docs:{sidebarPath:"./sidebars.ts",routeBasePath:"/",breadcrumbs:!0,showLastUpdateTime:!0},blog:!1,theme:{customCss:"./src/css/custom.scss"}}]],plugins:["docusaurus-plugin-sass"],themeConfig:{colorMode:{disableSwitch:!1,defaultMode:"dark",respectPrefersColorScheme:!0},announcementBar:{id:"id-0002",content:'**\ud83c\udf89 Come check <a href="https://www.calimero.network/">our new website</a> \ud83c\udf89**',backgroundColor:"#247E80",textColor:"#fff",isCloseable:!0},docs:{sidebar:{hideable:!0,autoCollapseCategories:!1},versionPersistence:"localStorage"},navbar:{style:"dark",logo:{alt:"Calimero Network",src:"img/logo.svg"},items:[{to:"/explore/intro",position:"left",label:"Explore"},{to:"/learn/architecture",position:"left",label:"Learn"},{to:"/build/quickstart",position:"left",label:"Build"},{to:"/contribute/github",position:"left",label:"Contribute"},{to:"/resources/community-and-support",position:"left",label:"Resources"},{to:"/getting-started/setup",position:"right",label:"Getting started"},{type:"search",position:"right"},{href:"https://github.com/calimero-network/core",label:"GitHub",position:"right"}],hideOnScroll:!1},footer:{style:"dark",copyright:"Copyright \xa9 2024 Calimero Limited LLC.",links:[]},prism:{theme:{plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},darkTheme:{plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},additionalLanguages:["bash","toml"],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},algolia:{appId:"W1H5P6IW4T",apiKey:"f18239c312d6cc30d128a382d330278d",indexName:"calimero-networkio",contextualSearch:!0,searchPagePath:"search",searchParameters:{clickAnalytics:!0,analytics:!0,enableReRanking:!0,attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","type","url","title","description","headers","headersLevels"]},insights:!0},blog:{sidebar:{groupByYear:!0}},metadata:[],tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},baseUrlIssueBanner:!0,future:{experimental_storage:{type:"localStorage",namespace:!1},experimental_router:"browser"},onBrokenAnchors:"warn",onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},themes:[],scripts:[],stylesheets:[],clientModules:[],titleDelimiter:"|",noIndex:!1,markdown:{format:"mdx",mermaid:!1,mdx1Compat:{comments:!0,admonitions:!0,headingIds:!0},anchors:{maintainCase:!1}}}},991:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(null,arguments)}n.d(t,{A:()=>r})},1141:(e,t,n)=>{"use strict";function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}function o(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,r(e,t)}n.d(t,{A:()=>o})},3302:(e,t,n)=>{"use strict";function r(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;n[r]=e[r]}return n}n.d(t,{A:()=>r})},3526:(e,t,n)=>{"use strict";function r(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=r(e[t]))&&(o&&(o+=" "),o+=n)}else for(n in e)e[n]&&(o&&(o+=" "),o+=n);return o}n.d(t,{A:()=>o});const o=function(){for(var e,t,n=0,o="",a=arguments.length;n<a;n++)(e=arguments[n])&&(t=r(e))&&(o&&(o+=" "),o+=t);return o}},3477:(e,t,n)=>{"use strict";n.d(t,{My:()=>S,f4:()=>K});var r,o,a=n(758),i=n(3526),l=Object.create,s=Object.defineProperty,c=Object.defineProperties,u=Object.getOwnPropertyDescriptor,d=Object.getOwnPropertyDescriptors,f=Object.getOwnPropertyNames,p=Object.getOwnPropertySymbols,m=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty,g=Object.prototype.propertyIsEnumerable,y=(e,t,n)=>t in e?s(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,b=(e,t)=>{for(var n in t||(t={}))h.call(t,n)&&y(e,n,t[n]);if(p)for(var n of p(t))g.call(t,n)&&y(e,n,t[n]);return e},v=(e,t)=>c(e,d(t)),w=(e,t)=>{var n={};for(var r in e)h.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&p)for(var r of p(e))t.indexOf(r)<0&&g.call(e,r)&&(n[r]=e[r]);return n},S=((e,t,n)=>(n=null!=e?l(m(e)):{},((e,t,n,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let o of f(t))h.call(e,o)||o===n||s(e,o,{get:()=>t[o],enumerable:!(r=u(t,o))||r.enumerable});return e})(!t&&e&&e.__esModule?n:s(n,"default",{value:e,enumerable:!0}),e)))((r={"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js"(e,t){var n=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof o?new o(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++t}),e.__id},clone:function e(t,n){var o,a;switch(n=n||{},r.util.type(t)){case"Object":if(a=r.util.objId(t),n[a])return n[a];for(var i in o={},n[a]=o,t)t.hasOwnProperty(i)&&(o[i]=e(t[i],n));return o;case"Array":return a=r.util.objId(t),n[a]?n[a]:(o=[],n[a]=o,t.forEach((function(t,r){o[r]=e(t,n)})),o);default:return t}},getLanguage:function(t){for(;t;){var n=e.exec(t.className);if(n)return n[1].toLowerCase();t=t.parentElement}return"none"},setLanguage:function(t,n){t.className=t.className.replace(RegExp(e,"gi"),""),t.classList.add("language-"+n)},isActive:function(e,t,n){for(var r="no-"+t;e;){var o=e.classList;if(o.contains(t))return!0;if(o.contains(r))return!1;e=e.parentElement}return!!n}},languages:{plain:n,plaintext:n,text:n,txt:n,extend:function(e,t){var n=r.util.clone(r.languages[e]);for(var o in t)n[o]=t[o];return n},insertBefore:function(e,t,n,o){var a=(o=o||r.languages)[e],i={};for(var l in a)if(a.hasOwnProperty(l)){if(l==t)for(var s in n)n.hasOwnProperty(s)&&(i[s]=n[s]);n.hasOwnProperty(l)||(i[l]=a[l])}var c=o[e];return o[e]=i,r.languages.DFS(r.languages,(function(t,n){n===c&&t!=e&&(this[t]=i)})),i},DFS:function e(t,n,o,a){a=a||{};var i=r.util.objId;for(var l in t)if(t.hasOwnProperty(l)){n.call(t,l,t[l],o||l);var s=t[l],c=r.util.type(s);"Object"!==c||a[i(s)]?"Array"!==c||a[i(s)]||(a[i(s)]=!0,e(s,n,l,a)):(a[i(s)]=!0,e(s,n,null,a))}}},plugins:{},highlight:function(e,t,n){var a={code:e,grammar:t,language:n};if(r.hooks.run("before-tokenize",a),!a.grammar)throw new Error('The language "'+a.language+'" has no grammar.');return a.tokens=r.tokenize(a.code,a.grammar),r.hooks.run("after-tokenize",a),o.stringify(r.util.encode(a.tokens),a.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var o=new l;return s(o,o.head,e),i(e,o,t,o.head,0),function(e){for(var t=[],n=e.head.next;n!==e.tail;)t.push(n.value),n=n.next;return t}(o)},hooks:{all:{},add:function(e,t){var n=r.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=r.hooks.all[e];if(n&&n.length)for(var o,a=0;o=n[a++];)o(t)}},Token:o};function o(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length}function a(e,t,n,r){e.lastIndex=t;var o=e.exec(n);if(o&&r&&o[1]){var a=o[1].length;o.index+=a,o[0]=o[0].slice(a)}return o}function i(e,t,n,l,u,d){for(var f in n)if(n.hasOwnProperty(f)&&n[f]){var p=n[f];p=Array.isArray(p)?p:[p];for(var m=0;m<p.length;++m){if(d&&d.cause==f+","+m)return;var h=p[m],g=h.inside,y=!!h.lookbehind,b=!!h.greedy,v=h.alias;if(b&&!h.pattern.global){var w=h.pattern.toString().match(/[imsuy]*$/)[0];h.pattern=RegExp(h.pattern.source,w+"g")}for(var S=h.pattern||h,x=l.next,k=u;x!==t.tail&&!(d&&k>=d.reach);k+=x.value.length,x=x.next){var E=x.value;if(t.length>e.length)return;if(!(E instanceof o)){var _,O=1;if(b){if(!(_=a(S,k,e,y))||_.index>=e.length)break;var C=_.index,A=_.index+_[0].length,T=k;for(T+=x.value.length;C>=T;)T+=(x=x.next).value.length;if(k=T-=x.value.length,x.value instanceof o)continue;for(var j=x;j!==t.tail&&(T<A||"string"==typeof j.value);j=j.next)O++,T+=j.value.length;O--,E=e.slice(k,T),_.index-=k}else if(!(_=a(S,0,E,y)))continue;C=_.index;var P=_[0],I=E.slice(0,C),N=E.slice(C+P.length),R=k+E.length;d&&R>d.reach&&(d.reach=R);var L=x.prev;if(I&&(L=s(t,L,I),k+=I.length),c(t,L,O),x=s(t,L,new o(f,g?r.tokenize(P,g):P,v,P)),N&&s(t,x,N),O>1){var D={cause:f+","+m,reach:R};i(e,t,n,x.prev,k,D),d&&D.reach>d.reach&&(d.reach=D.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function s(e,t,n){var r=t.next,o={value:n,prev:t,next:r};return t.next=o,r.prev=o,e.length++,o}function c(e,t,n){for(var r=t.next,o=0;o<n&&r!==e.tail;o++)r=r.next;t.next=r,r.prev=t,e.length-=o}return o.stringify=function e(t,n){if("string"==typeof t)return t;if(Array.isArray(t)){var o="";return t.forEach((function(t){o+=e(t,n)})),o}var a={type:t.type,content:e(t.content,n),tag:"span",classes:["token",t.type],attributes:{},language:n},i=t.alias;i&&(Array.isArray(i)?Array.prototype.push.apply(a.classes,i):a.classes.push(i)),r.hooks.run("wrap",a);var l="";for(var s in a.attributes)l+=" "+s+'="'+(a.attributes[s]||"").replace(/"/g,""")+'"';return"<"+a.tag+' class="'+a.classes.join(" ")+'"'+l+">"+a.content+"</"+a.tag+">"},r}();t.exports=n,n.default=n}},function(){return o||(0,r[f(r)[0]])((o={exports:{}}).exports,o),o.exports})());S.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},S.languages.markup.tag.inside["attr-value"].inside.entity=S.languages.markup.entity,S.languages.markup.doctype.inside["internal-subset"].inside=S.languages.markup,S.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(S.languages.markup.tag,"addInlined",{value:function(e,t){var n;(t=((n=((n={})["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:S.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i,{"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}}))["language-"+t]={pattern:/[\s\S]+/,inside:S.languages[t]},{}))[e]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},S.languages.insertBefore("markup","cdata",t)}}),Object.defineProperty(S.languages.markup.tag,"addAttribute",{value:function(e,t){S.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:S.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),S.languages.html=S.languages.markup,S.languages.mathml=S.languages.markup,S.languages.svg=S.languages.markup,S.languages.xml=S.languages.extend("markup",{}),S.languages.ssml=S.languages.xml,S.languages.atom=S.languages.xml,S.languages.rss=S.languages.xml,function(e){var t={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},n=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,r="(?:[^\\\\-]|"+n.source+")",o=(r=RegExp(r+"-"+r),{pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"});e.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:r,inside:{escape:n,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":t,"char-set":{pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},escape:n}},"special-escape":t,"char-set":{pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":o}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:n,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,alias:"punctuation",inside:{"group-name":o}},{pattern:/\)/,alias:"punctuation"}],quantifier:{pattern:/(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/,alias:"number"},alternation:{pattern:/\|/,alias:"keyword"}}}(S),S.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},S.languages.javascript=S.languages.extend("clike",{"class-name":[S.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),S.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,S.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:S.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:S.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:S.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:S.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:S.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),S.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:S.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),S.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),S.languages.markup&&(S.languages.markup.tag.addInlined("script","javascript"),S.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),S.languages.js=S.languages.javascript,S.languages.actionscript=S.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<<?|>>?>?|[!=]=?)=?|[~?@]/}),S.languages.actionscript["class-name"].alias="function",delete S.languages.actionscript.parameter,delete S.languages.actionscript["literal-property"],S.languages.markup&&S.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:S.languages.markup}}),function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(S),function(e){var t=e.languages.javadoclike={parameter:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};Object.defineProperty(t,"addSupport",{value:function(t,n){(t="string"==typeof t?[t]:t).forEach((function(t){var r=function(e){e.inside||(e.inside={}),e.inside.rest=n},o="doc-comment";if(a=e.languages[t]){var a,i=a[o];if((i=i||(a=e.languages.insertBefore(t,"comment",{"doc-comment":{pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,lookbehind:!0,alias:"comment"}}))[o])instanceof RegExp&&(i=a[o]={pattern:i}),Array.isArray(i))for(var l=0,s=i.length;l<s;l++)i[l]instanceof RegExp&&(i[l]={pattern:i[l]}),r(i[l]);else r(i)}}))}}),t.addSupport(["java","javascript","php"],t)}(S),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;(t=(e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css,e.languages.markup))&&(t.tag.addInlined("style","css"),t.tag.addAttribute("style","css"))}(S),function(e){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,n=(t=(e.languages.css.selector={pattern:e.languages.css.selector.pattern,lookbehind:!0,inside:t={"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-\w]+/,id:/#[-\w]+/,attribute:{pattern:RegExp("\\[(?:[^[\\]\"']|"+t.source+")*\\]"),greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},"attr-name":{pattern:/^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,lookbehind:!0},"attr-value":[t,{pattern:/(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],combinator:/>|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}}),{pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0}),{pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0});e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,number:n})}(S),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",o=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),a=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<value>>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<key>>/g,(function(){return"(?:"+o+"|"+a+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:i(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:i(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:i(a),lookbehind:!0,greedy:!0},number:{pattern:i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(S),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(/<inner>/g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,o=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),a=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source,i=(e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+o+a+"(?:"+o+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+o+a+")(?:"+o+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+o+")"+a+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+o+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n<r;n++){var o,a=t[n];"code"!==a.type?e(a.content):(o=a.content[1],a=a.content[3],o&&a&&"code-language"===o.type&&"code-block"===a.type&&"string"==typeof o.content&&(o=o.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),o="language-"+(o=(/[a-z][\w-]*/i.exec(o)||[""])[0].toLowerCase()),a.alias?"string"==typeof a.alias?a.alias=[a.alias,o]:a.alias.push(o):a.alias=[o]))}}(e.tokens)})),e.hooks.add("wrap",(function(t){if("code-block"===t.type){for(var n="",r=0,o=t.classes.length;r<o;r++){var a=t.classes[r];if(a=/language-(.+)/.exec(a)){n=a[1];break}}var c,u=e.languages[n];u?t.content=e.highlight(t.content.replace(i,"").replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,(function(e,t){var n;return"#"===(t=t.toLowerCase())[0]?(n="x"===t[1]?parseInt(t.slice(2),16):Number(t.slice(1)),s(n)):l[t]||e})),u,n):n&&"none"!==n&&e.plugins.autoloader&&(c="md-"+(new Date).valueOf()+"-"+Math.floor(1e16*Math.random()),t.attributes.id=c,e.plugins.autoloader.loadLanguages(n,(function(){var t=document.getElementById(c);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))})))}})),RegExp(e.languages.markup.tag.pattern.source,"gi")),l={amp:"&",lt:"<",gt:">",quot:'"'},s=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(S),S.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:S.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},S.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n<t.length;){var r=t[n++];if("keyword"===r.type&&"mutation"===r.content){var o=[];if(d(["definition-mutation","punctuation"])&&"("===u(1).content){n+=2;var a=f(/^\($/,/^\)$/);if(-1===a)continue;for(;n<a;n++){var i=u(0);"variable"===i.type&&(p(i,"variable-input"),o.push(i.content))}n=a+1}if(d(["punctuation","property-query"])&&"{"===u(0).content&&(n++,p(u(0),"property-mutation"),0<o.length)){var l=f(/^\{$/,/^\}$/);if(-1!==l)for(var s=n;s<l;s++){var c=t[s];"variable"===c.type&&0<=o.indexOf(c.content)&&p(c,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n<e.length;n++){var r=u(n+t);if(!r||r.type!==e[n])return}return 1}function f(e,r){for(var o=1,a=n;a<t.length;a++){var i=t[a],l=i.content;if("punctuation"===i.type&&"string"==typeof l)if(e.test(l))o++;else if(r.test(l)&&0==--o)return a}return-1}function p(e,t){var n=e.alias;n?Array.isArray(n)||(e.alias=n=[n]):e.alias=n=[],n.push(t)}})),S.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,o=r.inside["interpolation-punctuation"],a=r.pattern.source;function i(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function l(t,n,r){return t={code:t,grammar:n,language:r},e.hooks.run("before-tokenize",t),t.tokens=e.tokenize(t.code,t.grammar),e.hooks.run("after-tokenize",t),t.tokens}function s(t,n,i){var s=e.tokenize(t,{interpolation:{pattern:RegExp(a),lookbehind:!0}}),c=0,u={},d=(s=l(s.map((function(e){if("string"==typeof e)return e;var n,r;for(e=e.content;-1!==t.indexOf((r=c++,n="___"+i.toUpperCase()+"_"+r+"___")););return u[n]=e,n})).join(""),n,i),Object.keys(u));return c=0,function t(n){for(var a=0;a<n.length;a++){if(c>=d.length)return;var i,s,f,p,m,h,g,y=n[a];"string"==typeof y||"string"==typeof y.content?(i=d[c],-1!==(g=(h="string"==typeof y?y:y.content).indexOf(i))&&(++c,s=h.substring(0,g),m=u[i],f=void 0,(p={})["interpolation-punctuation"]=o,3===(p=e.tokenize(m,p)).length&&((f=[1,1]).push.apply(f,l(p[1],e.languages.javascript,"javascript")),p.splice.apply(p,f)),f=new e.Token("interpolation",p,r.alias,m),p=h.substring(g+i.length),m=[],s&&m.push(s),m.push(f),p&&(t(h=[p]),m.push.apply(m,h)),"string"==typeof y?(n.splice.apply(n,[a,1].concat(m)),a+=m.length-1):y.content=m)):(g=y.content,Array.isArray(g)?t(g):t([g]))}}(s),new e.Token(i,s,"language-"+i,t)}e.languages.javascript["template-string"]=[i("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),i("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),i("svg",/\bsvg/.source),i("markdown",/\b(?:markdown|md)/.source),i("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),i("sql",/\bsql/.source),t].filter(Boolean);var c={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function u(e){return"string"==typeof e?e:Array.isArray(e)?e.map(u).join(""):u(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in c&&function t(n){for(var r=0,o=n.length;r<o;r++){var a,i,l,c=n[r];"string"!=typeof c&&(a=c.content,Array.isArray(a)?"template-string"===c.type?(c=a[1],3===a.length&&"string"!=typeof c&&"embedded-code"===c.type&&(i=u(c),c=c.alias,c=Array.isArray(c)?c[0]:c,l=e.languages[c])&&(a[1]=s(i,l,c))):t(a):"string"!=typeof a&&t([a]))}}(t.tokens)}))}(S),function(e){e.languages.typescript=e.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(S),function(e){var t=e.languages.javascript,n=/\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source,r="(@(?:arg|argument|param|property)\\s+(?:"+n+"\\s+)?)";e.languages.jsdoc=e.languages.extend("javadoclike",{parameter:{pattern:RegExp(r+/(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),e.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(r+/\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:t,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:<TYPE>\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(/<TYPE>/g,(function(){return n}))),lookbehind:!0,inside:{punctuation:/\./}},{pattern:RegExp("(@[a-z]+\\s+)"+n),lookbehind:!0,inside:{string:t.string,number:t.number,boolean:t.boolean,keyword:e.languages.typescript.keyword,operator:/=>|\.\.\.|[&|?:*]/,punctuation:/[.,;=<>{}()[\]]/}}],example:{pattern:/(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^([\t ]*(?:\*\s*)?)\S.*$/m,lookbehind:!0,inside:t,alias:"language-javascript"}}}}),e.languages.javadoclike.addSupport("javascript",e.languages.jsdoc)}(S),function(e){e.languages.flow=e.languages.extend("javascript",{}),e.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,alias:"class-name"}]}),e.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete e.languages.flow.parameter,e.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(e.languages.flow.keyword)||(e.languages.flow.keyword=[e.languages.flow.keyword]),e.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(S),S.languages.n4js=S.languages.extend("javascript",{keyword:/\b(?:Array|any|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),S.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),S.languages.n4jsd=S.languages.n4js,function(e){function t(e,t){return RegExp(e.replace(/<ID>/g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:<ID>(?:\s*,\s*(?:\*\s*as\s+<ID>|\{[^{}]*\}))?|\*\s*as\s+<ID>|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+<ID>)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?<ID>/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],r=0;r<n.length;r++){var o=n[r],a=e.languages.javascript[o];o=(a="RegExp"===e.util.type(a)?e.languages.javascript[o]={pattern:a}:a).inside||{};(a.inside=o)["maybe-class-name"]=/^[A-Z][\s\S]*/}}(S),function(e){var t=e.util.clone(e.languages.javascript),n=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,r=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,o=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function a(e,t){return e=e.replace(/<S>/g,(function(){return n})).replace(/<BRACES>/g,(function(){return r})).replace(/<SPREAD>/g,(function(){return o})),RegExp(e,t)}function i(t){for(var n=[],r=0;r<t.length;r++){var o=t[r],a=!1;"string"!=typeof o&&("tag"===o.type&&o.content[0]&&"tag"===o.content[0].type?"</"===o.content[0].content[0].content?0<n.length&&n[n.length-1].tagName===l(o.content[0].content[1])&&n.pop():"/>"!==o.content[o.content.length-1].content&&n.push({tagName:l(o.content[0].content[1]),openedBraces:0}):0<n.length&&"punctuation"===o.type&&"{"===o.content?n[n.length-1].openedBraces++:0<n.length&&0<n[n.length-1].openedBraces&&"punctuation"===o.type&&"}"===o.content?n[n.length-1].openedBraces--:a=!0),(a||"string"==typeof o)&&0<n.length&&0===n[n.length-1].openedBraces&&(a=l(o),r<t.length-1&&("string"==typeof t[r+1]||"plain-text"===t[r+1].type)&&(a+=l(t[r+1]),t.splice(r+1,1)),0<r&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(a=l(t[r-1])+a,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",a,null,a)),o.content&&"string"!=typeof o.content&&i(o.content)}}o=a(o).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=a(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:a(/<SPREAD>/.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:a(/=<BRACES>/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var l=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(l).join(""):""};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||i(e.tokens)}))}(S),function(e){var t=e.util.clone(e.languages.typescript);(t=(e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"],e.languages.tsx.tag)).pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+t.pattern.source+")",t.pattern.flags),t.lookbehind=!0}(S),S.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+/(?:elseif|if)\b/.source+"(?:[ \t]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},S.languages.swift["string-literal"].forEach((function(e){e.inside.interpolation.inside=S.languages.swift})),function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin}(S),S.languages.c=S.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),S.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),S.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},S.languages.c.string],char:S.languages.c.char,comment:S.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:S.languages.c}}}}),S.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete S.languages.c.boolean,S.languages.objectivec=S.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete S.languages.objectivec["class-name"],S.languages.objc=S.languages.objectivec,S.languages.reason=S.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),S.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete S.languages.reason.function,function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,n=0;n<2;n++)t=t.replace(/<self>/g,(function(){return t}));t=t.replace(/<self>/g,(function(){return/[^\s\S]/.source})),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}(S),S.languages.go=S.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),S.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete S.languages.go["class-name"],function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(S),S.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},S.languages.python["string-interpolation"].inside.interpolation.inside.rest=S.languages.python,S.languages.py=S.languages.python;((e,t)=>{for(var n in t)s(e,n,{get:t[n],enumerable:!0})})({},{dracula:()=>x,duotoneDark:()=>k,duotoneLight:()=>E,github:()=>_,jettwaveDark:()=>F,jettwaveLight:()=>z,nightOwl:()=>O,nightOwlLight:()=>C,oceanicNext:()=>j,okaidia:()=>P,oneDark:()=>B,oneLight:()=>$,palenight:()=>I,shadesOfPurple:()=>N,synthwave84:()=>R,ultramin:()=>L,vsDark:()=>D,vsLight:()=>M});var x={plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},k={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]},E={plain:{backgroundColor:"#faf8f5",color:"#728fcb"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#b6ad9a"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#063289"}},{types:["property","function"],style:{color:"#b29762"}},{types:["tag-id","selector","atrule-id"],style:{color:"#2d2006"}},{types:["attr-name"],style:{color:"#896724"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule"],style:{color:"#728fcb"}},{types:["placeholder","variable"],style:{color:"#93abdc"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#896724"}}]},_={plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},O={plain:{color:"#d6deeb",backgroundColor:"#011627"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(99, 119, 119)",fontStyle:"italic"}},{types:["string","url"],style:{color:"rgb(173, 219, 103)"}},{types:["variable"],style:{color:"rgb(214, 222, 235)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation"],style:{color:"rgb(199, 146, 234)"}},{types:["selector","doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(255, 203, 139)"}},{types:["tag","operator","keyword"],style:{color:"rgb(127, 219, 202)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["property"],style:{color:"rgb(128, 203, 196)"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}}]},C={plain:{color:"#403f53",backgroundColor:"#FBFBFB"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(72, 118, 214)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(152, 159, 177)",fontStyle:"italic"}},{types:["string","builtin","char","constant","url"],style:{color:"rgb(72, 118, 214)"}},{types:["variable"],style:{color:"rgb(201, 103, 101)"}},{types:["number"],style:{color:"rgb(170, 9, 130)"}},{types:["punctuation"],style:{color:"rgb(153, 76, 195)"}},{types:["function","selector","doctype"],style:{color:"rgb(153, 76, 195)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(17, 17, 17)"}},{types:["tag"],style:{color:"rgb(153, 76, 195)"}},{types:["operator","property","keyword","namespace"],style:{color:"rgb(12, 150, 155)"}},{types:["boolean"],style:{color:"rgb(188, 84, 84)"}}]},A="#c5a5c5",T="#8dc891",j={plain:{backgroundColor:"#282c34",color:"#ffffff"},styles:[{types:["attr-name"],style:{color:A}},{types:["attr-value"],style:{color:T}},{types:["comment","block-comment","prolog","doctype","cdata","shebang"],style:{color:"#999999"}},{types:["property","number","function-name","constant","symbol","deleted"],style:{color:"#5a9bcf"}},{types:["boolean"],style:{color:"#ff8b50"}},{types:["tag"],style:{color:"#fc929e"}},{types:["string"],style:{color:T}},{types:["punctuation"],style:{color:T}},{types:["selector","char","builtin","inserted"],style:{color:"#D8DEE9"}},{types:["function"],style:{color:"#79b6f2"}},{types:["operator","entity","url","variable"],style:{color:"#d7deea"}},{types:["keyword"],style:{color:A}},{types:["atrule","class-name"],style:{color:"#FAC863"}},{types:["important"],style:{fontWeight:"400"}},{types:["bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}}]},P={plain:{color:"#f8f8f2",backgroundColor:"#272822"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"#f92672",fontStyle:"italic"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"#8292a2",fontStyle:"italic"}},{types:["string","url"],style:{color:"#a6e22e"}},{types:["variable"],style:{color:"#f8f8f2"}},{types:["number"],style:{color:"#ae81ff"}},{types:["builtin","char","constant","function","class-name"],style:{color:"#e6db74"}},{types:["punctuation"],style:{color:"#f8f8f2"}},{types:["selector","doctype"],style:{color:"#a6e22e",fontStyle:"italic"}},{types:["tag","operator","keyword"],style:{color:"#66d9ef"}},{types:["boolean"],style:{color:"#ae81ff"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)",opacity:.7}},{types:["tag","property"],style:{color:"#f92672"}},{types:["attr-name"],style:{color:"#a6e22e !important"}},{types:["doctype"],style:{color:"#8292a2"}},{types:["rule"],style:{color:"#e6db74"}}]},I={plain:{color:"#bfc7d5",backgroundColor:"#292d3e"},styles:[{types:["comment"],style:{color:"rgb(105, 112, 152)",fontStyle:"italic"}},{types:["string","inserted"],style:{color:"rgb(195, 232, 141)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation","selector"],style:{color:"rgb(199, 146, 234)"}},{types:["variable"],style:{color:"rgb(191, 199, 213)"}},{types:["class-name","attr-name"],style:{color:"rgb(255, 203, 107)"}},{types:["tag","deleted"],style:{color:"rgb(255, 85, 114)"}},{types:["operator"],style:{color:"rgb(137, 221, 255)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["keyword"],style:{fontStyle:"italic"}},{types:["doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}},{types:["url"],style:{color:"rgb(221, 221, 221)"}}]},N={plain:{color:"#9EFEFF",backgroundColor:"#2D2A55"},styles:[{types:["changed"],style:{color:"rgb(255, 238, 128)"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)"}},{types:["comment"],style:{color:"rgb(179, 98, 255)",fontStyle:"italic"}},{types:["punctuation"],style:{color:"rgb(255, 255, 255)"}},{types:["constant"],style:{color:"rgb(255, 98, 140)"}},{types:["string","url"],style:{color:"rgb(165, 255, 144)"}},{types:["variable"],style:{color:"rgb(255, 238, 128)"}},{types:["number","boolean"],style:{color:"rgb(255, 98, 140)"}},{types:["attr-name"],style:{color:"rgb(255, 180, 84)"}},{types:["keyword","operator","property","namespace","tag","selector","doctype"],style:{color:"rgb(255, 157, 0)"}},{types:["builtin","char","constant","function","class-name"],style:{color:"rgb(250, 208, 0)"}}]},R={plain:{backgroundColor:"linear-gradient(to bottom, #2a2139 75%, #34294f)",backgroundImage:"#34294f",color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"},styles:[{types:["comment","block-comment","prolog","doctype","cdata"],style:{color:"#495495",fontStyle:"italic"}},{types:["punctuation"],style:{color:"#ccc"}},{types:["tag","attr-name","namespace","number","unit","hexcode","deleted"],style:{color:"#e2777a"}},{types:["property","selector"],style:{color:"#72f1b8",textShadow:"0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475"}},{types:["function-name"],style:{color:"#6196cc"}},{types:["boolean","selector-id","function"],style:{color:"#fdfdfd",textShadow:"0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975"}},{types:["class-name","maybe-class-name","builtin"],style:{color:"#fff5f6",textShadow:"0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75"}},{types:["constant","symbol"],style:{color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"}},{types:["important","atrule","keyword","selector-class"],style:{color:"#f4eee4",textShadow:"0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575"}},{types:["string","char","attr-value","regex","variable"],style:{color:"#f87c32"}},{types:["parameter"],style:{fontStyle:"italic"}},{types:["entity","url"],style:{color:"#67cdcc"}},{types:["operator"],style:{color:"ffffffee"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["entity"],style:{cursor:"help"}},{types:["inserted"],style:{color:"green"}}]},L={plain:{color:"#282a2e",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(197, 200, 198)"}},{types:["string","number","builtin","variable"],style:{color:"rgb(150, 152, 150)"}},{types:["class-name","function","tag","attr-name"],style:{color:"rgb(40, 42, 46)"}}]},D={plain:{color:"#9CDCFE",backgroundColor:"#1E1E1E"},styles:[{types:["prolog"],style:{color:"rgb(0, 0, 128)"}},{types:["comment"],style:{color:"rgb(106, 153, 85)"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"rgb(86, 156, 214)"}},{types:["number","inserted"],style:{color:"rgb(181, 206, 168)"}},{types:["constant"],style:{color:"rgb(100, 102, 149)"}},{types:["attr-name","variable"],style:{color:"rgb(156, 220, 254)"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"rgb(206, 145, 120)"}},{types:["selector"],style:{color:"rgb(215, 186, 125)"}},{types:["tag"],style:{color:"rgb(78, 201, 176)"}},{types:["tag"],languages:["markup"],style:{color:"rgb(86, 156, 214)"}},{types:["punctuation","operator"],style:{color:"rgb(212, 212, 212)"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"rgb(220, 220, 170)"}},{types:["class-name"],style:{color:"rgb(78, 201, 176)"}},{types:["char"],style:{color:"rgb(209, 105, 105)"}}]},M={plain:{color:"#000000",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(0, 128, 0)"}},{types:["builtin"],style:{color:"rgb(0, 112, 193)"}},{types:["number","variable","inserted"],style:{color:"rgb(9, 134, 88)"}},{types:["operator"],style:{color:"rgb(0, 0, 0)"}},{types:["constant","char"],style:{color:"rgb(129, 31, 63)"}},{types:["tag"],style:{color:"rgb(128, 0, 0)"}},{types:["attr-name"],style:{color:"rgb(255, 0, 0)"}},{types:["deleted","string"],style:{color:"rgb(163, 21, 21)"}},{types:["changed","punctuation"],style:{color:"rgb(4, 81, 165)"}},{types:["function","keyword"],style:{color:"rgb(0, 0, 255)"}},{types:["class-name"],style:{color:"rgb(38, 127, 153)"}}]},F={plain:{color:"#f8fafc",backgroundColor:"#011627"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#569CD6"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#f8fafc"}},{types:["attr-name","variable"],style:{color:"#9CDCFE"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#cbd5e1"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#D4D4D4"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#7dd3fc"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},z={plain:{color:"#0f172a",backgroundColor:"#f1f5f9"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#0c4a6e"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#0f172a"}},{types:["attr-name","variable"],style:{color:"#0c4a6e"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#64748b"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#475569"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#0e7490"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},B={plain:{backgroundColor:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(220, 10%, 40%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(220, 14%, 71%)"}},{types:["attr-name","class-name","maybe-class-name","boolean","constant","number","atrule"],style:{color:"hsl(29, 54%, 61%)"}},{types:["keyword"],style:{color:"hsl(286, 60%, 67%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(355, 65%, 65%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value"],style:{color:"hsl(95, 38%, 62%)"}},{types:["variable","operator","function"],style:{color:"hsl(207, 82%, 66%)"}},{types:["url"],style:{color:"hsl(187, 47%, 55%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(220, 14%, 71%)"}}]},$={plain:{backgroundColor:"hsl(230, 1%, 98%)",color:"hsl(230, 8%, 24%)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(230, 4%, 64%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(230, 8%, 24%)"}},{types:["attr-name","class-name","boolean","constant","number","atrule"],style:{color:"hsl(35, 99%, 36%)"}},{types:["keyword"],style:{color:"hsl(301, 63%, 40%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(5, 74%, 59%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value","punctuation"],style:{color:"hsl(119, 34%, 47%)"}},{types:["variable","operator","function"],style:{color:"hsl(221, 87%, 60%)"}},{types:["url"],style:{color:"hsl(198, 99%, 37%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(230, 8%, 24%)"}}]},U=(e,t)=>{const{plain:n}=e,r=e.styles.reduce(((e,n)=>{const{languages:r,style:o}=n;return r&&!r.includes(t)||n.types.forEach((t=>{const n=b(b({},e[t]),o);e[t]=n})),e}),{});return r.root=n,r.plain=v(b({},n),{backgroundColor:void 0}),r},H=/\r\n|\r|\n/,V=e=>{0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},q=(e,t)=>{const n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},W=e=>{const t=[[]],n=[e],r=[0],o=[e.length];let a=0,i=0,l=[];const s=[l];for(;i>-1;){for(;(a=r[i]++)<o[i];){let e,c=t[i];const u=n[i][a];if("string"==typeof u?(c=i>0?c:["plain"],e=u):(c=q(c,u.type),u.alias&&(c=q(c,u.alias)),e=u.content),"string"!=typeof e){i++,t.push(c),n.push(e),r.push(0),o.push(e.length);continue}const d=e.split(H),f=d.length;l.push({types:c,content:d[0]});for(let t=1;t<f;t++)V(l),s.push(l=[]),l.push({types:c,content:d[t]})}i--,t.pop(),n.pop(),r.pop(),o.pop()}return V(l),s},G=({children:e,language:t,code:n,theme:r,prism:o})=>{const l=t.toLowerCase(),s=((e,t)=>{const[n,r]=(0,a.useState)(U(t,e)),o=(0,a.useRef)(),i=(0,a.useRef)();return(0,a.useEffect)((()=>{t===o.current&&e===i.current||(o.current=t,i.current=e,r(U(t,e)))}),[e,t]),n})(l,r),c=(e=>(0,a.useCallback)((t=>{var n=t,{className:r,style:o,line:a}=n,l=w(n,["className","style","line"]);const s=v(b({},l),{className:(0,i.A)("token-line",r)});return"object"==typeof e&&"plain"in e&&(s.style=e.plain),"object"==typeof o&&(s.style=b(b({},s.style||{}),o)),s}),[e]))(s),u=(e=>{const t=(0,a.useCallback)((({types:t,empty:n})=>{if(null!=e)return 1===t.length&&"plain"===t[0]?null!=n?{display:"inline-block"}:void 0:1===t.length&&null!=n?e[t[0]]:Object.assign(null!=n?{display:"inline-block"}:{},...t.map((t=>e[t])))}),[e]);return(0,a.useCallback)((e=>{var n=e,{token:r,className:o,style:a}=n,l=w(n,["token","className","style"]);const s=v(b({},l),{className:(0,i.A)("token",...r.types,o),children:r.content,style:t(r)});return null!=a&&(s.style=b(b({},s.style||{}),a)),s}),[t])})(s),d=(({prism:e,code:t,grammar:n,language:r})=>{const o=(0,a.useRef)(e);return(0,a.useMemo)((()=>{if(null==n)return W([t]);const e={code:t,grammar:n,language:r,tokens:[]};return o.current.hooks.run("before-tokenize",e),e.tokens=o.current.tokenize(t,n),o.current.hooks.run("after-tokenize",e),W(e.tokens)}),[t,n,r])})({prism:o,language:l,code:n,grammar:o.languages[l]});return e({tokens:d,className:`prism-code language-${l}`,style:null!=s?s.root:{},getLineProps:c,getTokenProps:u})},K=e=>(0,a.createElement)(G,v(b({},e),{prism:e.prism||S,theme:e.theme||D,code:e.code,language:e.language}))},5385:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=!0,o="Invariant failed";function a(e,t){if(!e){if(r)throw new Error(o);var n="function"==typeof t?t():t,a=n?"".concat(o,": ").concat(n):o;throw new Error(a)}}},3422:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__addDisposableResource:()=>R,__assign:()=>a,__asyncDelegator:()=>_,__asyncGenerator:()=>E,__asyncValues:()=>O,__await:()=>k,__awaiter:()=>m,__classPrivateFieldGet:()=>P,__classPrivateFieldIn:()=>N,__classPrivateFieldSet:()=>I,__createBinding:()=>g,__decorate:()=>l,__disposeResources:()=>D,__esDecorate:()=>c,__exportStar:()=>y,__extends:()=>o,__generator:()=>h,__importDefault:()=>j,__importStar:()=>T,__makeTemplateObject:()=>C,__metadata:()=>p,__param:()=>s,__propKey:()=>d,__read:()=>v,__rest:()=>i,__runInitializers:()=>u,__setFunctionName:()=>f,__spread:()=>w,__spreadArray:()=>x,__spreadArrays:()=>S,__values:()=>b,default:()=>M});var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var a=function(){return a=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},a.apply(this,arguments)};function i(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}function l(e,t,n,r){var o,a=arguments.length,i=a<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,n,r);else for(var l=e.length-1;l>=0;l--)(o=e[l])&&(i=(a<3?o(i):a>3?o(t,n,i):o(t,n))||i);return a>3&&i&&Object.defineProperty(t,n,i),i}function s(e,t){return function(n,r){t(n,r,e)}}function c(e,t,n,r,o,a){function i(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var l,s=r.kind,c="getter"===s?"get":"setter"===s?"set":"value",u=!t&&e?r.static?e:e.prototype:null,d=t||(u?Object.getOwnPropertyDescriptor(u,r.name):{}),f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]="access"===h?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw new TypeError("Cannot add initializers after decoration has completed");a.push(i(e||null))};var g=(0,n[p])("accessor"===s?{get:d.get,set:d.set}:d[c],m);if("accessor"===s){if(void 0===g)continue;if(null===g||"object"!=typeof g)throw new TypeError("Object expected");(l=i(g.get))&&(d.get=l),(l=i(g.set))&&(d.set=l),(l=i(g.init))&&o.unshift(l)}else(l=i(g))&&("field"===s?o.unshift(l):d[c]=l)}u&&Object.defineProperty(u,r.name,d),f=!0}function u(e,t,n){for(var r=arguments.length>2,o=0;o<t.length;o++)n=r?t[o].call(e,n):t[o].call(e);return r?n:void 0}function d(e){return"symbol"==typeof e?e:"".concat(e)}function f(e,t,n){return"symbol"==typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:n?"".concat(n," ",t):t})}function p(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function m(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{s(r.next(e))}catch(t){a(t)}}function l(e){try{s(r.throw(e))}catch(t){a(t)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,l)}s((r=r.apply(e,t||[])).next())}))}function h(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(s){return function(l){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==l[0]&&2!==l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(s){l=[6,s],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,s])}}}var g=Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]};function y(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||g(t,e,n)}function b(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function v(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(l){o={error:l}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}function w(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(v(arguments[t]));return e}function S(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var r=Array(e),o=0;for(t=0;t<n;t++)for(var a=arguments[t],i=0,l=a.length;i<l;i++,o++)r[o]=a[i];return r}function x(e,t,n){if(n||2===arguments.length)for(var r,o=0,a=t.length;o<a;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))}function k(e){return this instanceof k?(this.v=e,this):new k(e)}function E(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,o=n.apply(e,t||[]),a=[];return r={},i("next"),i("throw"),i("return",(function(e){return function(t){return Promise.resolve(t).then(e,c)}})),r[Symbol.asyncIterator]=function(){return this},r;function i(e,t){o[e]&&(r[e]=function(t){return new Promise((function(n,r){a.push([e,t,n,r])>1||l(e,t)}))},t&&(r[e]=t(r[e])))}function l(e,t){try{(n=o[e](t)).value instanceof k?Promise.resolve(n.value.v).then(s,c):u(a[0][2],n)}catch(r){u(a[0][3],r)}var n}function s(e){l("next",e)}function c(e){l("throw",e)}function u(e,t){e(t),a.shift(),a.length&&l(a[0][0],a[0][1])}}function _(e){var t,n;return t={},r("next"),r("throw",(function(e){throw e})),r("return"),t[Symbol.iterator]=function(){return this},t;function r(r,o){t[r]=e[r]?function(t){return(n=!n)?{value:k(e[r](t)),done:!1}:o?o(t):t}:o}}function O(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=b(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,o){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,o,(t=e[n](t)).done,t.value)}))}}}function C(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var A=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t};function T(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&g(t,e,n);return A(t,e),t}function j(e){return e&&e.__esModule?e:{default:e}}function P(e,t,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(e):r?r.value:t.get(e)}function I(e,t,n,r,o){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?o.call(e,n):o?o.value=n:t.set(e,n),n}function N(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)}function R(e,t,n){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var r,o;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(void 0===r){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],n&&(o=r)}if("function"!=typeof r)throw new TypeError("Object not disposable.");o&&(r=function(){try{o.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}var L="function"==typeof SuppressedError?SuppressedError:function(e,t,n){var r=new Error(n);return r.name="SuppressedError",r.error=e,r.suppressed=t,r};function D(e){function t(t){e.error=e.hasError?new L(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}return function n(){for(;e.stack.length;){var r=e.stack.pop();try{var o=r.dispose&&r.dispose.call(r.value);if(r.async)return Promise.resolve(o).then(n,(function(e){return t(e),n()}))}catch(a){t(a)}}if(e.hasError)throw e.error}()}const M={__extends:o,__assign:a,__rest:i,__decorate:l,__param:s,__metadata:p,__awaiter:m,__generator:h,__createBinding:g,__exportStar:y,__values:b,__read:v,__spread:w,__spreadArrays:S,__spreadArray:x,__await:k,__asyncGenerator:E,__asyncDelegator:_,__asyncValues:O,__makeTemplateObject:C,__importStar:T,__importDefault:j,__classPrivateFieldGet:P,__classPrivateFieldSet:I,__classPrivateFieldIn:N,__addDisposableResource:R,__disposeResources:D}},2654:e=>{"use strict";e.exports={}},4054:e=>{"use strict";e.exports=JSON.parse('{"/search-5de":{"__comp":"1a4e3797","__context":{"plugin":"c141421f"}},"/-e5f":{"__comp":"1df93b7f","__context":{"plugin":"a7456010"},"config":"5e9f5e1a"},"/-fc3":{"__comp":"5e95c892","__context":{"plugin":"aba21aa0"}},"/-399":{"__comp":"a7bd4aaa","__props":"22dd74f7"},"/-563":{"__comp":"a94703ab"},"/build/client-sdks/client-ts-sdk-c43":{"__comp":"17896441","content":"607ff301"},"/build/dev-mode-b7b":{"__comp":"17896441","content":"2e1d06d3"},"/build/protocol-sdks/protocol-rs-sdk-bd2":{"__comp":"17896441","content":"3b38d041"},"/build/protocol-sdks/protocol-sdk-3f5":{"__comp":"17896441","content":"15a7497e"},"/build/publish-app-4a1":{"__comp":"17896441","content":"f1cd7b65"},"/build/quickstart-846":{"__comp":"17896441","content":"0018adbe"},"/contribute/bounty-program-0d1":{"__comp":"17896441","content":"bd9c48a9"},"/contribute/github-0ba":{"__comp":"17896441","content":"01954a18"},"/contribute/hackathons-c04":{"__comp":"17896441","content":"f773e51d"},"/explore/awesome-projects/only-peers-171":{"__comp":"17896441","content":"13477880"},"/explore/awesome-projects/rock-paper-scissors-e82":{"__comp":"17896441","content":"22e91f41"},"/explore/intro-d49":{"__comp":"17896441","content":"42b3b6e0"},"/explore/manifesto-c4f":{"__comp":"17896441","content":"702ee7bc"},"/explore/use-cases/decentralized-edge-compute-557":{"__comp":"17896441","content":"9bc1354f"},"/explore/use-cases/decentralized-gig-economy-936":{"__comp":"17896441","content":"fdb23cd9"},"/explore/use-cases/decentralized-identity-verification-14b":{"__comp":"17896441","content":"889f3b97"},"/explore/use-cases/decentralized-intellectual-property-management-589":{"__comp":"17896441","content":"a9154f55"},"/explore/use-cases/decentralized-social-platforms-def":{"__comp":"17896441","content":"d94758ba"},"/explore/use-cases/decentralized-voting-systems-f14":{"__comp":"17896441","content":"b9be9bb6"},"/explore/use-cases/deprod-0c4":{"__comp":"17896441","content":"bc9a0017"},"/explore/use-cases/private-daos-management-45a":{"__comp":"17896441","content":"94b34882"},"/explore/use-cases/trustless-gaming-b5d":{"__comp":"17896441","content":"7b9fe0bb"},"/explore/why-not/blockchain-145":{"__comp":"17896441","content":"c022fa4c"},"/explore/why-not/ipfs-295":{"__comp":"17896441","content":"5af830f1"},"/explore/why-not/zk-e4b":{"__comp":"17896441","content":"96f6c727"},"/getting-started/admin-dashboard-054":{"__comp":"17896441","content":"1db5d8e2"},"/getting-started/example-app-a45":{"__comp":"17896441","content":"6a63bb8b"},"/getting-started/setup-f38":{"__comp":"17896441","content":"61c19dbb"},"/learn/advanced-concepts/encryption-8ed":{"__comp":"17896441","content":"64bee9bd"},"/learn/advanced-concepts/specialized-nodes-10b":{"__comp":"17896441","content":"0b38cd53"},"/learn/architecture-cf7":{"__comp":"17896441","content":"f4e7e388"},"/learn/core-concepts/applications-621":{"__comp":"17896441","content":"9471ce52"},"/learn/core-concepts/contexts-8bb":{"__comp":"17896441","content":"f582a9aa"},"/learn/core-concepts/identity-ee2":{"__comp":"17896441","content":"bf6ec8e5"},"/learn/core-concepts/node/admin-client-api-59c":{"__comp":"17896441","content":"190ec3a6"},"/learn/core-concepts/node/client-node-21e":{"__comp":"17896441","content":"73ad1aec"},"/learn/core-concepts/node/network-815":{"__comp":"17896441","content":"962e3ea7"},"/learn/core-concepts/node/runtime-024":{"__comp":"17896441","content":"5b892390"},"/learn/core-concepts/node/server-c17":{"__comp":"17896441","content":"e6fe25da"},"/learn/core-concepts/node/storage-c14":{"__comp":"17896441","content":"514a65da"},"/learn/terminology-964":{"__comp":"17896441","content":"150624dd"},"/resources/community-and-support-892":{"__comp":"17896441","content":"cc56a0d6"},"/resources/learning-b30":{"__comp":"17896441","content":"e97a01d9"}}')}},e=>{e.O(0,[1869],(()=>{return t=1657,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/assets/js/runtime~main.1d842156.js b/assets/js/runtime~main.1d842156.js deleted file mode 100644 index 2f43b5ff..00000000 --- a/assets/js/runtime~main.1d842156.js +++ /dev/null @@ -1 +0,0 @@ -(()=>{"use strict";var e,a,b,f,t,r={},d={};function c(e){var a=d[e];if(void 0!==a)return a.exports;var b=d[e]={exports:{}};return r[e].call(b.exports,b,b.exports,c),b.exports}c.m=r,e=[],c.O=(a,b,f,t)=>{if(!b){var r=1/0;for(i=0;i<e.length;i++){b=e[i][0],f=e[i][1],t=e[i][2];for(var d=!0,o=0;o<b.length;o++)(!1&t||r>=t)&&Object.keys(c.O).every((e=>c.O[e](b[o])))?b.splice(o--,1):(d=!1,t<r&&(r=t));if(d){e.splice(i--,1);var n=f();void 0!==n&&(a=n)}}return a}t=t||0;for(var i=e.length;i>0&&e[i-1][2]>t;i--)e[i]=e[i-1];e[i]=[b,f,t]},c.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return c.d(a,{a:a}),a},b=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,c.t=function(e,f){if(1&f&&(e=this(e)),8&f)return e;if("object"==typeof e&&e){if(4&f&&e.__esModule)return e;if(16&f&&"function"==typeof e.then)return e}var t=Object.create(null);c.r(t);var r={};a=a||[null,b({}),b([]),b(b)];for(var d=2&f&&e;"object"==typeof d&&!~a.indexOf(d);d=b(d))Object.getOwnPropertyNames(d).forEach((a=>r[a]=()=>e[a]));return r.default=()=>e,c.d(t,r),t},c.d=(e,a)=>{for(var b in a)c.o(a,b)&&!c.o(e,b)&&Object.defineProperty(e,b,{enumerable:!0,get:a[b]})},c.f={},c.e=e=>Promise.all(Object.keys(c.f).reduce(((a,b)=>(c.f[b](e,a),a)),[])),c.u=e=>"assets/js/"+({21:"d94758ba",105:"13477880",317:"22e91f41",449:"e97a01d9",546:"fdb23cd9",772:"bc9a0017",957:"c141421f",1235:"a7456010",1249:"f4e7e388",1259:"a9154f55",1337:"5af830f1",1367:"61c19dbb",1567:"22dd74f7",2039:"bd9c48a9",2074:"64bee9bd",2138:"1a4e3797",2226:"f582a9aa",2329:"150624dd",2408:"702ee7bc",2822:"7b9fe0bb",3021:"cc56a0d6",3182:"514a65da",3208:"9bc1354f",3299:"94b34882",4389:"f1cd7b65",4583:"1df93b7f",5101:"889f3b97",5219:"6a63bb8b",5293:"f773e51d",5742:"aba21aa0",6373:"96f6c727",6391:"42b3b6e0",6673:"0b38cd53",6940:"0018adbe",7074:"c022fa4c",7098:"a7bd4aaa",7420:"73ad1aec",7476:"15a7497e",7607:"bf6ec8e5",7610:"607ff301",7707:"190ec3a6",7838:"01954a18",8048:"3b38d041",8077:"962e3ea7",8086:"b9be9bb6",8401:"17896441",8725:"5b892390",9048:"a94703ab",9229:"9471ce52",9502:"2e1d06d3",9647:"5e95c892",9650:"1db5d8e2",9667:"e6fe25da"}[e]||e)+"."+{21:"4ed85883",105:"c07d1977",317:"468045bf",449:"96d12ab1",546:"c224928d",772:"7132163f",957:"faee654a",1235:"5f9bbb01",1249:"a586a66d",1259:"0a472ab8",1337:"86843f19",1367:"58a3acef",1567:"0f39686e",2039:"c9866f5d",2074:"3fc1710b",2138:"da39caec",2226:"0b86c774",2329:"ad977ac4",2408:"1e8d54c7",2822:"adff09ab",2966:"8ac87274",3021:"505fed7d",3114:"32f7c34d",3182:"8f15bbe5",3208:"aa5f4388",3299:"14a44c46",4389:"f49663b9",4583:"e226d8e9",5062:"66606bee",5101:"c64d3a1f",5219:"c1b96ef5",5293:"b505bda9",5742:"ed09cce9",5910:"0d523cf3",6373:"1ffa8e3d",6391:"099ed172",6673:"a1796f05",6940:"02517d60",7074:"830e251e",7098:"435b6820",7289:"3944db81",7420:"ea7529f6",7476:"edc0d23c",7607:"bb211fa5",7610:"5af792c6",7707:"b2b26736",7838:"76e983ea",8048:"acbfd09c",8077:"0a8d9566",8086:"751f3db2",8401:"74a5fd32",8725:"14d18d78",9048:"1e700a87",9229:"7528a2df",9502:"cd9d3cb5",9647:"f8a47246",9650:"98b620e0",9667:"29298f64"}[e]+".js",c.miniCssF=e=>{},c.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),c.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),f={},t="docs:",c.l=(e,a,b,r)=>{if(f[e])f[e].push(a);else{var d,o;if(void 0!==b)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var u=n[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==t+b){d=u;break}}d||(o=!0,(d=document.createElement("script")).charset="utf-8",d.timeout=120,c.nc&&d.setAttribute("nonce",c.nc),d.setAttribute("data-webpack",t+b),d.src=e),f[e]=[a];var l=(a,b)=>{d.onerror=d.onload=null,clearTimeout(s);var t=f[e];if(delete f[e],d.parentNode&&d.parentNode.removeChild(d),t&&t.forEach((e=>e(b))),a)return a(b)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:d}),12e4);d.onerror=l.bind(null,d.onerror),d.onload=l.bind(null,d.onload),o&&document.head.appendChild(d)}},c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.p="/",c.gca=function(e){return e={13477880:"105",17896441:"8401",d94758ba:"21","22e91f41":"317",e97a01d9:"449",fdb23cd9:"546",bc9a0017:"772",c141421f:"957",a7456010:"1235",f4e7e388:"1249",a9154f55:"1259","5af830f1":"1337","61c19dbb":"1367","22dd74f7":"1567",bd9c48a9:"2039","64bee9bd":"2074","1a4e3797":"2138",f582a9aa:"2226","150624dd":"2329","702ee7bc":"2408","7b9fe0bb":"2822",cc56a0d6:"3021","514a65da":"3182","9bc1354f":"3208","94b34882":"3299",f1cd7b65:"4389","1df93b7f":"4583","889f3b97":"5101","6a63bb8b":"5219",f773e51d:"5293",aba21aa0:"5742","96f6c727":"6373","42b3b6e0":"6391","0b38cd53":"6673","0018adbe":"6940",c022fa4c:"7074",a7bd4aaa:"7098","73ad1aec":"7420","15a7497e":"7476",bf6ec8e5:"7607","607ff301":"7610","190ec3a6":"7707","01954a18":"7838","3b38d041":"8048","962e3ea7":"8077",b9be9bb6:"8086","5b892390":"8725",a94703ab:"9048","9471ce52":"9229","2e1d06d3":"9502","5e95c892":"9647","1db5d8e2":"9650",e6fe25da:"9667"}[e]||e,c.p+c.u(e)},(()=>{var e={5354:0,1869:0};c.f.j=(a,b)=>{var f=c.o(e,a)?e[a]:void 0;if(0!==f)if(f)b.push(f[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var t=new Promise(((b,t)=>f=e[a]=[b,t]));b.push(f[2]=t);var r=c.p+c.u(a),d=new Error;c.l(r,(b=>{if(c.o(e,a)&&(0!==(f=e[a])&&(e[a]=void 0),f)){var t=b&&("load"===b.type?"missing":b.type),r=b&&b.target&&b.target.src;d.message="Loading chunk "+a+" failed.\n("+t+": "+r+")",d.name="ChunkLoadError",d.type=t,d.request=r,f[1](d)}}),"chunk-"+a,a)}},c.O.j=a=>0===e[a];var a=(a,b)=>{var f,t,r=b[0],d=b[1],o=b[2],n=0;if(r.some((a=>0!==e[a]))){for(f in d)c.o(d,f)&&(c.m[f]=d[f]);if(o)var i=o(c)}for(a&&a(b);n<r.length;n++)t=r[n],c.o(e,t)&&e[t]&&e[t][0](),e[t]=0;return c.O(i)},b=self.webpackChunkdocs=self.webpackChunkdocs||[];b.forEach(a.bind(null,0)),b.push=a.bind(null,b.push.bind(b))})()})(); \ No newline at end of file diff --git a/assets/js/runtime~main.8382cdf7.js b/assets/js/runtime~main.8382cdf7.js new file mode 100644 index 00000000..03f39589 --- /dev/null +++ b/assets/js/runtime~main.8382cdf7.js @@ -0,0 +1 @@ +(()=>{"use strict";var e,a,t,d,f,b={},r={};function c(e){var a=r[e];if(void 0!==a)return a.exports;var t=r[e]={exports:{}};return b[e].call(t.exports,t,t.exports,c),t.exports}c.m=b,e=[],c.O=(a,t,d,f)=>{if(!t){var b=1/0;for(i=0;i<e.length;i++){t=e[i][0],d=e[i][1],f=e[i][2];for(var r=!0,o=0;o<t.length;o++)(!1&f||b>=f)&&Object.keys(c.O).every((e=>c.O[e](t[o])))?t.splice(o--,1):(r=!1,f<b&&(b=f));if(r){e.splice(i--,1);var n=d();void 0!==n&&(a=n)}}return a}f=f||0;for(var i=e.length;i>0&&e[i-1][2]>f;i--)e[i]=e[i-1];e[i]=[t,d,f]},c.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return c.d(a,{a:a}),a},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,c.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var f=Object.create(null);c.r(f);var b={};a=a||[null,t({}),t([]),t(t)];for(var r=2&d&&e;"object"==typeof r&&!~a.indexOf(r);r=t(r))Object.getOwnPropertyNames(r).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,c.d(f,b),f},c.d=(e,a)=>{for(var t in a)c.o(a,t)&&!c.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:a[t]})},c.f={},c.e=e=>Promise.all(Object.keys(c.f).reduce(((a,t)=>(c.f[t](e,a),a)),[])),c.u=e=>"assets/js/"+({21:"d94758ba",105:"13477880",317:"22e91f41",449:"e97a01d9",546:"fdb23cd9",772:"bc9a0017",957:"c141421f",1235:"a7456010",1249:"f4e7e388",1259:"a9154f55",1337:"5af830f1",1367:"61c19dbb",1567:"22dd74f7",2039:"bd9c48a9",2074:"64bee9bd",2138:"1a4e3797",2226:"f582a9aa",2329:"150624dd",2408:"702ee7bc",2822:"7b9fe0bb",3021:"cc56a0d6",3182:"514a65da",3208:"9bc1354f",3299:"94b34882",4389:"f1cd7b65",4583:"1df93b7f",5101:"889f3b97",5219:"6a63bb8b",5293:"f773e51d",5742:"aba21aa0",6373:"96f6c727",6391:"42b3b6e0",6673:"0b38cd53",6940:"0018adbe",7074:"c022fa4c",7098:"a7bd4aaa",7420:"73ad1aec",7476:"15a7497e",7607:"bf6ec8e5",7610:"607ff301",7707:"190ec3a6",7838:"01954a18",8048:"3b38d041",8077:"962e3ea7",8086:"b9be9bb6",8401:"17896441",8725:"5b892390",9048:"a94703ab",9229:"9471ce52",9502:"2e1d06d3",9647:"5e95c892",9650:"1db5d8e2",9667:"e6fe25da"}[e]||e)+"."+{21:"9c09c20d",105:"2149d152",317:"b5ddddd4",449:"293f2b1f",546:"1d7eb473",713:"443d55f9",772:"c19bdde1",793:"5b9a4acc",957:"faee654a",1235:"5f9bbb01",1249:"57eba9b7",1259:"0943742d",1337:"b0093865",1367:"04bf7873",1567:"0f39686e",2039:"31a2cba1",2074:"ba7deca5",2138:"d7d54df8",2226:"e2af6522",2329:"8ba1f65a",2408:"0b365b7e",2822:"600d48f2",2995:"275b0081",3021:"765a52f0",3130:"8db77545",3182:"ddac9227",3208:"d706c1f7",3299:"c9a728c9",4389:"e69bb676",4583:"ce3154cc",5101:"993df781",5219:"bc510271",5293:"47b1858c",5664:"25224e7d",5742:"ed09cce9",6373:"58d6b655",6391:"598b130d",6673:"a57cb6f8",6940:"85319337",7074:"0e710a8d",7098:"69b329de",7420:"4422a377",7476:"82ada792",7607:"e37e58e3",7610:"8cea052f",7707:"648b239a",7838:"787a0508",8048:"0656ae80",8077:"034e1d17",8086:"5ce70fb1",8401:"22631d99",8725:"a159f2c6",9048:"0d684b8d",9229:"3baff8bd",9502:"7ef5c9cd",9647:"e1625ad7",9650:"dd23f976",9667:"282eaeb8"}[e]+".js",c.miniCssF=e=>{},c.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),c.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},f="docs:",c.l=(e,a,t,b)=>{if(d[e])d[e].push(a);else{var r,o;if(void 0!==t)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var u=n[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==f+t){r=u;break}}r||(o=!0,(r=document.createElement("script")).charset="utf-8",r.timeout=120,c.nc&&r.setAttribute("nonce",c.nc),r.setAttribute("data-webpack",f+t),r.src=e),d[e]=[a];var l=(a,t)=>{r.onerror=r.onload=null,clearTimeout(s);var f=d[e];if(delete d[e],r.parentNode&&r.parentNode.removeChild(r),f&&f.forEach((e=>e(t))),a)return a(t)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=l.bind(null,r.onerror),r.onload=l.bind(null,r.onload),o&&document.head.appendChild(r)}},c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.p="/",c.gca=function(e){return e={13477880:"105",17896441:"8401",d94758ba:"21","22e91f41":"317",e97a01d9:"449",fdb23cd9:"546",bc9a0017:"772",c141421f:"957",a7456010:"1235",f4e7e388:"1249",a9154f55:"1259","5af830f1":"1337","61c19dbb":"1367","22dd74f7":"1567",bd9c48a9:"2039","64bee9bd":"2074","1a4e3797":"2138",f582a9aa:"2226","150624dd":"2329","702ee7bc":"2408","7b9fe0bb":"2822",cc56a0d6:"3021","514a65da":"3182","9bc1354f":"3208","94b34882":"3299",f1cd7b65:"4389","1df93b7f":"4583","889f3b97":"5101","6a63bb8b":"5219",f773e51d:"5293",aba21aa0:"5742","96f6c727":"6373","42b3b6e0":"6391","0b38cd53":"6673","0018adbe":"6940",c022fa4c:"7074",a7bd4aaa:"7098","73ad1aec":"7420","15a7497e":"7476",bf6ec8e5:"7607","607ff301":"7610","190ec3a6":"7707","01954a18":"7838","3b38d041":"8048","962e3ea7":"8077",b9be9bb6:"8086","5b892390":"8725",a94703ab:"9048","9471ce52":"9229","2e1d06d3":"9502","5e95c892":"9647","1db5d8e2":"9650",e6fe25da:"9667"}[e]||e,c.p+c.u(e)},(()=>{var e={5354:0,1869:0};c.f.j=(a,t)=>{var d=c.o(e,a)?e[a]:void 0;if(0!==d)if(d)t.push(d[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var f=new Promise(((t,f)=>d=e[a]=[t,f]));t.push(d[2]=f);var b=c.p+c.u(a),r=new Error;c.l(b,(t=>{if(c.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var f=t&&("load"===t.type?"missing":t.type),b=t&&t.target&&t.target.src;r.message="Loading chunk "+a+" failed.\n("+f+": "+b+")",r.name="ChunkLoadError",r.type=f,r.request=b,d[1](r)}}),"chunk-"+a,a)}},c.O.j=a=>0===e[a];var a=(a,t)=>{var d,f,b=t[0],r=t[1],o=t[2],n=0;if(b.some((a=>0!==e[a]))){for(d in r)c.o(r,d)&&(c.m[d]=r[d]);if(o)var i=o(c)}for(a&&a(t);n<b.length;n++)f=b[n],c.o(e,f)&&e[f]&&e[f][0](),e[f]=0;return c.O(i)},t=self.webpackChunkdocs=self.webpackChunkdocs||[];t.forEach(a.bind(null,0)),t.push=a.bind(null,t.push.bind(t))})()})(); \ No newline at end of file diff --git a/build/client-sdks/client-ts-sdk/index.html b/build/client-sdks/client-ts-sdk/index.html index 187554cc..1bbd4ee1 100644 --- a/build/client-sdks/client-ts-sdk/index.html +++ b/build/client-sdks/client-ts-sdk/index.html @@ -5,12 +5,12 @@ <meta name="generator" content="Docusaurus v3.5.2"> <title data-rh="true">TypeScript Client SDK | Calimero 2.0 - - - + + + -

TypeScript Client SDK

Getting Started with Calimero SDK for Typescript​

+

TypeScript Client SDK

Getting Started with Calimero SDK for Typescript​

Our TypeScript Client SDK is a powerful tool designed to simplify the process of interacting with decentralized peer-to-peer applications installed on the node. It serves as an efficient conduit for communication between the client and the @@ -27,7 +27,7 @@ essence, our TypeScript SDK is a comprehensive solution that makes building and interacting with decentralized applications a breeze. It’s all about making the development process more enjoyable and productive for developers worldwide.

-

Components​

+

Components​

Our TypeScript Client SDK is composed of two main components: RpcClient and SubscriptionsClient. Each of these components has an interface and a class that implements the interface. The RpcClient interface is implemented by the @@ -46,20 +46,20 @@

ComponentsBy designing our SDK in this way, we ensure that it remains flexible, scalable, and easy to use, regardless of how our server implementations evolve in the future.

-

RpcClient interface​

-
export interface RpcClient {
query<Args, Output>(
params: RpcQueryParams<Args>,
config?: RequestConfig,
): Promise<RpcQueryResponse<Output>>;
mutate<Args, Output>(
params: RpcMutateParams<Args>,
config?: RequestConfig,
): Promise<RpcMutateResponse<Output>>;
}

export interface RequestConfig {
timeout?: number;
}

export interface RpcQueryParams<Args> {
applicationId: ApplicationId;
method: string;
argsJson: Args;
}

export interface RpcQueryResponse<Output> {
output?: Output;
}

export interface RpcMutateParams<Args> {
applicationId: ApplicationId;
method: string;
argsJson: Args;
}

export interface RpcMutateResponse<Output> {
output?: Output;
}
-

SubscriptionsClient​

-
export interface SubscriptionsClient {
connect(connectionId?: string): void;
disconnect(connectionId?: string): void;
subscribe(applicationIds: string[], connectionId?: string): void;
unsubscribe(applicationIds: string[], connectionId?: string): void;
addCallback(
callback: (event: NodeEvent) => void,
connectionId?: string,
): void;
removeCallback(
callback: (event: NodeEvent) => void,
connectionId?: string,
): void;
}

export type NodeEvent = ApplicationEvent;

export interface ApplicationEvent {
application_id: ApplicationId;
type: 'TransactionExecuted' | 'PeerJoined';
data: TransactionExecuted | PeerJoined;
}

export interface TransactionExecuted {
hash: string;
}

export interface PeerJoined {
peerId: string;
}
-

Examples​

-

JsonRpcClient​

+

RpcClient interface​

+
export interface RpcClient {
query<Args, Output>(
params: RpcQueryParams<Args>,
config?: RequestConfig,
): Promise<RpcQueryResponse<Output>>;
mutate<Args, Output>(
params: RpcMutateParams<Args>,
config?: RequestConfig,
): Promise<RpcMutateResponse<Output>>;
}

export interface RequestConfig {
timeout?: number;
}

export interface RpcQueryParams<Args> {
applicationId: ApplicationId;
method: string;
argsJson: Args;
}

export interface RpcQueryResponse<Output> {
output?: Output;
}

export interface RpcMutateParams<Args> {
applicationId: ApplicationId;
method: string;
argsJson: Args;
}

export interface RpcMutateResponse<Output> {
output?: Output;
}
+

SubscriptionsClient​

+
export interface SubscriptionsClient {
connect(connectionId?: string): void;
disconnect(connectionId?: string): void;
subscribe(applicationIds: string[], connectionId?: string): void;
unsubscribe(applicationIds: string[], connectionId?: string): void;
addCallback(
callback: (event: NodeEvent) => void,
connectionId?: string,
): void;
removeCallback(
callback: (event: NodeEvent) => void,
connectionId?: string,
): void;
}

export type NodeEvent = ApplicationEvent;

export interface ApplicationEvent {
application_id: ApplicationId;
type: 'TransactionExecuted' | 'PeerJoined';
data: TransactionExecuted | PeerJoined;
}

export interface TransactionExecuted {
hash: string;
}

export interface PeerJoined {
peerId: string;
}
+

Examples​

+

JsonRpcClient​

Here's an example of how to use it:

Define application endpoint and application id. You can find application id in the Admin Dashboard -> Contexts -> select application id from the context where your app logic is installed

-
NEXT_PUBLIC_API_URL=http://localhost:{NODE_PORT}
NEXT_PUBLIC_APPLICATION_ID="my-application-id"
-
// Import the necessary classes and interfaces from the SDK
import {
RpcClient,
JsonRpcClient,
RpcMutateParams,
RpcMutateResponse,
} from "@calimero-is-near/calimero-p2p-sdk";

// Define the Args and Output interfaces
interface CreatePost {
title: string;
text: string;
}

interface Post {
id: string;
title: string;
text: string;
}

// Create an instance of JsonRpcClient
const rpcClient: RpcClient = new JsonRpcClient(
process.env["NEXT_PUBLIC_API_URL],
"/jsonrpc"
);

// Define the parameters for the mutate
const params: RpcMutateParams<CreatePost> = {
applicationId: process.env["NEXT_PUBLIC_APPLICATION_ID"],
method: "create_post",
argsJson: {
title: "My First Post",
text: "This is my first post using the TypeScript Client SDK",
},
};

// Use the mutate method
const respone: RpcMutateResponse<Post> = await rpcClient.mutate<
CreatePost,
Post

> (params);

console.log(response);

-

WsSubscriptionsClient​

+
NEXT_PUBLIC_API_URL=http://localhost:{NODE_PORT}
NEXT_PUBLIC_APPLICATION_ID="my-application-id"
+
// Import the necessary classes and interfaces from the SDK
import {
RpcClient,
JsonRpcClient,
RpcMutateParams,
RpcMutateResponse,
} from "@calimero-is-near/calimero-p2p-sdk";

// Define the Args and Output interfaces
interface CreatePost {
title: string;
text: string;
}

interface Post {
id: string;
title: string;
text: string;
}

// Create an instance of JsonRpcClient
const rpcClient: RpcClient = new JsonRpcClient(
process.env["NEXT_PUBLIC_API_URL],
"/jsonrpc"
);

// Define the parameters for the mutate
const params: RpcMutateParams<CreatePost> = {
applicationId: process.env["NEXT_PUBLIC_APPLICATION_ID"],
method: "create_post",
argsJson: {
title: "My First Post",
text: "This is my first post using the TypeScript Client SDK",
},
};

// Use the mutate method
const respone: RpcMutateResponse<Post> = await rpcClient.mutate<
CreatePost,
Post

> (params);

console.log(response);

+

WsSubscriptionsClient​

Here's an example of how to use it:

-
// Import the necessary classes and interfaces from the SDK
import {
SubscriptionsClient,
WsSubscriptionsClient,
NodeEvent,
} from "@calimero-is-near/calimero-p2p-sdk";

// Create an instance of WsSubscriptionsClient
const subscriptionsClient: SubscriptionsClient = new WsSubscriptionsClient(
process.env["NEXT_PUBLIC_API_URL],
"/ws"
);

// Create (default) connection to the server
await subscriptionsClient.connect();

// Subscribe to an application events
subscriptionsClient.subscribe([process.env["NEXT_PUBLIC_APPLICATION_ID"]]);

// Add a callback to process messages
subscriptionsClient.addCallback((data: NodeEvent) => {
console.log(data);
});
Was this page helpful?
Need some help? Check Support page
+
// Import the necessary classes and interfaces from the SDK
import {
SubscriptionsClient,
WsSubscriptionsClient,
NodeEvent,
} from "@calimero-is-near/calimero-p2p-sdk";

// Create an instance of WsSubscriptionsClient
const subscriptionsClient: SubscriptionsClient = new WsSubscriptionsClient(
process.env["NEXT_PUBLIC_API_URL],
"/ws"
);

// Create (default) connection to the server
await subscriptionsClient.connect();

// Subscribe to an application events
subscriptionsClient.subscribe([process.env["NEXT_PUBLIC_APPLICATION_ID"]]);

// Add a callback to process messages
subscriptionsClient.addCallback((data: NodeEvent) => {
console.log(data);
});
Was this page helpful?
Need some help? Check Support page
\ No newline at end of file diff --git a/build/dev-mode/index.html b/build/dev-mode/index.html index 0049513f..6b16807d 100644 --- a/build/dev-mode/index.html +++ b/build/dev-mode/index.html @@ -5,18 +5,18 @@ Dev Mode | Calimero 2.0 - - - + + + -

Using Dev Mode in meroctl CLI

-

Overview​

+

Using Dev Mode in meroctl CLI

+

Overview​

The meroctl CLI provides a powerful feature called "dev mode" that allows developers to test their applications locally before publishing them to the network. This mode is particularly useful during the development and testing phases of your application.

-

Why Use Dev Mode?​

+

Why Use Dev Mode?​

Dev mode offers several advantages:

  1. Local Testing: Test your application on your local machine without @@ -29,13 +29,13 @@

    Why Use Dev automatically reflect in the context, eliminating the need to "upload" the app again after every change.

-

Prerequisites​

+

Prerequisites​

Before using dev mode, ensure you have a node and a coordinator node running. This should be done in a separate terminal window. For more information, see the Setup guide.

-

How to Use Dev Mode​

+

How to Use Dev Mode​

To list all supported commands, run the following command:

-
Terminal
cargo run -p meroctl -- help
+
Terminal
cargo run -p meroctl -- help

Supported commands:

  • init Initialize node configuration
  • @@ -47,8 +47,8 @@

    How to U

Here's the basic syntax:

All commands share the same prefix:

-
Terminal
cargo run -p meroctl -- --home <path_to_home> --node-name <node_name> <command>
-

Parameters:​

+
Terminal
cargo run -p meroctl -- --home <path_to_home> --node-name <node_name> <command>
+

Parameters:​

  • --home: Specifies the path to the home directory. ( In our example we are @@ -62,38 +62,38 @@

    Parameters:

Create dev context using installed app

-
Terminal
cargo run -p meroctl -- --home <path_to_home> --node-name <node_name> context create --watch <path>
+
Terminal
cargo run -p meroctl -- --home <path_to_home> --node-name <node_name> context create --watch <path>

Output

-
Terminal
$ cargo run -p meroctl -- --home data --node-name node1 context create  --watch ./path/to/binary.wasm
Application `<appId>` installed!
Context `<contextId>` created!
Context{contextId} -> Application{appId}
(i) Watching for changes to "./path/to/binary.wasm"
+
Terminal
$ cargo run -p meroctl -- --home data --node-name node1 context create  --watch ./path/to/binary.wasm
Application `<appId>` installed!
Context `<contextId>` created!
Context{contextId} -> Application{appId}
(i) Watching for changes to "./path/to/binary.wasm"

Invite coordinator or other local nodes to participate in the context

-
Terminal
cargo run -p  meroctl -- --node-name coordinator --home data  context join --context-id contextId
+
Terminal
cargo run -p  meroctl -- --node-name coordinator --home data  context join --context-id contextId

Output

-
Terminal
Context <contextId> sucesfully joined
+
Terminal
Context <contextId> sucesfully joined

Create context command will:

  1. Install your application locally.
  2. Create a new context.
  3. Link the context to your local application.
-

Automatic Updates​

+

Automatic Updates​

One of the key benefits of dev mode is its ability to automatically reflect changes in your application. When you modify and recompile your WASM binary, these changes are immediately available in the context without requiring you to "upload" or reinstall the application. This feature provides a seamless development experience, similar to "hot reload" functionality in other development environments.

-

Other useful commands​

+

Other useful commands​

  1. List existing contexts
-
Terminal
$ cargo run -p meroctl -- --home data --node-name node1 context ls
+
Terminal
$ cargo run -p meroctl -- --home data --node-name node1 context ls
  1. Create a context for a published application:
-
Terminal
$ cargo run -p meroctl -- --home data --node-name node1 context create --application-id <appId>
+
Terminal
$ cargo run -p meroctl -- --home data --node-name node1 context create --application-id <appId>

Output

-
Terminal
Context `contextId` created!
Context{contextId} -> Application{appId}
-

From development to Publication​

+
Terminal
Context `contextId` created!
Context{contextId} -> Application{appId}
+

From development to Publication​

When you're ready to move from local development to publishing your application:

  1. @@ -109,8 +109,8 @@

    Terminal
    cargo run -p meroctl -- --home <path_to_home> --node-name <node_name> app install –-path <path>

+
Terminal
cargo run -p meroctl -- --home <path_to_home> --node-name <node_name> app install –-path <path>

Output

-
Terminal
Application installed successfully. Application ID: <appId>
Was this page helpful?
Need some help? Check Support page
+
Terminal
Application installed successfully. Application ID: <appId>
Was this page helpful?
Need some help? Check Support page
\ No newline at end of file diff --git a/build/protocol-sdks/protocol-rs-sdk/index.html b/build/protocol-sdks/protocol-rs-sdk/index.html index 4d8fc19c..a405fa99 100644 --- a/build/protocol-sdks/protocol-rs-sdk/index.html +++ b/build/protocol-sdks/protocol-rs-sdk/index.html @@ -5,57 +5,57 @@ Rust Protocol SDK | Calimero 2.0 - - - + + + -

Rust Protocol SDK

Getting Started with Calimero SDK for Rust​

+

Rust Protocol SDK

Getting Started with Calimero SDK for Rust​

The Calimero SDK for Rust empowers developers to build applications that compile to WebAssembly (Wasm) and run securely within the Calimero virtual machine (VM). This guide will walk you through setting up a Rust project using the Calimero SDK, writing an application, and preparing it for deployment.

-

Prerequisites​

+

Prerequisites​

Before you begin, ensure you have Rust installed on your system. If not, follow the official Rust installation guide for your platform: Rust Installation Guide.

You should ensure you have the wasm32-unknown-unknown target installed. Run the following command in your terminal to install the target:

-
Terminal
rustup target add wasm32-unknown-unknown
-

Setting Up Your Project​

+
Terminal
rustup target add wasm32-unknown-unknown
+

Setting Up Your Project​

To create a new project, initialize a Rust library project using Cargo. Run the following command in your terminal:

-
Terminal
cargo new --lib kv-store
+
Terminal
cargo new --lib kv-store

You should have a tree that looks like this:

-
Terminal
$ tree kv-store
kv-store
├── Cargo.toml
└── src
└── lib.rs

2 directories, 2 files
+
Terminal
$ tree kv-store
kv-store
├── Cargo.toml
└── src
└── lib.rs

2 directories, 2 files

At this point, we can cd into the kv-store directory:

-
Terminal
cd kv-store
+
Terminal
cd kv-store

Next, you need to specify the crate-type as cdylib in your Cargo.toml file to generate a dynamic library that can be compiled to Wasm:

-
File: Cargo.toml
[lib]
crate-type = ["cdylib"]
+
File: Cargo.toml
[lib]
crate-type = ["cdylib"]

You can now configure your project to use the Calimero SDK by adding it as a dependency in your Cargo.toml file:

-
File: Cargo.toml
[dependencies]
calimero-sdk = { git = "https://github.com/calimero-network/core" }
+
File: Cargo.toml
[dependencies]
calimero-sdk = { git = "https://github.com/calimero-network/core" }

Then, we need to specify a custom build profile for the most compact Wasm output:

-
File: Cargo.toml
[profile.app-release]
inherits = "release"
codegen-units = 1
opt-level = "z"
lto = true
debug = false
panic = "abort"
overflow-checks = true
-
Your Cargo.toml file should now look like this
File: Cargo.toml
[package]
name = "kv-store"
version = "0.1.0"
edition = "2021"

[lib]
crate-type = ["cdylib"]

[dependencies]
calimero-sdk = { git = "https://github.com/calimero-network/core" }

[profile.app-release]
inherits = "release"
codegen-units = 1
opt-level = "z"
lto = true
debug = false
panic = "abort"
overflow-checks = true
+
File: Cargo.toml
[profile.app-release]
inherits = "release"
codegen-units = 1
opt-level = "z"
lto = true
debug = false
panic = "abort"
overflow-checks = true
+
Your Cargo.toml file should now look like this
File: Cargo.toml
[package]
name = "kv-store"
version = "0.1.0"
edition = "2021"

[lib]
crate-type = ["cdylib"]

[dependencies]
calimero-sdk = { git = "https://github.com/calimero-network/core" }

[profile.app-release]
inherits = "release"
codegen-units = 1
opt-level = "z"
lto = true
debug = false
panic = "abort"
overflow-checks = true

And finally, create a build.sh script to compile your application into Wasm format, for example:

-
File: build.sh
#!/bin/bash
set -e

cd "$(dirname $0)"

TARGET="${CARGO_TARGET_DIR:-../../target}"

rustup target add wasm32-unknown-unknown

cargo build --target wasm32-unknown-unknown --profile app-release

mkdir -p res

cp $TARGET/wasm32-unknown-unknown/app-release/kv_store.wasm ./res/
+
File: build.sh
#!/bin/bash
set -e

cd "$(dirname $0)"

TARGET="${CARGO_TARGET_DIR:-../../target}"

rustup target add wasm32-unknown-unknown

cargo build --target wasm32-unknown-unknown --profile app-release

mkdir -p res

cp $TARGET/wasm32-unknown-unknown/app-release/kv_store.wasm ./res/

You can optionally choose to install and use wasm-opt, for an additional optimization step in the build script. This step is not required but can help reduce the size of the generated Wasm file:

-
File: build.sh
if command -v wasm-opt > /dev/null; then
wasm-opt -Oz ./res/kv_store.wasm -o ./res/kv_store.wasm
fi
+
File: build.sh
if command -v wasm-opt > /dev/null; then
wasm-opt -Oz ./res/kv_store.wasm -o ./res/kv_store.wasm
fi

Don't forget to make the build.sh script executable:

-
Terminal
chmod +x build.sh
+
Terminal
chmod +x build.sh

At this point, your project structure should look like this:

-
Terminal
$ tree
.
├── Cargo.toml
├── build.sh
└── src
└── lib.rs

2 directories, 3 files
-

Writing Your Application​

+
Terminal
$ tree
.
├── Cargo.toml
├── build.sh
└── src
└── lib.rs

2 directories, 3 files
+

Writing Your Application​

Now, let's create a simple key-value store application using the Calimero SDK. Start by defining your application logic in lib.rs:

-
File: src/lib.rs
use calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};
use calimero_sdk::app;

#[app::state]
#[derive(Default, BorshSerialize, BorshDeserialize)]
#[borsh(crate = "calimero_sdk::borsh")]
struct KvStore {}

#[app::logic]
impl KvStore {}
+
File: src/lib.rs
use calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};
use calimero_sdk::app;

#[app::state]
#[derive(Default, BorshSerialize, BorshDeserialize)]
#[borsh(crate = "calimero_sdk::borsh")]
struct KvStore {}

#[app::logic]
impl KvStore {}

The KvStore struct represents the state of your application, which will be borsh-encoded in the app-scoped state partition on the node's storage. The #[app::state] attribute macro marks the struct as the application state, @@ -64,23 +64,23 @@

Wri application logic, allowing you to define the methods that interact with the application state.

Consider a method like get that retrieves a value from the key-value store:

-
pub fn get(&self, key: &str) -> Option<&str> {
// Snip...
}
+
pub fn get(&self, key: &str) -> Option<&str> {
// Snip...
}

The inputs must be deserializable from the transaction data, and the output must be serializable to the response data. The Option type is used to represent the possibility of the key not being present in the store.

And now, here's a complete example of a key-value store application:

-
File: src/lib.rs
use std::collections::HashMap;

use calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};
use calimero_sdk::{app, env};

#[app::state]
#[derive(Default, BorshSerialize, BorshDeserialize)]
struct KvStore {
entries: HashMap<String, String>,
}

#[app::logic]
impl KvStore {
pub fn set(&mut self, key: String, value: String) {
env::log(&format!("Setting key: {:?} to value: {:?}", key, value));

self.entries.insert(key, value);
}

pub fn entries(&self) -> &HashMap<String, String> {
env::log("Getting all entries");

&self.entries
}

pub fn get(&self, key: &str) -> Option<&str> {
env::log(&format!("Getting key: {:?}", key));

self.entries.get(key).map(|v| v.as_str())
}

pub fn remove(&mut self, key: &str) -> Option<String> {
env::log(&format!("Removing key: {:?}", key));

self.entries.remove(key)
}
}
-

Building Your Application​

+
File: src/lib.rs
use std::collections::HashMap;

use calimero_sdk::borsh::{BorshDeserialize, BorshSerialize};
use calimero_sdk::{app, env};

#[app::state]
#[derive(Default, BorshSerialize, BorshDeserialize)]
struct KvStore {
entries: HashMap<String, String>,
}

#[app::logic]
impl KvStore {
pub fn set(&mut self, key: String, value: String) {
env::log(&format!("Setting key: {:?} to value: {:?}", key, value));

self.entries.insert(key, value);
}

pub fn entries(&self) -> &HashMap<String, String> {
env::log("Getting all entries");

&self.entries
}

pub fn get(&self, key: &str) -> Option<&str> {
env::log(&format!("Getting key: {:?}", key));

self.entries.get(key).map(|v| v.as_str())
}

pub fn remove(&mut self, key: &str) -> Option<String> {
env::log(&format!("Removing key: {:?}", key));

self.entries.remove(key)
}
}
+

Building Your Application​

Once your application logic is defined, run the ./build.sh script to compile your application into Wasm format. This script will generate kv_store.wasm in the res folder of your application.

-
Terminal
$ ./build.sh
info: component 'rust-std' for target 'wasm32-unknown-unknown' is up to date
# Snip...
Compiling calimero-sdk v0.1.0
Compiling kv-store v0.1.0 (/apps/kv-store)
Finished `app-release` profile [optimized] target(s) in 1.20s

$ tree
.
├── Cargo.toml
├── build.sh
├── res
│   └── kv_store.wasm
└── src
└── lib.rs

3 directories, 4 files
-

Deploying Your Application​

+
Terminal
$ ./build.sh
info: component 'rust-std' for target 'wasm32-unknown-unknown' is up to date
# Snip...
Compiling calimero-sdk v0.1.0
Compiling kv-store v0.1.0 (/apps/kv-store)
Finished `app-release` profile [optimized] target(s) in 1.20s

$ tree
.
├── Cargo.toml
├── build.sh
├── res
│   └── kv_store.wasm
└── src
└── lib.rs

3 directories, 4 files
+

Deploying Your Application​

After successfully building your application, you can upload the compiled kv_store.wasm to the registry for use by a live Calimero node.

-

Writing Efficient Code with Calimero SDK​

+

Writing Efficient Code with Calimero SDK​

In the following code snippet:

-
File: src/lib.rs
pub fn get(&self, key: &str) -> Option<&str> {
// Snip...
}
+
File: src/lib.rs
pub fn get(&self, key: &str) -> Option<&str> {
// Snip...
}

you'll notice that we prioritize using references instead of owned values. This approach optimizes performance and memory usage by minimizing unnecessary data copying.

@@ -92,7 +92,7 @@

Handling Errors with Calimero SDK​

+

Handling Errors with Calimero SDK​

When designing methods that may potentially fail, it's recommended to return a Result type with an error variant representing the possible failure cases. This enables you to handle errors more effectively and communicate error @@ -101,13 +101,13 @@

File: src/lib.rs
use calimero_sdk::serde::Serialize;

#[derive(Debug, Serialize)]
pub enum Error<'a> {
NotFound(&'a str),
// Add more error variants as needed
}

+
File: src/lib.rs
use calimero_sdk::serde::Serialize;

#[derive(Debug, Serialize)]
pub enum Error<'a> {
NotFound(&'a str),
// Add more error variants as needed
}

In the above definition, Error represents the possible error variants that may occur during the execution of your method. Each variant can carry additional data to provide context about the error condition.

Next, let's modify the get method to return a Result with Error as the error type:

-
File: src/lib.rs
pub fn get<'a>(&self, key: &'a str) -> Result<&'a str, Error<'a>> {
match self.entries.get(key) {
Some(value) => Ok(value),
None => Err(Error::NotFound(key)),
}
}
+
File: src/lib.rs
pub fn get<'a>(&self, key: &'a str) -> Result<&'a str, Error<'a>> {
match self.entries.get(key) {
Some(value) => Ok(value),
None => Err(Error::NotFound(key)),
}
}

In the get method, we return Ok(value) if the key exists in the key-value store, and Err(Error::NotFound(key)) if the key is not found. This allows callers of the method to handle the possibility of the key not being present in @@ -118,7 +118,7 @@

Emitting Events with Calimero SDK​

+

Emitting Events with Calimero SDK​

To facilitate real-time monitoring of state transitions within your Calimero application, you can emit events using the app::emit! macro provided by the Calimero SDK. Event emission is particularly useful for handling live state @@ -130,32 +130,32 @@

File: src/lib.rs
use calimero_sdk::app;

#[app::event]
pub enum Event<'a> {
Inserted { key: &'a str, value: &'a str },
Updated { key: &'a str, value: &'a str },
Removed { key: &'a str },
}

+
File: src/lib.rs
use calimero_sdk::app;

#[app::event]
pub enum Event<'a> {
Inserted { key: &'a str, value: &'a str },
Updated { key: &'a str, value: &'a str },
Removed { key: &'a str },
}

Each event variant can carry additional data to provide context about the event.

Now, you need to associate the event with the application logic by annotating the application state.

-
File: src/lib.rs
#[app::state(emits = for<'a> Event<'a>)]
#[derive(Default, BorshSerialize, BorshDeserialize)]
struct KvStore {
// Snip...
}
+
File: src/lib.rs
#[app::state(emits = for<'a> Event<'a>)]
#[derive(Default, BorshSerialize, BorshDeserialize)]
struct KvStore {
// Snip...
}

And finally, within your application logic methods, emit events using the app::emit! macro:

-
File: src/lib.rs
use std::collections::hash_map::Entry;

pub fn set(&mut self, key: String, value: String) {
match self.items.entry(key) {
Entry::Occupied(mut entry) => {
app::emit!(Event::Updated {
key: entry.key(),
value: &value,
});
entry.insert(value);
}
Entry::Vacant(entry) => {
app::emit!(Event::Inserted {
key: entry.key(),
value: &value,
});
entry.insert(value);
}
}
}

pub fn remove(&mut self, key: &str) -> Result<String, Error> {
app::emit!(Event::Removed { key });

self.entries.remove(key).ok_or_else(|| Error::NotFound(key))
}
+
File: src/lib.rs
use std::collections::hash_map::Entry;

pub fn set(&mut self, key: String, value: String) {
match self.items.entry(key) {
Entry::Occupied(mut entry) => {
app::emit!(Event::Updated {
key: entry.key(),
value: &value,
});
entry.insert(value);
}
Entry::Vacant(entry) => {
app::emit!(Event::Inserted {
key: entry.key(),
value: &value,
});
entry.insert(value);
}
}
}

pub fn remove(&mut self, key: &str) -> Result<String, Error> {
app::emit!(Event::Removed { key });

self.entries.remove(key).ok_or_else(|| Error::NotFound(key))
}

In each method, we emit the corresponding event with relevant data. This allows external observers to react to these events and take appropriate actions.

By emitting events, you can ensure connected clients receive real-time updates about state transitions within your Calimero application, enabling them to respond to changes as they occur.

-

Ensuring Atomicity and Event Reliability in Calimero Applications​

+

Ensuring Atomicity and Event Reliability in Calimero Applications​

In Calimero applications, ensuring atomicity of state changes and reliability of event emission is crucial for maintaining data consistency and facilitating reliable communication between actors. Here's how atomicity and event reliability are enforced:

-

Atomic State Changes​

+

Atomic State Changes​

When a method call fails, whether due to panics or returning an Err, all state changes made up to that point are discarded. This ensures that if an operation cannot be completed successfully, the application's state remains consistent and unaffected by partial updates. By enforcing atomicity, Calimero promotes data integrity and prevents inconsistencies that may arise from incomplete transactions.

-

Reliable Event Emission​

+

Reliable Event Emission​

Similarly, event emission in Calimero applications is tied to the successful execution of transactions. Events are only relayed when a transaction has been successfully executed, ensuring that external observers receive updates about @@ -170,17 +170,17 @@

Reli applications maintain data integrity and enable robust interaction between different components, facilitating the development of secure and dependable decentralized systems.

-

Local-First Efficiency: No Network Overhead for Read-Only Calls​

+

Local-First Efficiency: No Network Overhead for Read-Only Calls​

In Calimero, adherence to the local-first principle eliminates the need for network communication in read-only calls. Since read-only operations don't modify the state, there's no associated network overhead. This local-first approach streamlines data access, promoting efficient and responsive application performance without unnecessary network activity.

-

Conclusion​

+

Conclusion​

You've now learned how to set up a Rust project using the Calimero SDK, write a simple application, build it into Wasm, and prepare it for deployment. Experiment with different features and functionalities to create powerful and secure applications with Calimero.

-

Happy coding! 🚀

Was this page helpful?
Need some help? Check Support page
+

Happy coding! 🚀

Was this page helpful?
Need some help? Check Support page
\ No newline at end of file diff --git a/build/protocol-sdks/protocol-sdk/index.html b/build/protocol-sdks/protocol-sdk/index.html index 5b53981c..a5f666a6 100644 --- a/build/protocol-sdks/protocol-sdk/index.html +++ b/build/protocol-sdks/protocol-sdk/index.html @@ -5,19 +5,19 @@ Protocol SDK | Calimero 2.0 - - - + + + -

Protocol SDK

The Protocol SDK within the Calimero Network serves as a foundational tool for +

Protocol SDK

The Protocol SDK within the Calimero Network serves as a foundational tool for developers, enabling them to design, develop, and deploy the specific protocols that govern the operation of their decentralized applications (DApps). This SDK is particularly crucial in a network like Calimero, where privacy, security, and decentralized communication are paramount. Here's an overview of the Protocol SDK, highlighting its features, functionalities, and its role in the development lifecycle of DApps:

-

Features and Functionalities​

+

Features and Functionalities​

  • Protocol Definition: Allows developers to define the rules and behaviors of their application networks, including communication protocols, data @@ -36,7 +36,7 @@

-

Role in DApp Development​

+

Role in DApp Development​

  • Protocol Development: At the core of any DApp on the Calimero Network is a protocol that dictates how the application functions, how nodes within the @@ -51,7 +51,7 @@

    Rol This is crucial for maintaining compatibility and ensuring the longevity and scalability of DApps.

-

Integration with Other Calimero Components​

+

Integration with Other Calimero Components​

+Calimero ecosystem.

Was this page helpful?
Need some help? Check Support page
\ No newline at end of file diff --git a/build/publish-app/index.html b/build/publish-app/index.html index 889aaaf6..a4cee13c 100644 --- a/build/publish-app/index.html +++ b/build/publish-app/index.html @@ -5,26 +5,26 @@ Publish App | Calimero 2.0 - - - + + + -

Publish App

After you have built your application, you can publish it to the network. This +

Publish App

After you have built your application, you can publish it to the network. This will make it available for users to interact with.

-

Publishing application​

+

Publishing application​

Navigate to Admin Dashboard and select Applications tab.

-

Publish application

+

Publish application

Enter the required data and publish the application. After publishing, your application will be available for users to interact with in new contexts.

-

Application preview​

+

Application preview​

Good practice allows users to try an app before they decide to use it. You can deploy an app to any host provider.

We have used GitHub Pages to preview our example app. You can do the same by following the steps below.

-

Example app preview​

+

Example app preview​

First you need to enable GitHub Pages by following Creating a GitHub Pages

Our example app is written in next.js and code is available in @@ -33,6 +33,6 @@

Example next.config.mjs should contain output: "export" field

GitHub Actions is a platform used to automate the deployment process. You can find example in -github workflow

Was this page helpful?
Need some help? Check Support page
+github workflow

Was this page helpful?
Need some help? Check Support page
\ No newline at end of file diff --git a/build/quickstart/index.html b/build/quickstart/index.html index 4d283d4a..230d7ae8 100644 --- a/build/quickstart/index.html +++ b/build/quickstart/index.html @@ -5,12 +5,12 @@ Quickstart | Calimero 2.0 - - - + + + -

Quickstart

Welcome to the exciting world of application development in the decentralized +

Quickstart

Welcome to the exciting world of application development in the decentralized space! As a developer, you have the opportunity to build cutting-edge applications using our comprehensive suite of tools. Start by shaping the core application logic with our Protocol SDK and then bring your application to life @@ -22,7 +22,7 @@

  • building the application logic with the Protocol SDK
  • building the application client interface with the Client SDK
  • -

    Protocol SDK​

    +

    Protocol SDK​

    The Protocol SDK within the Calimero Network equips developers with tools for creating, testing, and deploying protocols essential for decentralized applications (DApps). It features capabilities such as code generation, security @@ -32,7 +32,7 @@

    Protocol SDK

    Currently we have SDK only for rust but in the future we will have SDKs for other languages as well.

    -

    Client SDKs​

    +

    Client SDKs​

    The Client SDK includes straightforward tools to help you build your application. For logging in, we provide functions that allow users to authenticate using their wallet credentials, which must be set up as root keys @@ -43,12 +43,12 @@

    Client SDKs

    Currently we have SDK only for typescript but in the future we will have SDKs for other languages as well.

    -

    Publish app​

    +

    Publish app​

    After you have created your application logic with Rust and your application UI with TypeScript, you can publish your app. Follow instructions in the Publish App guide to learn how to publish your app and how users can download and run it.

    -

    Building app from template​

    +

    Building app from template​

    We have prepared template repository for you to get started quickly. You can find the template repository here. Repository @@ -57,6 +57,6 @@

    B written in TypeScript.

    NOTE: Logic is still under development and may not be yet published.

    -

    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/contribute/bounty-program/index.html b/contribute/bounty-program/index.html index 14db8dda..fedea95e 100644 --- a/contribute/bounty-program/index.html +++ b/contribute/bounty-program/index.html @@ -5,22 +5,22 @@ Bounty Program | Calimero 2.0 - - - + + + -

    Bounty Program

    +

    Bounty Program

    We're excited to announce that Calimero will soon be launching a bounty program! This program is designed to reward contributors who help us tackle various issues and enhance our project.

    -

    What is a Bounty Program?​

    +

    What is a Bounty Program?​

    A bounty program is an initiative where contributors can earn rewards for completing specific tasks or resolving issues. These tasks can range from fixing bugs to adding new features, improving documentation, or optimizing performance. The rewards can vary and may include monetary compensation, swag, exclusive access to new features, or public recognition.

    -

    How it Works​

    +

    How it Works​

    While we are still in the process of finalizing the details of our bounty program, here’s an overview of how it will function:

      @@ -35,16 +35,16 @@

      How it Works

    -

    Exceptional Contributions​

    +

    Exceptional Contributions​

    While not all issues may be marked with a bounty label, we recognize that exceptional solutions deserve recognition. If you provide a particularly outstanding solution to an issue not marked as a bounty, we may still decide to reward your contribution.

    -

    Stay Tuned​

    +

    Stay Tuned​

    We are currently refining the details of our bounty program, including the reward system. Follow us on social media and keep an eye on our announcements to be the first to know when the bounty program goes live.

    Thank you for your patience and continued support. We look forward to -collaborating with you and rewarding your valuable contributions!

    Was this page helpful?
    Need some help? Check Support page
    +collaborating with you and rewarding your valuable contributions!

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/contribute/github/index.html b/contribute/github/index.html index 11951fa6..d618553a 100644 --- a/contribute/github/index.html +++ b/contribute/github/index.html @@ -5,20 +5,20 @@ GitHub | Calimero 2.0 - - - + + + -

    GitHub

    All work on Calimero happens directly on GitHub. Both core team members and +

    GitHub

    All work on Calimero happens directly on GitHub. Both core team members and external contributors send pull requests which go through the same review process.

    -

    How to Contribute​

    +

    How to Contribute​

    We appreciate your interest in contributing to our project! To get started with contributing, please follow the instructions outlined in our CONTRIBUTING file.

    -

    Additional Ways to Contribute​

    +

    Additional Ways to Contribute​

    • Show Your Support: If you find this project helpful, please star it on GitHub. Your stars help the project grow and reach more developers like you.
    • @@ -30,6 +30,6 @@

      Was this page helpful?
      Need some help? Check Support page

    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/contribute/hackathons/index.html b/contribute/hackathons/index.html index 9c762207..35a95a9b 100644 --- a/contribute/hackathons/index.html +++ b/contribute/hackathons/index.html @@ -5,17 +5,17 @@ Hackathons | Calimero 2.0 - - - + + + -

    Hackathons

    +

    Hackathons

    At Calimero, we love innovation and collaboration, which is why we plan to regularly organize hackathons that include our product. We have exciting events planned for the future. Stay tuned by following us on our social media channels to get the latest updates.

    -

    What is a Hackathon?​

    +

    What is a Hackathon?​

    A hackathon is an event where developers, designers, and other tech enthusiasts come together to create innovative solutions in a short amount of time. Participants work in teams to build projects, often centered around a specific @@ -30,7 +30,7 @@

    What is
  • Network: Meet like-minded individuals, industry experts, and potential employers or collaborators.
  • -

    How to Get Involved​

    +

    How to Get Involved​

    When we announce a new hackathon, here’s how you can participate:

    1. Register for the Event: Sign up through the event link provided in our @@ -41,11 +41,11 @@

      How to G
    2. Submit Your Work: Present your project at the end of the hackathon for a chance to win prizes and gain recognition.
    -

    Stay Updated​

    +

    Stay Updated​

    Follow us on social media to be the first to know about our upcoming hackathons and other events. We’ll share all the details, including how to register and participate.

    Thank you for your interest in contributing to our project through hackathons. -We look forward to seeing your innovative ideas and solutions!

    Was this page helpful?
    Need some help? Check Support page
    +We look forward to seeing your innovative ideas and solutions!

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/eli5withtrademark.png b/eli5withtrademark.png new file mode 100644 index 00000000..9647f30c Binary files /dev/null and b/eli5withtrademark.png differ diff --git a/explore/awesome-projects/only-peers/index.html b/explore/awesome-projects/only-peers/index.html index 67f80b9c..7ddc9c9e 100644 --- a/explore/awesome-projects/only-peers/index.html +++ b/explore/awesome-projects/only-peers/index.html @@ -5,18 +5,18 @@ Only Peers | Calimero 2.0 - - - + + + -

    Only Peers

    Only Peers is a decentralized social networking app that empowers you to share +

    Only Peers

    Only Peers is a decentralized social networking app that empowers you to share your thoughts and engage with your community without compromising your privacy. It allows you to write posts, leave comments, and interact with friends. However, unlike traditional social networks, Only Peers ensures your data remains under your control, protected from central authorities and prying eyes. Experience the freedom of a decentralized platform where your voice cannot be censored and your privacy is prioritized. Explore the source code on -GitHub repository.

    Was this page helpful?
    Need some help? Check Support page
    +GitHub repository.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/awesome-projects/rock-paper-scissors/index.html b/explore/awesome-projects/rock-paper-scissors/index.html index 3deb2ec3..25532b60 100644 --- a/explore/awesome-projects/rock-paper-scissors/index.html +++ b/explore/awesome-projects/rock-paper-scissors/index.html @@ -5,12 +5,12 @@ Rock Paper Scissors | Calimero 2.0 - - - + + + -

    Rock Paper Scissors

    A popular game we all know and love, but this time played online and enforcing +

    Rock Paper Scissors

    A popular game we all know and love, but this time played online and enforcing complete security using the commit - reveal scheme. After you pick your choice of either rock, paper or scissors, you encrypt your choice with a password. This ensures the other player can’t see your choice. After your opponent has also @@ -19,6 +19,6 @@ with the special password. This prevents any bad actors from changing their minds in the middle of the game.Have fun with a classic game that is completely fair and private! Explore the source code on -GitHub repository

    Was this page helpful?
    Need some help? Check Support page
    +GitHub repository

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/intro/index.html b/explore/intro/index.html index 8bee852e..8adea180 100644 --- a/explore/intro/index.html +++ b/explore/intro/index.html @@ -5,47 +5,47 @@ Introduction | Calimero 2.0 - - - + + + -

    Introduction

    Welcome to Our Project Documentation​

    +

    Introduction

    Welcome to Our Project Documentation​

    Welcome to our comprehensive documentation. Here, you'll find all the resources and guidance needed to understand and engage with our technology. Whether you are new to privacy technology or looking to deepen your existing knowledge, this documentation is structured to assist you every step of the way.

    Our documentation is divided into several key sections, each designed to provide you with detailed insights and practical tools:

    -

    Explore​

    +

    Explore​

    Explore is your starting point for smoothly moving between our documentation sections. Here, you'll get a quick overview of what each part covers. Dive into our Manifesto to understand our key beliefs. Then, jump into the Developers Quickstart for simple steps to get hands-on with our product if you prefer to dive into example first.

    -

    Learn​

    +

    Learn​

    This section is your gateway to understanding our technology and foundational privacy principles. It provides a structured approach to learning, from system architecture and essential terminology to in-depth exploration of both basic and complex privacy concepts. It also addresses the limitations of our technology, ensuring you have a comprehensive understanding.

    -

    Build​

    +

    Build​

    The "Build" section equips you with the necessary tools and documentation to start creating applications using our technology. It features a quickstart guide for immediate setup, detailed descriptions of our SDKs for Rust and TypeScript, and insights into our protocol, catering to developers at all skill levels.

    -

    Contribute​

    +

    Contribute​

    In the "Contribute" section, we invite you to actively participate in the development and improvement of our project. It provides detailed instructions on how to use GitHub for contributions, including environment setup, submission of changes, and community guidelines. Information on hackathons and available bounties is also included to engage with our community further.

    -

    Resources​

    +

    Resources​

    Our "Resources" section serves as a comprehensive directory of additional materials, including detailed documentation, community forums, and external readings. It is designed to support your ongoing learning and application of our technology.

    -

    Next steps​

    -

    Ready to embark on this journey? Welcome to Calimero Network!

    Was this page helpful?
    Need some help? Check Support page
    +

    Next steps​

    +

    Ready to embark on this journey? Welcome to Calimero Network!

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/manifesto/index.html b/explore/manifesto/index.html index 37898308..8e5b70e3 100644 --- a/explore/manifesto/index.html +++ b/explore/manifesto/index.html @@ -5,12 +5,12 @@ The Data Sovereignty Manifesto | Calimero 2.0 - - - + + + -

    The Data Sovereignty Manifesto

    Vision & Mission​

    +

    The Data Sovereignty Manifesto

    Vision & Mission​

    We envision a digital world where users decide how and when their data is stored, processed, and accessed. In such a future, individuals will be compensated with a share of the profit, if they provide consent for their data @@ -55,7 +55,7 @@ world are often non-transparent and dynamic. Terms of service and privacy policies frequently change, and the mechanisms of data sharing and processing are not always transparent to users.

    -

    Rationale and Addressing the Problem​

    +

    Rationale and Addressing the Problem​

    â—¦ Legal frameworks should consider the specific contexts in which data is used. This means creating sector-specific privacy regulations that account for the unique norms and expectations of each context.

    @@ -75,7 +75,7 @@

    Core Values and Beliefs​

    +

    Core Values and Beliefs​

    Privacy

    We believe that privacy is a fundamental human right.

    Ownership & Control

    @@ -85,7 +85,7 @@

    Core

    Transparency & Security

    Data management processes must be transparent and understandable. Personal data should be protected against unauthorized access and misuse.

    -

    Goals and Objectives​

    +

    Goals and Objectives​

    The need for data sovereignty is urgent. Daily data breaches compromise medical records, putting lives at risk, financial records are disclosed, leading to theft, and personal secrets can be exposed without consent. In a world where @@ -103,7 +103,7 @@

    Goals a protect their digital identity.

    â—¦ Developing user economy models, for the users to be compensated when their data is used by profit-making entities.

    -

    Join the Movement​

    +

    Join the Movement​

    The future of our digital world depends on the actions we take today. By reclaiming control over our personal data, we can ensure privacy, security, and fairness for all. We call on developers to build innovative solutions that @@ -112,6 +112,6 @@

    Join the M personal data is respected and protected. Join us in creating a fair and secure digital world. Let us rise to the challenge and create a digital environment where data sovereignty is the norm, not the exception. Because it is YOUR data, -and YOU should control what happens to it!

    Was this page helpful?
    Need some help? Check Support page
    +and YOU should control what happens to it!

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/decentralized-edge-compute/index.html b/explore/use-cases/decentralized-edge-compute/index.html index be27f076..29a266ce 100644 --- a/explore/use-cases/decentralized-edge-compute/index.html +++ b/explore/use-cases/decentralized-edge-compute/index.html @@ -5,12 +5,12 @@ Decentralized Edge Compute | Calimero 2.0 - - - + + + -

    Decentralized Edge Compute

    Most of the general compute today happens on cloud service because that is where +

    Decentralized Edge Compute

    Most of the general compute today happens on cloud service because that is where most of the data lives. With Calimero, all the applications data is stored locally, whereas Calimero enables edge compute on that data. Combined with the use of decentralized AI and Edge Inference LLMs, there are numerous use cases @@ -23,6 +23,6 @@ which would yield to your recommendations being exclusively tied to that merchant. But if the data would have lived on your device, your data recommendations would have been across various market channels, and not -exclusively tied to that specific merchant.

    Was this page helpful?
    Need some help? Check Support page
    +exclusively tied to that specific merchant.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/decentralized-gig-economy/index.html b/explore/use-cases/decentralized-gig-economy/index.html index a801a634..84739759 100644 --- a/explore/use-cases/decentralized-gig-economy/index.html +++ b/explore/use-cases/decentralized-gig-economy/index.html @@ -5,14 +5,14 @@ Decentralized Gig Economy | Calimero 2.0 - - - + + + -

    Decentralized Gig Economy

    Disrupt the current gig economy players and compose a fully decentralized ride +

    Decentralized Gig Economy

    Disrupt the current gig economy players and compose a fully decentralized ride sharing, freelancing, temporary work, mechanical turk platform, or any other shared economy model where each network participant gets their fair share of the -profits.

    Was this page helpful?
    Need some help? Check Support page
    +profits.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/decentralized-identity-verification/index.html b/explore/use-cases/decentralized-identity-verification/index.html index 20c09fd2..0a76b716 100644 --- a/explore/use-cases/decentralized-identity-verification/index.html +++ b/explore/use-cases/decentralized-identity-verification/index.html @@ -5,15 +5,15 @@ Decentralized Identity Verification | Calimero 2.0 - - - + + + -

    Decentralized Identity Verification

    Create a private Calimero application network which provides transparent and +

    Decentralized Identity Verification

    Create a private Calimero application network which provides transparent and trusted identity verification for service providers. With Calimero, sensitive procedures such as opening a bank account or applying for Visas would not require service providers to host the data of their users at centralized -entities any more.

    Was this page helpful?
    Need some help? Check Support page
    +entities any more.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/decentralized-intellectual-property-management/index.html b/explore/use-cases/decentralized-intellectual-property-management/index.html index 7d233f10..dc850f42 100644 --- a/explore/use-cases/decentralized-intellectual-property-management/index.html +++ b/explore/use-cases/decentralized-intellectual-property-management/index.html @@ -5,14 +5,14 @@ Decentralized Intellectual Property Management | Calimero 2.0 - - - + + + -

    Decentralized Intellectual Property Management

    The traditional platforms for managing and enforcing intellectual property +

    Decentralized Intellectual Property Management

    The traditional platforms for managing and enforcing intellectual property rights are not fully transparent, resulting in creators not being able to maximize the utility of their work. Developing a decentralized IP management -platform would result in a fairer compensation system for all creators.

    Was this page helpful?
    Need some help? Check Support page
    +platform would result in a fairer compensation system for all creators.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/decentralized-social-platforms/index.html b/explore/use-cases/decentralized-social-platforms/index.html index 08aafc10..120b74e8 100644 --- a/explore/use-cases/decentralized-social-platforms/index.html +++ b/explore/use-cases/decentralized-social-platforms/index.html @@ -5,15 +5,15 @@ Decentralized Social Platforms | Calimero 2.0 - - - + + + -

    Decentralized Social Platforms

    Build social experiences which need scalable but private data like social +

    Decentralized Social Platforms

    Build social experiences which need scalable but private data like social groups, direct messages and others, while eliminating high transaction costs (gas fees associated with blockchains). This can include exclusive groups and gated communities based on ownership of NFTs or token payments which would allow -participation and decryption of the community data content.

    Was this page helpful?
    Need some help? Check Support page
    +participation and decryption of the community data content.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/decentralized-voting-systems/index.html b/explore/use-cases/decentralized-voting-systems/index.html index a7c3782f..54608b2a 100644 --- a/explore/use-cases/decentralized-voting-systems/index.html +++ b/explore/use-cases/decentralized-voting-systems/index.html @@ -5,16 +5,16 @@ Decentralized Voting Systems | Calimero 2.0 - - - + + + -

    Decentralized Voting Systems

    Enhance trust in voting by creating a secure and tamper-proof voting process +

    Decentralized Voting Systems

    Enhance trust in voting by creating a secure and tamper-proof voting process application, ensuring each vote is counted accurately and cannot be altered. This technology enhances trust in voting by providing verifiable and immutable records while protecting voter privacy. It empowers voters, reduces the risk of fraud, and promotes democratic participation through a transparent and secure -voting platform.

    Was this page helpful?
    Need some help? Check Support page
    +voting platform.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/deprod/index.html b/explore/use-cases/deprod/index.html index 2498ba98..0c8bcf96 100644 --- a/explore/use-cases/deprod/index.html +++ b/explore/use-cases/deprod/index.html @@ -5,14 +5,14 @@ Decentralized Productivity (DeProd) SaaS | Calimero 2.0 - - - + + + -

    Decentralized Productivity (DeProd) SaaS

    Create a decentralized productivity tools suite by self hosting your data on +

    Decentralized Productivity (DeProd) SaaS

    Create a decentralized productivity tools suite by self hosting your data on Calimero’s private applications and move away from the control of centralized entities. The new platform would mitigate the burden of lifetime deals and hard -migration processes for the current users of Productivity SaaS solutions.

    Was this page helpful?
    Need some help? Check Support page
    +migration processes for the current users of Productivity SaaS solutions.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/private-daos-management/index.html b/explore/use-cases/private-daos-management/index.html index 3736dc8e..ea5da736 100644 --- a/explore/use-cases/private-daos-management/index.html +++ b/explore/use-cases/private-daos-management/index.html @@ -5,14 +5,14 @@ Private DAOs Management | Calimero 2.0 - - - + + + -

    Private DAOs Management

    Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero +

    Private DAOs Management

    Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero application, enabling you to interact with the base chain of the DAO. DAO members keep the core contract logic on-chain, while shielding all the sensitive -data.

    Was this page helpful?
    Need some help? Check Support page
    +data.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/use-cases/trustless-gaming/index.html b/explore/use-cases/trustless-gaming/index.html index 741c6ac4..bc46e959 100644 --- a/explore/use-cases/trustless-gaming/index.html +++ b/explore/use-cases/trustless-gaming/index.html @@ -5,13 +5,13 @@ Trustless Gaming | Calimero 2.0 - - - + + + -

    Trustless Gaming

    Resolve the transparency and verification problems in games with turn mechanics +

    +(i.e. poker).

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/why-not/blockchain/index.html b/explore/why-not/blockchain/index.html index 477ade16..67007d0d 100644 --- a/explore/why-not/blockchain/index.html +++ b/explore/why-not/blockchain/index.html @@ -5,19 +5,19 @@ Blockchain | Calimero 2.0 - - - + + + -

    Blockchain

    Why not Blockchain?​

    +

    Blockchain

    Why not Blockchain?​

    By virtue of blockchain principles, there's a couple of issues that arise. The major one being that everyone has to agree on the state of the canonical chain, and therefore there can be only one network actor at any given time. Different chains implement different strategies for electing this actor to alleviate the risk of compromise, but the fundamental issue remains, and hence, the long-standing problem of scalability.

    -

    Calimero vs Blockchain​

    +

    Calimero vs Blockchain​

    Calimero fundamentally rethinks the problem and offers an alternative approach, local-first execution with eventual consistency. This means that each actor can independently drive their own local state, and the network will eventually @@ -37,6 +37,6 @@

    Calim

    Calimero is also designed to be embeddable, meaning that client apps themselves become the network actors, and the network is the app itself. This is in stark contrast to blockchains, where the network is a separate entity from the client -apps.

    Was this page helpful?
    Need some help? Check Support page
    +apps.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/why-not/ipfs/index.html b/explore/why-not/ipfs/index.html index bc1facff..4166052e 100644 --- a/explore/why-not/ipfs/index.html +++ b/explore/why-not/ipfs/index.html @@ -5,16 +5,16 @@ IPFS | Calimero 2.0 - - - + + + -

    IPFS

    Why not IPFS?​

    +

    IPFS

    Why not IPFS?​

    IPFS is a storage solution, it's not designed for generic compute.

    -

    Calimero vs IPFS​

    +

    Calimero vs IPFS​

    Calimero is designed to be a general-purpose compute engine that can be used to build a wide variety of applications. Also worth noting that Calimero does offer -a way to store encrypted data, effectively making it a storage solution as well.

    Was this page helpful?
    Need some help? Check Support page
    +a way to store encrypted data, effectively making it a storage solution as well.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/explore/why-not/zk/index.html b/explore/why-not/zk/index.html index 099efab3..0603f909 100644 --- a/explore/why-not/zk/index.html +++ b/explore/why-not/zk/index.html @@ -5,20 +5,20 @@ ZK | Calimero 2.0 - - - + + + -

    ZK

    Why not ZK?​

    +

    ZK

    Why not ZK?​

    Zero-Knowledge (ZK) solutions focus on enhancing privacy and reducing the need to reveal data during synchronization, but they don't eliminate the need for synchronization itself.

    -

    Calimero vs ZK​

    +

    Calimero vs ZK​

    Calimero offers a fundamentally different approach with local-first execution and eventual consistency, minimizing synchronization overhead. Additionally, ZK solutions can complement Calimero by providing enhanced privacy features within its framework, offering the best of both worlds without inheriting the -synchronization complexities of traditional ZK implementations.

    Was this page helpful?
    Need some help? Check Support page
    +synchronization complexities of traditional ZK implementations.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/getting-started/admin-dashboard/index.html b/getting-started/admin-dashboard/index.html index 4765830c..a42bfd9e 100644 --- a/getting-started/admin-dashboard/index.html +++ b/getting-started/admin-dashboard/index.html @@ -5,18 +5,18 @@ Admin Dashboard | Calimero 2.0 - - - + + + -

    Admin Dashboard

    Node is gated with authentication. In order to interact with the node from any +

    Admin Dashboard

    Node is gated with authentication. In order to interact with the node from any app, you need to register a decentralized identity. We have build an Admin Dashboard which is a web application designed to streamline the management of node states within your system. Seamlessly connected with the API provided by the Admin Client API, this user interface offers a user-friendly platform for overseeing and controlling various aspects of your node infrastructure.

    -

    Access Admin Dashboard​

    +

    Access Admin Dashboard​

    Admin Dashboard is published to GitHub pages so you can access it directly from the browser.

    Admin dashboard is available at @@ -28,21 +28,21 @@

    Acces

    After the initial setup yourou will see login page. On the first login, your selected wallet will be used as a root key to use further functionalities.

    -

    Admin Dashboard functionalities:​

    -

    Identity​

    +

    Admin Dashboard functionalities:​

    +

    Identity​

    Preview added root keys or add new root key.

    -

    Identity

    -

    Contexts​

    +

    Identity

    +

    Contexts​

    Preview context which you have already joined or invited. You can also create a new context.

    -

    Contexts

    -

    Applications​

    +

    Contexts

    +

    Applications​

    Preview available applications from other developers or applications you published. You can also publish new application

    -

    Applications

    -

    Export​

    +

    Applications

    +

    Export​

    Allows you to export you identity on current device and import it on new device so you have seamless experience while onboarding to another device.

    -

    Export

    Was this page helpful?
    Need some help? Check Support page
    +

    Export

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/getting-started/example-app/index.html b/getting-started/example-app/index.html index 2d308846..371b5cd4 100644 --- a/getting-started/example-app/index.html +++ b/getting-started/example-app/index.html @@ -5,29 +5,29 @@ Example Application | Calimero 2.0 - - - + + + -

    Example Application

    We have created simple and easy to use example application called only-peers. +

    Example Application

    We have created simple and easy to use example application called only-peers. Application enables writing posts and leaving comments. To try out application you need to create new context where application will be installed.

    -

    Create new context​

    +

    Create new context​

    To create new context, node CLI has to be used. There are two possible options of creating new context.

    1. If the node already has application installed, create new context using command:
    -
    Terminal
    $ meroctl context create --application <app-id>
    >> <context-id>
    +
    Terminal
    $ meroctl context create --application <app-id>
    >> <context-id>
    1. If application is not installed then install the application and create new context using commands:
    -
    Terminal
    $ meroctl app install --path /path/to/app
    >> <app-id>
    $ meroctl context create --application <app-id>
    >> <context-id>
    +
    Terminal
    $ meroctl app install --path /path/to/app
    >> <app-id>
    $ meroctl context create --application <app-id>
    >> <context-id>

    You are now part of the context and can start using the application.

    -

    Try out Only-peers application​

    +

    Try out Only-peers application​

    We have built and deployed a demo app so you can try it out immediately.

    Navigate to https://calimero-network.github.io/only-peers-client/ to access app frontend.

    @@ -39,6 +39,6 @@

    Admin Dashboard.

    -

    You are now ready to use the app. Enjoy!

    Was this page helpful?
    Need some help? Check Support page
    +

    You are now ready to use the app. Enjoy!

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/getting-started/setup/index.html b/getting-started/setup/index.html index e0ffdb86..6519eeb8 100644 --- a/getting-started/setup/index.html +++ b/getting-started/setup/index.html @@ -5,35 +5,35 @@ Setup | Calimero 2.0 - - - + + + -

    Setup

    Before you start, make sure you are familiar with +

    Setup

    Before you start, make sure you are familiar with Calimero Terminology.

    -

    Setup your local node​

    -

    Prerequisites​

    +

    Setup your local node​

    +

    Prerequisites​

    Clone repository from GitHub.

    -
    Terminal
    git clone git@github.com:calimero-network/core.git
    +
    Terminal
    git clone git@github.com:calimero-network/core.git

    Position in the root of the project and create a data folder for all configuration files.

    -
    Terminal
    $ mkdir data
    +
    Terminal
    $ mkdir data

    Make sure you have Rust installed on your machine. If not, you can install it by following the instructions on the Rust website.

    NOTE: Use minimum rust version 1.80.0

    -

    Setup​

    +

    Setup​

    Setup coordinator node used for managing the network transactions and peer nodes representing the network participants.

    -

    Initialize and start coordinator node (separate terminal)​

    -
    Terminal
    cargo run -p meroctl -- --node-name coordinator --home data init --server-port 2427 --swarm-port 2527
    cargo run -p meroctl -- --node-name coordinator --home data run --node-type coordinator
    -

    Initialize and start your node (separate terminal)​

    -
    Terminal
    cargo run -p meroctl -- --node-name node1 --home data init --server-port 2428 --swarm-port 2528
    cargo run -p meroctl -- --node-name node1 --home data run
    +

    Initialize and start coordinator node (separate terminal)​

    +
    Terminal
    cargo run -p meroctl -- --node-name coordinator --home data init --server-port 2427 --swarm-port 2527
    cargo run -p meroctl -- --node-name coordinator --home data run --node-type coordinator
    +

    Initialize and start your node (separate terminal)​

    +
    Terminal
    cargo run -p meroctl -- --node-name node1 --home data init --server-port 2428 --swarm-port 2528
    cargo run -p meroctl -- --node-name node1 --home data run

    Node is now initialized and ready for use.

    -

    SSL/TLS Support​

    +

    SSL/TLS Support​

    To be able to access the the node from external source on the same network you will need to install the generated self-signed certificate.

    @@ -41,7 +41,7 @@

    SSL/TLS Suppo access the node from an external source on the same network. If you are running the application locally, you do not need to install the certificate.

    -

    Steps to Add the Certificate to Your Device​

    +

    Steps to Add the Certificate to Your Device​

    1. Locate the Certificate:

      @@ -103,7 +103,7 @@

      Rules for Generating SSL Certificates​

      +

      Rules for Generating SSL Certificates​

      • If a certificate doesn't exist, a new one will be generated based on your current local IP address.
      • @@ -116,8 +116,8 @@

        Congratulations on Setting Up Your Node!​

        +

        Congratulations on Setting Up Your Node!​

        Your next step is to add an authentication mechanism to your node by adding a -decentralized identity.

    Was this page helpful?
    Need some help? Check Support page
    +decentralized identity.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/index.html b/index.html index cdb425b5..8e9a86c4 100644 --- a/index.html +++ b/index.html @@ -5,11 +5,11 @@ Hello from Calimero 2.0 | Calimero 2.0 - - - + + + -

    Calimero 2.0

    You're about to dive into the Calimero Network, a place designed to shake up the digital world by prioritizing what matters most: privacy, data control, and freedom in your creations. Calimero offers a foundation for those committed to building the new digital landscape where privacy and user autonomy are non-negotiable. It's a shift towards an ecosystem where applications are built on principles of decentralization, ensuring users retain control over their digital footprint.

    Robust framework

    Quickly launch and configure nodes in our peer-to-peer network with user-friendly tools that minimize the complexity and technical challenges.

    Comprehensive SDKs

    Jumpstart your decentralized apps with our SDKs, designed for easy integration into our robust peer-to-peer network.

    Open Source project

    Contribute your code to help forge a platform that leads the way in innovation in the decentralized space

    +

    Calimero 2.0

    You're about to dive into the Calimero Network, a place designed to shake up the digital world by prioritizing what matters most: privacy, data control, and freedom in your creations. Calimero offers a foundation for those committed to building the new digital landscape where privacy and user autonomy are non-negotiable. It's a shift towards an ecosystem where applications are built on principles of decentralization, ensuring users retain control over their digital footprint.

    Robust framework

    Quickly launch and configure nodes in our peer-to-peer network with user-friendly tools that minimize the complexity and technical challenges.

    Comprehensive SDKs

    Jumpstart your decentralized apps with our SDKs, designed for easy integration into our robust peer-to-peer network.

    Open Source project

    Contribute your code to help forge a platform that leads the way in innovation in the decentralized space

    \ No newline at end of file diff --git a/learn/advanced-concepts/encryption/index.html b/learn/advanced-concepts/encryption/index.html index c3bcc256..50a8cf25 100644 --- a/learn/advanced-concepts/encryption/index.html +++ b/learn/advanced-concepts/encryption/index.html @@ -5,14 +5,14 @@ Encryption | Calimero 2.0 - - - + + + -

    Encryption

    Encryption in Calimero ensures data security in transit over the network, +

    Encryption

    Encryption in Calimero ensures data security in transit over the network, maintaining confidentiality and integrity.

    -

    Key Principles​

    +

    Key Principles​

    1. Forward Secrecy: Ensuring past messages remain secure even if a key is compromised in the future.
    2. @@ -29,14 +29,14 @@

      Key Principle
    3. Non-Interactive Group Management: Adding and removing context members without requiring interaction.
    -

    Double Ratchet Algorithm​

    +

    Double Ratchet Algorithm​

    Each network message uses a distinct encryption key derived from the ratchet state, providing forward secrecy by ensuring that the compromise of one key does not affect the security of previous messages.

    Each context can configure Diffie-Hellman reset parameters. For one-on-one peer interactions, resets can occur instantaneously, while for larger groups, resets can happen at non-deterministic intervals to balance security and performance.

    -

    Tree-Based Diffie-Hellman Key Exchange​

    +

    Tree-Based Diffie-Hellman Key Exchange​

    All contexts use a tree-based Diffie-Hellman key exchange. This method efficiently manages shared secrets among multiple members, ensuring that keys are updated and propagated correctly. The reset of keys occurs at the leaf nodes @@ -49,6 +49,6 @@

    Was this page helpful?
    Need some help? Check Support page

    +network messages.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/advanced-concepts/specialized-nodes/index.html b/learn/advanced-concepts/specialized-nodes/index.html index 4671ea1f..358d5071 100644 --- a/learn/advanced-concepts/specialized-nodes/index.html +++ b/learn/advanced-concepts/specialized-nodes/index.html @@ -5,16 +5,16 @@ Specialized Nodes | Calimero 2.0 - - - + + + -

    Specialized Nodes

    Specialized nodes in the Calimero Network are third-party nodes that augment a +

    Specialized Nodes

    Specialized nodes in the Calimero Network are third-party nodes that augment a context's capacity and reliability. They participate in a context but have additional capabilities, providing various services while maintaining the decentralized nature of the network.

    -

    Key Concepts​

    +

    Key Concepts​

    • Incentivization: These nodes can be incentivized through contracts on blockchains that pay them for their services, ensuring they remain motivated @@ -23,7 +23,7 @@

      Key Concepts

    -

    Types of Specialized Nodes​

    +

    Types of Specialized Nodes​

    1. Storage Nodes:

      @@ -56,12 +56,12 @@

      T

    -

    Reliability Through Decentralization​

    +

    Reliability Through Decentralization​

    Specialized nodes ensure that the context remains operational and consistent, even when primary peers are offline. They provide the necessary data and transactions to keep the context up-to-date. The decentralized nature ensures that the state is eventually consistent. Fragmentation does not cause issues as the system reconciles itself when peers come back online, highlighting the -network's reliability without reliance on any single specialized node.

    Was this page helpful?
    Need some help? Check Support page
    +network's reliability without reliance on any single specialized node.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/architecture/index.html b/learn/architecture/index.html index 67fde65f..890c6f00 100644 --- a/learn/architecture/index.html +++ b/learn/architecture/index.html @@ -5,15 +5,15 @@ Architecture | Calimero 2.0 - - - + + + -

    Architecture

    Calimero Network offers a robust framework for developing and running +

    Architecture

    Calimero Network offers a robust framework for developing and running peer-to-peer (P2P) applications. Our framework allows users to participate in the network or build applications for others to use.

    -

    Participate​

    +

    Participate​

    Users participate in the network with a client node. By encapsulating the complexities of operating a client node, we aim to make it easy and intuitive for everyone to engage in the decentralized world.

    @@ -29,8 +29,8 @@

    ParticipateSome networks may require specialized functionalities, which are provided by a dedicated compute market. Users can integrate these special functionalities from a pool of available specialized nodes.

    -

    Calimero Architecture

    -

    Build​

    +

    Calimero Architecture

    +

    Build​

    To develop applications on the Calimero Network, we provide comprehensive SDKs:

    +contribute to a seamless decentralized experience.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/applications/index.html b/learn/core-concepts/applications/index.html index 98387ea2..92f0015f 100644 --- a/learn/core-concepts/applications/index.html +++ b/learn/core-concepts/applications/index.html @@ -5,17 +5,17 @@ Applications | Calimero 2.0 - - - + + + -

    Applications

    Applications in Calimero define the core logic governing how peers interact +

    Applications

    Applications in Calimero define the core logic governing how peers interact within a decentralized network. Developers can programmatically augment the protocol to create customized functionalities, supporting a wide range of applications tailored to various use cases, from direct messaging and communication channels to interactive games and collaborative editing.

    -

    Examples of Applications​

    +

    Examples of Applications​

    1. Communication Platforms

      @@ -66,7 +66,7 @@

      Exa

    -

    Benefits of Decentralized Applications​

    +

    Benefits of Decentralized Applications​

    • Resilience: Distributed application logic ensures the system functions smoothly even if some devices go offline.
    • @@ -78,7 +78,7 @@

      Security and Data Management​

      +

      Security and Data Management​

      All non-state-transitional data, such as attached files in DMs, collaborative document assets, and game resources, inherit the same level of security as state-transitional transactions. This ensures that all forms of data within the @@ -88,7 +88,7 @@

      -

      Building Applications​

      +

      Building Applications​

      Developers can leverage Calimero's framework to programmatically build and augment a wide range of applications using provided tools and documentation. This includes setting up the development environment and deploying applications @@ -105,6 +105,6 @@

      Buildi process, ensuring that they can build and deploy high-quality, secure applications efficiently.

      -

    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/contexts/index.html b/learn/core-concepts/contexts/index.html index b1e499a6..4e810679 100644 --- a/learn/core-concepts/contexts/index.html +++ b/learn/core-concepts/contexts/index.html @@ -5,15 +5,15 @@ Contexts | Calimero 2.0 - - - + + + -

    Contexts

    Contexts are the core of the Calimero ecosystem. These are application specific +

    Contexts

    Contexts are the core of the Calimero ecosystem. These are application specific networks designed to enable direct communication between users, eliminating the need for intermediaries. Here's a closer look at how they operate:

    -

    How Contexts Work:​

    +

    How Contexts Work:​

    1. Initialization: A user selects a WebAssembly (WASM) module from a @@ -75,6 +75,6 @@

      Ho requirements, all while maintaining the overarching principles of privacy, security, and decentralization inherent to Calimero.

    2. -
    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/identity/index.html b/learn/core-concepts/identity/index.html index d417a23d..c14c95d5 100644 --- a/learn/core-concepts/identity/index.html +++ b/learn/core-concepts/identity/index.html @@ -5,34 +5,34 @@ Identity | Calimero 2.0 - - - + + + -

    Identity

    Calimero Decentralized Identity​

    +

    Identity

    Calimero Decentralized Identity​

    Calimero’s decentralized identity framework is designed to provide secure, anonymous, and decentralized control across the network. It leverages multiple types of cryptographic keys to manage identities and ensure the integrity of operations within the network.

    -

    Network identity​

    +

    Network identity​

    Network identity is defined within the configuration file on each node. This identity is derived from network keys, which generate a unique Peer ID for each node, allowing peers to identify themselves to other peers in the network.

    -

    Network Keys​

    +

    Network Keys​

    Network keys are used to authenticate nodes within the network, with each node having a unique private-public key pair that it uses to verify its identity to other nodes. During connection setup, nodes exchange public keys to ensure they are communicating with the intended parties. More in Learn - Network

    -

    Context identity​

    +

    Context identity​

    Context identity allows users to identify themselves within a specific context. Users can have arbitrary number of identities within a specific context which remains encapsulated within the context. These identities are linked to runtime keys, with each context identity connected to one runtime key.

    -

    Decentralized Identity (DID) document​

    +

    Decentralized Identity (DID) document​

    All context-specific identities and node keys are managed through a Decentralized Identity (DID) document stored on the node. This document includes:

    @@ -46,11 +46,11 @@

    Root keys​

    +

    Root keys​

    Root keys provide full access for node operations, including managing root keys, listing identifiers, and generating new client keys. Web3 wallets can be used as fundamental for root keys, simplifying the setup process.

    -

    Client keys​

    +

    Client keys​

    Client keys are generated on login and used by the frontend. Stored in browser local storage, these keys initiate applications and server as permissioned access to the node.

    @@ -69,12 +69,12 @@

    Client keys

    Calimero's TypeScript SDK supports developers in building browser and CLI applications by simplifying interaction with the network.

    -

    Runtime keys​

    +

    Runtime keys​

    Runtime keys are used for signing transactions within a context, with the appropriate key selected based on the context identity.

    -

    Encryption keys​

    +

    Encryption keys​

    Keys used for encrypting and decrypting messages between peers in the context. Each context has its own encryption key. More in -Learn - Encryption

    Was this page helpful?
    Need some help? Check Support page
    +Learn - Encryption

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/node/admin-client-api/index.html b/learn/core-concepts/node/admin-client-api/index.html index 72ab38d7..ed74beb4 100644 --- a/learn/core-concepts/node/admin-client-api/index.html +++ b/learn/core-concepts/node/admin-client-api/index.html @@ -5,12 +5,12 @@ Admin Client API | Calimero 2.0 - - - + + + -

    Admin Client API

    About Admin Client API​

    +

    Admin Client API

    About Admin Client API​

    Our Admin Client API offers a comprehensive set of endpoints designed to facilitate the management and administration of the node states. With intuitive routes and robust handlers, administrators can seamlessly navigate various node @@ -27,7 +27,7 @@

    In essence, the Admin API simplifies node management, while the Admin UI offers an intuitive interface for seamless control.

    -

    How to Use​

    +

    How to Use​

    To utilize the Admin API endpoints effectively, the recommended approach is to leverage the Admin UI web application. The Admin UI automates various steps involved in interacting with the Admin API, ensuring seamless integration and @@ -37,7 +37,7 @@

    How to Use -

    API Endpoints​

    +

    API Endpoints​

    1. Root Key Request - This endpoint allows administrators to add root keys @@ -60,9 +60,9 @@

      API Endpoints< and publicKey, are generated by signing the challenge and message with the wallet.

      Example call with curl

      -
      curl -X POST \
      -H "Content-Type: application/json" \
      -d '{"accountId": "<ACCOUNT_ID>", "signature": "<SIGNATURE>", "publicKey": "<PUBLIC_KEY>", "callbackUrl": "<CALLBACK_URL>"}' \
      http://<NODE-URL>/admin-api/root-key
      +
      curl -X POST \
      -H "Content-Type: application/json" \
      -d '{"accountId": "<ACCOUNT_ID>", "signature": "<SIGNATURE>", "publicKey": "<PUBLIC_KEY>", "callbackUrl": "<CALLBACK_URL>"}' \
      http://<NODE-URL>/admin-api/root-key

      Example response

      -
      > Success response
      { data: "Root key added" }
      > Error response
      { error: "Failed to add root key: <error_message>" }
      +
      > Success response
      { data: "Root key added" }
      > Error response
      { error: "Failed to add root key: <error_message>" }

    2. Request authentication challenge - Administrators can utilize this @@ -70,9 +70,9 @@

      API Endpoints< their identity via wallet signatures for enhanced security measures.

      POST /request-challenge

      Example call with curl

      -
      curl -X POST http://<NODE-URL>/admin-api/request-challenge
      +
      curl -X POST http://<NODE-URL>/admin-api/request-challenge

      Example response

      -
      > Success response
      { data: { challenge: <challenge> } }
      > Error response
      { error: "Failed to fetch challenge: <error_message>" }
      +
      > Success response
      { data: { challenge: <challenge> } }
      > Error response
      { error: "Failed to fetch challenge: <error_message>" }

    3. Install Application - This endpoint facilitates the installation of new @@ -85,9 +85,9 @@

      API Endpoints<
    4. version : Application release version - can be selected from the Admin UI
    5. Example call with curl

      -
      curl -X POST \
      -H "Content-Type: application/json" \
      -d '{"application": "<APPLICATION_NAME>", "version": "<VERSION>"}' \
      http://<NODE-URL>/admin-api/install-application
      +
      curl -X POST \
      -H "Content-Type: application/json" \
      -d '{"application": "<APPLICATION_NAME>", "version": "<VERSION>"}' \
      http://<NODE-URL>/admin-api/install-application

      Example response

      -
      > Success response
      { data: "Application Installed" }
      > Error response
      { error: "Failed to install application: <error_message>" }
      +
      > Success response
      { data: "Application Installed" }
      > Error response
      { error: "Failed to install application: <error_message>" }

    6. List installed Application - This endpoint returns a list of installed @@ -95,9 +95,9 @@

      API Endpoints< decentralized network ecosystem

      GET /applications

      Example call with curl

      -
      curl -X GET http://<NODE-URL>/admin-api/applications
      +
      curl -X GET http://<NODE-URL>/admin-api/applications

      Example response

      -
      > Success response
      { data: {
      applications:
      [{
      application_name: <application_name>,
      version: <application_version>
      }]
      }}
      > Error response
      { error: "Failed to fetch installed applications: <error_message>" }
      +
      > Success response
      { data: {
      applications:
      [{
      application_name: <application_name>,
      version: <application_version>
      }]
      }}
      > Error response
      { error: "Failed to fetch installed applications: <error_message>" }

    7. Add Client Key - Administrators can add new client keys via this @@ -118,19 +118,19 @@

      API Endpoints<

      Example call with curl

    8. -
      curl -X POST \
      -H "Content-Type: application/json" \
      -d '{"wallet_signature": "<WALLET_SIGNATURE>", "payload": { "message": <MESSAGE>, "metadata": <METADATA_VALUE>}. "wallet_metadata": {"wallet_type": <WALLET_TYPE>, "signing_key": <SIGNING_KEY>}}' \
      http://<NODE-URL>/admin-api/add-client-key
      +
      curl -X POST \
      -H "Content-Type: application/json" \
      -d '{"wallet_signature": "<WALLET_SIGNATURE>", "payload": { "message": <MESSAGE>, "metadata": <METADATA_VALUE>}. "wallet_metadata": {"wallet_type": <WALLET_TYPE>, "signing_key": <SIGNING_KEY>}}' \
      http://<NODE-URL>/admin-api/add-client-key

      Example response

      -
      > Success response
      { data: "Client key stored" }
      > Error response
      { error: "Failed to add client key: <error_message>" }
      +
      > Success response
      { data: "Client key stored" }
      > Error response
      { error: "Failed to add client key: <error_message>" }
    9. Get the DID - Fetches the Decentralized Identifier (DID) associated with the node, providing a unique identifier for network entities and enabling interoperability across decentralized applications.

      GET /did

      -
      curl -X GET http://<NODE-URL>/admin-api/did
      +
      curl -X GET http://<NODE-URL>/admin-api/did

      Example response

      -
      > Success response
      { data:
      {
      id: <id>,
      root_keys:
      [{
      signing_key: <signing_key>
      }]
      }
      }
      > Error response
      { error: "Failed to fetch DID: <error_message>" }
      +
      > Success response
      { data:
      {
      id: <id>,
      root_keys:
      [{
      signing_key: <signing_key>
      }]
      }
      }
      > Error response
      { error: "Failed to fetch DID: <error_message>" }
    10. -
    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/node/client-node/index.html b/learn/core-concepts/node/client-node/index.html index 9420cb54..fe977d23 100644 --- a/learn/core-concepts/node/client-node/index.html +++ b/learn/core-concepts/node/client-node/index.html @@ -5,12 +5,12 @@ Client Node | Calimero 2.0 - - - + + + -

    Client Node

    Runtime​

    +

    Client Node

    Runtime​

    Overview: The runtime environment of a client node in the Calimero Network is crucial for the execution of decentralized applications (DApps), particularly those compiled to WebAssembly (WASM).

    @@ -27,8 +27,8 @@ application security and integrity, particularly in a decentralized setting where trust is distributed. -

    Recommendations for Developers: Thorough testing of applications in a controlled environment is advised before deploying them in production to ensure stability and security. Additionally, developers are encouraged to implement locked update rules to prevent unauthorized modifications to the application's behavior.​

    -

    Storage​

    +

    Recommendations for Developers: Thorough testing of applications in a controlled environment is advised before deploying them in production to ensure stability and security. Additionally, developers are encouraged to implement locked update rules to prevent unauthorized modifications to the application's behavior.​

    +

    Storage​

    Overview: Storage on client nodes involves maintaining the state and data required for the decentralized applications they support.

    Functionality:

    @@ -38,20 +38,20 @@

    StorageEncryption:​

    +

    Encryption:​

    Data stored on client nodes can be encrypted, providing an additional layer of security and privacy for user data.

    -

    Identity Management​

    +

    Identity Management​

    Overview: Managing identities on the Calimero Network is fundamental for ensuring secure and private interactions between nodes and applications. Functionality:

    -

    Authentication​

    +

    Authentication​

    Nodes implement mechanisms for authenticating users and applications, ensuring that interactions are secure and that entities are who they claim to be.

    -

    Key Management​

    +

    Key Management​

    The management of cryptographic keys is an integral part of identity management, enabling secure communication and data encryption across the network.

    -

    Application Marketplace​

    +

    Application Marketplace​

    Current State: The marketplace for decentralized applications within the Calimero Network is facilitated by a smart contract on the NEAR blockchain, with application data and metadata hosted on IPFS. This setup serves as a temporary @@ -63,6 +63,6 @@

    Appl critical use cases and are the only ones featured in the official marketplace, ensuring a curated and trustworthy selection of DApps for users. This framework demonstrates Calimero Network's commitment to building a secure and user-centric -decentralized ecosystem.

    Was this page helpful?
    Need some help? Check Support page
    +decentralized ecosystem.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/node/network/index.html b/learn/core-concepts/node/network/index.html index 9ee41a02..d55426bc 100644 --- a/learn/core-concepts/node/network/index.html +++ b/learn/core-concepts/node/network/index.html @@ -5,12 +5,12 @@ Network | Calimero 2.0 - - - + + + -

    Network

    Overview​

    +

    Network

    Overview​

    This document provides an overview of the networking component of Calimero Network, which is implemented using the libp2p library. The network consists of two types of peers: client nodes and boot nodes, each serving distinct roles @@ -18,8 +18,8 @@ Client node is the component which hosts and runs client applications, communicates and shares data between other client nodes. Boot node is the component used for the initial discovery of the peers in the network.

    -

    Node Types​

    -

    Client Node​

    +

    Node Types​

    +

    Client Node​

    • Deployment: Can run on any machine

      @@ -75,7 +75,7 @@

      Client Node

    -

    Boot Node​

    +

    Boot Node​

    • Deployment: Must run on a publicly available machine with a static IP @@ -114,9 +114,9 @@

      Boot NodeP2P protocols and techniques​

      -

      Protocol Descriptions​

      -

      DCUtR (Direct Connection Upgrade through Relay)​

      +

      P2P protocols and techniques​

      +

      Protocol Descriptions​

      +

      DCUtR (Direct Connection Upgrade through Relay)​

      • DCUtR is used to upgrade connections through relay nodes, allowing peers to establish direct connections even if they are behind NATs or firewalls. Peers @@ -125,7 +125,7 @@

        libp2p DCUtR Documentation

      -

      Gossipsub​

      +

      Gossipsub​

      • Gossipsub is a scalable and efficient pub-sub protocol for message dissemination. It combines the best aspects of gossip protocols and @@ -134,7 +134,7 @@

        Gossipsublibp2p Gossipsub Documentation

      -

      Identify​

      +

      Identify​

      • The Identify protocol allows peers to identify themselves and share their capabilities with other peers. Peers exchange identification information such @@ -143,7 +143,7 @@

        Identifylibp2p Identify Documentation

      -

      Kademlia (Kad)​

      +

      Kademlia (Kad)​

      • Kademlia is a distributed hash table (DHT) protocol used for peer discovery and data routing. It uses an XOR metric to ensure efficient and scalable peer @@ -152,7 +152,7 @@

        Kademlia (Kad)<
      • Reference: libp2p Kademlia DHT Documentation
      -

      mDNS (Multicast DNS)​

      +

      mDNS (Multicast DNS)​

      • mDNS enables local network peer discovery without the need for a central server. It uses multicast DNS to allow peers to find each other on the same @@ -161,7 +161,7 @@

        mDNS (Mul
      • Reference: libp2p mDNS Documentation
      -

      Ping​

      +

      Ping​

      • The Ping protocol measures the round-trip time (latency) between peers. It regularly pings connected peers and measures the time it takes for a response. @@ -170,7 +170,7 @@

        PingReference: libp2p Ping Documentation

      -

      Relay​

      +

      Relay​

      • The Relay protocol supports relay-based communication, allowing peers to communicate through intermediary nodes when direct connections are not @@ -180,7 +180,7 @@

        RelayReference: libp2p Relay Documentation

      -

      Rendezvous​

      +

      Rendezvous​

      • The Rendezvous protocol enables peers to discover each other by registering at and querying a shared rendezvous point. This is useful for dynamically finding @@ -190,7 +190,7 @@

        RendezvousReference: libp2p Rendezvous Documentation

      -

      NAT Traversal Techniques​

      +

      NAT Traversal Techniques​

      One of the common techniques used for NAT traversal in P2P networks is Hole Punching. This technique allows two peers, each behind a NAT, to establish a direct connection with each other. Here's a brief explanation:

      @@ -221,6 +221,6 @@

      NAT Hole punching in libp2p

    • Reference: How NAT traversal works
    • -
    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/node/runtime/index.html b/learn/core-concepts/node/runtime/index.html index 8007479f..69eb3711 100644 --- a/learn/core-concepts/node/runtime/index.html +++ b/learn/core-concepts/node/runtime/index.html @@ -5,19 +5,19 @@ Runtime | Calimero 2.0 - - - + + + -

    Runtime

    The runtime environment in the Calimero Network is essential for executing +

    Runtime

    The runtime environment in the Calimero Network is essential for executing decentralized applications (DApps). It acts as a bridge between the application logic, the network, and storage layers, ensuring seamless operation and integration. The runtime ensures secure, isolated, and efficient execution of applications by managing resources effectively, supporting real-time event handling, enabling scalability, and providing robust storage and transaction management.

    -

    Core Capabilities​

    +

    Core Capabilities​

    • Security and Isolation: The runtime provides a secure execution @@ -62,6 +62,6 @@

      Core Capab instances and shutting down stale ones to reclaim system resources. These optimizations ensure efficient resource utilization and improved performance.

    • -
    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/node/server/index.html b/learn/core-concepts/node/server/index.html index e20252e0..e11bbf8e 100644 --- a/learn/core-concepts/node/server/index.html +++ b/learn/core-concepts/node/server/index.html @@ -5,16 +5,16 @@ Server | Calimero 2.0 - - - + + + -

    Server

    The server is a core component for interacting with a Calimero node. Calimero +

    Server

    The server is a core component for interacting with a Calimero node. Calimero can be embedded with your client to make it a self-contained node, or it can run as a remote node that multiple clients can connect to, allowing centralized state management.

    -

    Core Capabilities​

    +

    Core Capabilities​

    • JSON-RPC API: Provides a standardized way for clients to query or mutate @@ -45,6 +45,6 @@

      Core Capab to manage resource usage effectively.

    -
    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/core-concepts/node/storage/index.html b/learn/core-concepts/node/storage/index.html index a89911a3..fc9f95e4 100644 --- a/learn/core-concepts/node/storage/index.html +++ b/learn/core-concepts/node/storage/index.html @@ -5,16 +5,16 @@ Storage | Calimero 2.0 - - - + + + -

    Storage

    The storage component in the Calimero Network is essential for managing and +

    Storage

    The storage component in the Calimero Network is essential for managing and maintaining the data generated and utilized by decentralized applications (DApps). It ensures data integrity, security, and efficient access, enabling seamless operation of applications within the network.

    -

    Core Capabilities​

    +

    Core Capabilities​

    • Generic Storage Interface: Calimero provides a flexible storage interface @@ -58,6 +58,6 @@

      Core Capab storage usage, including total usage and breakdowns by context. This allows for effective monitoring and management of storage resources.

    • -
    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/learn/terminology/index.html b/learn/terminology/index.html index 31d37799..a048b6b1 100644 --- a/learn/terminology/index.html +++ b/learn/terminology/index.html @@ -5,12 +5,12 @@ Terminology | Calimero 2.0 - - - + + + -

    Terminology

    As projects grow, it's important to have a shared vocabulary to help communicate +

    Terminology

    As projects grow, it's important to have a shared vocabulary to help communicate effectively. This page provides a list of terms used in the documentation and throughout the codebase.

      @@ -50,6 +50,6 @@ reliability. It participates in a context but have additional capabilities, providing various services while maintaining the decentralized nature of the network. -
    Was this page helpful?
    Need some help? Check Support page
    +
    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/resources/community-and-support/index.html b/resources/community-and-support/index.html index dfcd57c1..33f24955 100644 --- a/resources/community-and-support/index.html +++ b/resources/community-and-support/index.html @@ -5,15 +5,15 @@ Community and Support | Calimero 2.0 - - - + + + -

    Community and Support

    +

    Community and Support

    We value our community and are here to support you. Here are the best ways to get in touch and find help:

    -

    GitHub​

    +

    GitHub​

    • Issues: For development-related queries, bug reports, and feature requests, please use our @@ -21,12 +21,12 @@

      GitHubGitHub Discussions.

    -

    Discord​

    +

    Discord​

    For news, casual conversations, and random questions, join our Discord Server. It’s a great place to connect with other contributors, share ideas, and stay informed about the latest updates.

    -

    Social Media​

    +

    Social Media​

    Stay connected and get the latest news and updates by following us on social media:

      @@ -37,6 +37,6 @@

      Social MediaTwitter.

    Thank you for being a part of the Calimero community. Your contributions and -engagement help us grow and improve!

    Was this page helpful?
    Need some help? Check Support page
    +engagement help us grow and improve!

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/resources/learning/index.html b/resources/learning/index.html index 75d838ed..64a3a09e 100644 --- a/resources/learning/index.html +++ b/resources/learning/index.html @@ -5,14 +5,14 @@ Learning | Calimero 2.0 - - - + + + -

    Learning

    + +our blog, and explore our website to get the most out of our project.

    Was this page helpful?
    Need some help? Check Support page
    \ No newline at end of file diff --git a/search/index.html b/search/index.html index 6f6f910d..ac2fc37a 100644 --- a/search/index.html +++ b/search/index.html @@ -5,11 +5,11 @@ Search the documentation | Calimero 2.0 - - - + + + -

    Search the documentation

    +

    Search the documentation

    \ No newline at end of file