diff --git a/404.html b/404.html index 882e6519b9..ac0e7b5df0 100644 --- a/404.html +++ b/404.html @@ -15,8 +15,8 @@ - - + +
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.

diff --git a/assets/js/ccc1222e.9e11b6a6.js b/assets/js/ccc1222e.9e11b6a6.js deleted file mode 100644 index 68d74bf6c7..0000000000 --- a/assets/js/ccc1222e.9e11b6a6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[5702],{36136:(t,e,s)=>{s.r(e),s.d(e,{assets:()=>c,contentTitle:()=>n,default:()=>d,frontMatter:()=>a,metadata:()=>r,toc:()=>o});const r=JSON.parse('{"id":"build/build-open-source","title":"Open Source Stack","description":"Overview of the open source Polkadot/Kusama Tech Stack","source":"@site/../docs/build/build-open-source.md","sourceDirName":"build","slug":"/build-open-source","permalink":"/docs/build-open-source","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"github-actions[bot]","lastUpdatedAt":1733223373000,"frontMatter":{"id":"build-open-source","title":"Open Source Stack","sidebar_label":"Open Source Stack","description":"Overview of the open source Polkadot/Kusama Tech Stack","keywords":["open","source","development","code","resources","tools","apis"],"slug":"../build-open-source"},"sidebar":"docs","previous":{"title":"Explorer, Data, & Indexing Tools","permalink":"/docs/build-data"},"next":{"title":"Hackathons","permalink":"/docs/build-hackathon"}}');var h=s(74848),i=s(28453);const a={id:"build-open-source",title:"Open Source Stack",sidebar_label:"Open Source Stack",description:"Overview of the open source Polkadot/Kusama Tech Stack",keywords:["open","source","development","code","resources","tools","apis"],slug:"../build-open-source"},n="Open Source Polkadot Stack ",c={},o=[{value:"About",id:"about",level:2},{value:"Layers of Polkadot Stack",id:"layers-of-polkadot-stack",level:2},{value:"Wallets",id:"wallets",level:3},{value:"User Interface",id:"user-interface",level:3},{value:"Tools, APIs, and Languages",id:"tools-apis-and-languages",level:3},{value:"ink! Smart Contracts",id:"ink-smart-contracts",level:3},{value:"Chains and Pallets",id:"chains-and-pallets",level:3},{value:"Host",id:"host",level:3},{value:"Network Maintenance Tools",id:"network-maintenance-tools",level:3},{value:"Signatures",id:"signatures",level:3},{value:"Consensus",id:"consensus",level:3},{value:"Networking",id:"networking",level:3},{value:"Primitives",id:"primitives",level:3},{value:"Contributing",id:"contributing",level:2}];function l(t){const e={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",header:"header",hr:"hr",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.R)(),...t.components};return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(e.header,{children:(0,h.jsx)(e.h1,{id:"open-source-polkadot-stack-",children:"Open Source Polkadot Stack "})}),"\n",(0,h.jsx)(e.admonition,{title:"Do your research before using open-source tools",type:"caution",children:(0,h.jsxs)(e.p,{children:["The tools listed here are open-source and are linked directly to their source code. Before using these tools to build your projects, always ",(0,h.jsx)(e.a,{href:"/docs/how-to-dyor",children:"do your research"})," and be aware of ",(0,h.jsx)(e.a,{href:"/docs/learn-scams",children:"scams"}),"."]})}),"\n",(0,h.jsx)(e.p,{children:"This page aims to provide an overview of the open-source Polkadot Tech Stack."}),"\n",(0,h.jsxs)(e.p,{children:["This is a living document, and we rely on everyone to contribute and help maintain\nit. ",(0,h.jsx)(e.a,{href:"#contributing",children:(0,h.jsx)(e.strong,{children:"Please feel free to make edits and additions via pull requests"})}),". We\napologize if we missed your project!"]}),"\n",(0,h.jsx)(e.hr,{}),"\n",(0,h.jsxs)(e.ul,{children:["\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#about",children:"About"})}),"\n",(0,h.jsxs)(e.li,{children:[(0,h.jsx)(e.a,{href:"#layers-of-polkadot-stack",children:"Layers of Polkadot Stack"}),"\n",(0,h.jsxs)(e.ul,{children:["\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#wallets",children:"Wallets"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#user-interface",children:"User Interface"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#tools-apis-and-languages",children:"Tools, APIs, and Languages"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#ink-smart-contracts",children:"ink! Smart Contracts"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#chains-and-pallets",children:"Chains and Pallets"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#host",children:"Host"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#network-maintenance-tools",children:"Network Maintenance Tools"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#signatures",children:"Signatures"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#consensus",children:"Consensus"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#networking",children:"Networking"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#primitives",children:"Primitives"})}),"\n"]}),"\n"]}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#contributing",children:"Contributing"})}),"\n"]}),"\n",(0,h.jsx)(e.h2,{id:"about",children:"About"}),"\n",(0,h.jsxs)(e.p,{children:["The Polkadot Tech Stack is a subset of the Web 3.0 Tech Stack, which consists of the ",(0,h.jsx)(e.strong,{children:"open-source"}),"\ntechnologies contributing to and relying on ",(0,h.jsx)(e.a,{href:"https://polkadot.network/",children:"Polkadot"}),". It is meant to be used\nfor decentralized application (Dapp) development within numerous verticals, including DeFi, Gaming,\nProvenance and many others not pictured below."]}),"\n",(0,h.jsx)(e.pre,{children:(0,h.jsx)(e.code,{children:"|------|--------|------------|\n| DeFi | Gaming | Provenance |\n|______|________|____________|\n Dapps\n|--------------------------/-|\n| Explorers, Wallets / |\n|------------------------/---|\n| Tools, Apis, Languages/ |\n|----------------------/-----|\n| 2nd layer protocols / |\n|--------------------/-------|\n| Chains / other |\n|------------------/--- --|\n| *Polkadot* | tech |\n|------------------\\---------|\n| P2P, Crypto, Wasm \\ |\n|--------------------\\-------|\n"})}),"\n",(0,h.jsx)(e.h2,{id:"layers-of-polkadot-stack",children:"Layers of Polkadot Stack"}),"\n",(0,h.jsx)(e.p,{children:"In the below sections, you can find a list of different layers of the Polkadot Stack."}),"\n",(0,h.jsxs)(e.p,{children:[(0,h.jsx)(e.strong,{children:"Maintenance Status"}),":"]}),"\n",(0,h.jsxs)(e.ul,{children:["\n",(0,h.jsx)(e.li,{children:"\ud83d\udfe2 Actively maintained"}),"\n",(0,h.jsx)(e.li,{children:"\ud83d\udfe1 Stale (no activity on the main branch for one month)"}),"\n",(0,h.jsx)(e.li,{children:"\u26aa Unmaintained (no activity on the main branch for more than three months)"}),"\n"]}),"\n",(0,h.jsx)(e.h3,{id:"wallets",children:"Wallets"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Web Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/Multix",children:"Multix"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polkasafe/polkasafe-ui",children:"Polkasafe"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/apps",children:"polkadot-js/apps"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/TalismanSociety/talisman-web",children:"Talisman Web Application"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/enkryptcom/mydotwallet",children:"mydotwallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dappforce/subid",children:"Sub ID"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Primis-Labs/client",children:"Primis"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3finance/sakura",children:"Sakura"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/Web3Box-apps",children:"Web3Box"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CoongCrafts/coong-wallet",children:"Coong Wallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/subscan-multisig-react",children:"Subscan Multisig UI - React"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/subscan-multisig-ui",children:"Subscan Multisig UI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DoraFactory/dorafactory-multisig",children:"Dorafactory-Multisig"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/capi-multisig-app",children:"Capi Multisig App"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:["User-friendly Wallet based on the ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame/recovery",children:"Recovery Pallet"}),", Web wallets focused on user-onboarding (e.g. using ",(0,h.jsx)(e.a,{href:"https://github.com/near/near-wallet",children:"localStorage"}),")"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Desktop Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/nova-spektr",children:"nova-spektr"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/omni-desktop-prototype",children:"Omni desktop"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"Enterprise Wallets"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Browser Extensions"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/TalismanSociety/talisman",children:"Talisman-Extension"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Koniverse/SubWallet-Extension",children:"SubWallet-Extension"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/enkryptcom/enKrypt",children:"Enkrypt"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/extension",children:"Polkadot-JS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/PolkaGate/polkagate-extension",children:"PolkaGate"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/trustwallet",children:"Trust Wallet Extension"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainBridgeNetworkTeam/Doter",children:"Doter"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/GetSpeckle/speckle-browser-extension",children:"Speckle OS"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockcoders/kuma-wallet",children:"Kuma Cross-chain Wallet"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"Sign-in with your Polkadot, Kusama, etc. account."})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Mobile Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/nova-wallet-ios",children:"Nova Wallet iOS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/nova-wallet-android",children:"Nova Wallet Android"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-signer",children:"Polkadot Vault"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/fearless-Android",children:"Fearless Wallet Android"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/fearless-iOS",children:"Fearless Wallet iOS"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/trustwallet",children:"Trust Wallet"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Koniverse/SubWallet-Mobile",children:"SubWallet-Mobile"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Kalapaja/kampela-firmware",children:"Kampela"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/airgap-it/airgap-wallet",children:"AirGap"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Interstellar-Network/wallet-app",children:"Interstellar Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/luniehq/lunie",children:"Lunie"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkawallet-io/polkawallet-flutter",children:"Polkawallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/consenlabs/token-core",children:"imToken"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/stylo-app/stylo",children:"Stylo"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/fractapp/fractapp/",children:"Fractapp"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hypha-dao/hashed-wallet",children:"Hashed Wallet"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Burner Wallets/Faucet/Gifts"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/hamidra/dotdrop",children:"dotdrop"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/vue-polkadot/apps",children:"KodaDot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/astar-faucet-bot",children:"Astar Faucet Bot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/karooolis/sybil-resistant-substrate-faucet",children:"Generic sybil-resistant faucet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/StringNick/sybil-resistant-chat-bot-substrate-faucet",children:"sybil-resistant Chat Bot Faucet"})," ","\u2754"]}),(0,h.jsx)(e.td,{children:"Faucet (a sybil-resistant way to receive free tokens)"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Wallet Plugins"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/metamask-snap-polkadot",children:"Metamask-Snap by Chainsafe"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"CLI Wallet"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/yxf/subwallet",children:"Subwallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/canontech/proxy-hot-wallet",children:"Proxy-hot-wallet"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Hardware Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ZondaX/ledger-polkadot",children:"Ledger Polkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/ledger-kusama",children:"Ledger Kusama"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/ledger-statemint",children:"Ledger Statemint"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/ledger-statemine",children:"Ledger Statemine"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{children:"Trezor"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"OAuth2-compatible Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/singkeo/dot-login",children:"DOT Login"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"user-interface",children:"User Interface"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Block Explorers"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/topmonks/calamar",children:"Calamar"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkascan/explorer-api",children:"Polkascan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Colm3na/polkastats-backend",children:"Polkastats"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/subscan",children:"Subscan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/statescan-v2",children:"Statescan"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/edgeware-builders/edgscan",children:"Edgscan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3labs/epirus-substrate",children:"Sirato"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockcoders/ink-substrate-explorer-api",children:"ink! Explorer API"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/substats",children:"Substats"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hybrid-explorer/hybrid-dapp",children:"Hybrid Block Explorer"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"Mempool focused explorer (including parachain transaction)"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator Dashboards"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-telemetry",children:"Polkadot Telemetry"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/hashquark-io/polkacube-frontend",children:"Polkacube"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/buidl-labs/YieldScan",children:"YieldScan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-community/hubble/tree/master/app/controllers/polkadot",children:"Hubble"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ArthurHoeke/cyclops",children:"Cyclops"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/web3go-xyz/web3go-xyz-v2",children:"Web3Go"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/MathCryptoDoc/insights-1kv",children:"1kv insights"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Node Explorers"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/protos-research/polkadot-node-explorer",children:"Polkadot Node Explorer"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"NFT Explorer"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/kodadot/nft-gallery",children:"NFT Explorer for Kusama & Polkadot"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Governance Dashboards"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/governance-ui",children:"Polkadot Delegation Dashboard"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/premiurly/polkassembly",children:"Polkassembly"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/dotreasury",children:"dotreasury"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/bright/bright-tresury",children:"Bright Treasury"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/collaboration",children:"OpenSquare offchain voting"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/wpank/open-gov-insights",children:"OpenGov Insights"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/stake-plus/treasury-tracker",children:"Treasury Tracker"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/joepetrowski/opengov-cli",children:"OpenGov CLI"})," \ud83d\udfe1"]}),(0,h.jsxs)(e.td,{children:["UI for the Kusama and/or Polkadot treasury (see ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate/pull/5715",children:"bounty module"}),"), UI for Parachain Lease Offering (PLO)"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Staking"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/w3f/staking-rewards-collector",children:"Staking Rewards Collector"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/jackson-harris-iii/staking-rewards-viewer",children:"Staking Rewards Viewer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/cryptolab-network/polkadot-staking-site",children:"Polkadot Staking Site"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-staking-dashboard",children:"Polkadot Staking Dashboard"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/James-Sangalli/dot-validator-selector",children:"Polkadot/Kusama Validator Selector"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/James-Sangalli/dot-staking-income",children:"Staking Income CSV Generator"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Bridge UI"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-bridges-ui",children:"Parity Bridges UI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nutbox-dao/donut-interface",children:"Donut Interface (Steem - Dot)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RostislavLitovkin/PlutonicationServer",children:"Plutonication"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Parachain/Crowdloan"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/jhonalino/parachains.network",children:"Parachains.Network"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/CrommVardek/polk-auction-ui",children:"PolkAuction"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/10clouds/crowdloan-template",children:"Crowdloan Front End Template"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hack-ink/slothunter/",children:"Slothunter"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Identicon"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://polkadot.cloud/polkicon",children:"Polkicon"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/RidOne-technologies/polkadot-web-identicon",children:"PolkadotWebIdenticon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RidOne-technologies/polkadot-angular-identicon",children:"Polkadot Angular IdentIcon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Noc2/Bird-Identicon",children:"Bird Identicon"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Coretime"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LasticXYZ/LasticUI",children:"Lastic"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/RegionX-Labs/RegionX-Node",children:"RegionX"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://polkadot.cloud",children:"Polkadot Cloud"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/tien/dot-console",children:"\u0110\xd3TConsole"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/KappaSigmaMu/ksm-app",children:"KappaSigmaMu Fratority"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/DAOsign/daosign-ink-js-sdk/tree/main",children:"DAOSign"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/OAK-Foundation/quadratic-funding-webapp",children:"Quadratic Funding Webapp"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://gitlab.com/polkawatch/polkawatch",children:"Polkawatch"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/bytepayment/bytepay",children:"Bytepay"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Delmonicos/charging-management-platform",children:"charging-management-platform"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/TDSoftware/subidentity-webapp",children:"subidentity-webapp"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/paid-qa/",children:"OpenSquare Paid QA"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CrossChainLabs-DOT/dotpulse-api",children:"DotPulse"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bsn-si/rubeus-smartcontract",children:"Rubeus Keeper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/justmert/eco-flow-frontend",children:"Polkaflow"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/helikon-labs/chainviz",children:"ChainViz"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/fidi-tech/dotsight",children:"Dotsight"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://docs.sui.io/build/zk_login",children:"zkLogin"}),", Portfolio Viewer like Zapper or Zerion"]})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"tools-apis-and-languages",children:"Tools, APIs, and Languages"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Runtime/Parachain frameworks"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk",children:"Polkadot Blockchain SDK"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/gosemble",children:"Gosemble"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/subsembly",children:"Subsembly"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/parachain-utilities",children:"Parachain utilities"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gantree-io/gantree-core",children:"Gantree"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ideal-lab5",children:"Cryptex"})," \ud83d\udfe2"]}),(0,h.jsxs)(e.td,{children:["Tools to create parachains with other frameworks, like the ",(0,h.jsx)(e.a,{href:"https://github.com/cosmos/cosmos-sdk",children:"Cosmos SDK"})," or ",(0,h.jsx)(e.a,{href:"https://github.com/0xPolygon/cdk-validium-node",children:"Polygon CDK"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Client Libraries"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/polkadot-api/polkadot-api",children:"Polkadot-API - Typescript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/tien/reactive-dot",children:"Reactive DOT - Typescript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/capi",children:"Capi - Typescript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kodadot/packages/tree/main/sub-api",children:"sub-api"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/centrifuge/go-substrate-rpc-client",children:"Go"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/polkadot_api_dotnet",children:".Net"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SubstrateGaming/Substrate.NET.API",children:".NET Standard 2.0"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/SubstrateGaming/Substrate.NET.Toolchain",children:"Substrate .NET Toolchain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/polkadot_api_cpp",children:"C++"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/finoabanking/substrate-c-tool",children:"C"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/airalab/hs-web3",children:"Haskell"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/api",children:"Javascript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-api-sidecar",children:"Substrate API Sidecar - TypeScript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polkascan/py-substrate-interface",children:"Python"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/emeraldpay/polkaj",children:"Java (+ Android)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/strategyobject/substrate-client-java",children:"Substrate Client Java"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/scs/substrate-api-client",children:"Rust SCS"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/subxt",children:"Rust Parity (subxt)"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/philoniare/subxtpy",children:"subxtpy"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/trevor-crypto",children:"Rust pdotc"})," ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/php-substrate-api",children:"PHP (gmajor-encrypt)"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/neha0921/substrate-interface-package",children:"PHP (neha0921)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/frontier",children:"RPC-Ethereum"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/tesseract-one/Substrate.swift",children:"Swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NodleCode/substrate-client-kotlin",children:"Kotlin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/substrate-client-kotlin",children:"substrate-client-kotlin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/substrate-client-swift",children:"substrate-client-swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rankanizer/polkadart",children:"Dart"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polywrap/integrations",children:"Substrate Core Polywrapper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/substrate-sdk-ios",children:"Substrate SDK iOS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/substrate-sdk-android",children:"Substrate SDK Android"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dedotdev/dedot",children:"Dedot - Typescript"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"RPC Gateway"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/subway",children:"Subway"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Substrate Contract clients"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/go-patract",children:"PatractGo"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Easy Runtime Development"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/hack-ink/subalfred",children:"Subalfred"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/kaichaosun/substrate-stencil",children:"substrate-stencil"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kaichaosun/play-substrate",children:"Play Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/substrate-developer-hub/substrate-node-template",children:"substrate-node-template"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-playground",children:"Substrate Playground"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/as-substrate-runtime",children:"AssemblyScript Runtime Generation"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/clearloop/sup",children:"Substrate Package Manager"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/subsembly",children:"Subsembly: Framework for developing AssemblyScript Substrate Runtimes"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bkchr/diener",children:"dependency diener"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"IDE Plugins"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/vscode-substrate",children:"Substrate Marketplace VS Code Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/everstake/vscode-plugin-substrate",children:"VS Code Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/everstake/atom-plugin-substrate",children:"Atom Code Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/zombienet-vscode-extension",children:"zombienet extension"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Runtime/Pallet Security"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/srlabs/substrate-runtime-fuzzer",children:"Substrate Runtime Fuzzer"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/shawntabrizi/substrate-toml-lint",children:"Substrate Toml Lint"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kframework/wasm-semantics",children:"K specifications"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSecurity/polpatrol",children:"PolPatrol - Polkadot Runtime Checker"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:["Automated Runtime checking tools, economic audit simulator such as ",(0,h.jsx)(e.a,{href:"https://gauntlet.network/",children:"gauntlet.network"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Smart Contract Languages"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"#ink-smart-contracts",children:"ink!"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ask-lang/ask",children:"Ask!"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/slickup/subscript",children:"Subscript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hyperledger-labs/solang",children:"Solang"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/eigerco/pallet-move",children:"pallet-move"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pontem-network/sp-move",children:"Move VM Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/neatcoin/neatcoin",children:"Move smart contract by Neatcoin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pepyakin/substrate-seal-ebpf",children:"eBPF Contracts Hackathon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/koute/polkavm",children:"PolkaVM"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"Functional Programming Languages, other languages with developed toolchains"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Testing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-introspector",children:"Polkadot introspector"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/subdirectory/subshell",children:"Subshell"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/sc-simnode",children:"substrate-simnode"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/halva-suite/halva",children:"Halva"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/redspot",children:"Redspot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/mixbytes/tank",children:"MixBytes Tank"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NikVolf/sub-flood",children:"sub-flood"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-debug-kit",children:"Substrate debug-kit"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/JesseAbram/asset_cli_tool",children:"Asset CLI tool"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/JesseAbram/unfinished_testing_tool",children:"sub_crash"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chevdor/subwasm",children:"subwasm"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/ascjones/subsee",children:"subsee"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-lab",children:"polkadot-lab"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dwellir-public/rpc-perf/",children:"RPC-perf"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Static Analysis"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/KaiserKarel/substrace",children:"Substrace"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/simon-perriard/saft",children:"Static analyzer for Substrate FRAME's pallets"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CoinFabrik/scout",children:"CoinFabrik Scout"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Testnet"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/zombienet",children:"Zombienet"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/chopsticks",children:"Chopsticks"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-launch",children:"Polkadot Launch"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/koute/polkadot-starship",children:"polkadot-starship"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/maxsam4/fork-off-substrate",children:"Fork off Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/try-runtime-cli",children:"try-runtime-cli"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/parachain-launch",children:"Parachain Launch"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Zeeve-App/larch",children:"Larch Zombienet GUI"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Benchmarking"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/utils/frame/benchmarking-cli",children:"Benchmarking CLI"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-stps",children:"Polkadot sTPS"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/0xekez/clockchain",children:"Clockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/shawntabrizi/substrate-graph-benchmarks",children:"Substrate Graph Benchmarks"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Nikhil-Desai-Talentica/substrate-node-template-benchmarking",children:"ink! & pallet benchmarking template"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/smart-bench",children:"smart-bench"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Blockchain Indexing Engine"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/subsquid/squid-sdk",children:"Squid SDK"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/hybrid-explorer/hybrid-indexer",children:"Hybrid Indexer"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-archive",children:"Substrate Archive"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/polkadot_psql_indexer",children:"PSQL Indexer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/playzero/substrate-graph",children:"Substrate Graph"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OnFinality-io/subql",children:"Subquery"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/p2p-org/polkadot-profit-transformer",children:"MBELT3"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/kodadot/stick",children:"stick"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Infra3-Network/hyperdot",children:"Hyperdot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Blockchain/Event Monitoring"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/guardian",children:"Web3 Guardian"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/HugoByte/aurras-event-manager",children:"Aurras Event Manager"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hicommonwealth/chain-events",children:"@commonwealth/chain-events"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/massbitchain",children:"Massbit"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kianenigma/polkadot-basic-notification",children:"Polkadot Basic Notifications"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sodazone/ocelloids",children:"Ocelloids"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/TrackingChains/TrackingChain",children:"Tracking Chain"})," \u26aa,"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Gaming"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/PolkadotPlay/Polkadot.Unity.SDK",children:"Polkadot SDK for Unity"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/dodorare/crossbow",children:"Crossbow"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://assetstore.unity.com/packages/decentralization/infrastructure/polkadot-sdk-for-unity-273535",children:"Unity Asset Store"}),", ",(0,h.jsx)(e.a,{href:"https://amethyst.rs/",children:"Amethyst"})," + ",(0,h.jsx)(e.a,{href:"https://substrate.dev/",children:"Substrate"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"No-code Platforms"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/NovaBloq/Bubble-Plugin-Polkadot.js",children:"EzCode's Polkadot-JS plugin on Bubble.io"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Blackprint/nodes-polkadot.js",children:"Blackprint Visual Programming Polkadot-JS module"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subrelay/interface",children:"SubRelay"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/tien/dot-connect",children:"DOT Connect"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/TalismanSociety/talisman-connect",children:"Talisman Connect"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Koniverse/SubConnect",children:"SubWallet-SubConnect"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nova-wallet/metadata-portal",children:"Metadata Portal"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/tesseract-one/Tesseract.rs",children:"Tesseract"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/walletconnect-v2-monorepo",children:"WalletConnect"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/BitGo/BitGoJS/tree/master",children:"BitGoJS"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"XCM"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/trappist",children:"Trappist"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Moonsong-Labs/xcm-tools",children:"XCM-tools"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/substrate-api-rpc",children:"XCM-tools Golang"})," \u26aa,",(0,h.jsx)(e.a,{href:"https://github.com/paraspell/xcm-tools",children:"ParaSpell XCM Tools"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/t3rn/xbi",children:"XBI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockcoders/xcm-sdk",children:"XCM TS/JS SDK"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/XcmSend/app",children:"XCMSend"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/sodazone/xcm-monitoring/",children:"XCM Monitoring Server"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/moonbeam-foundation/xcm-sdk",children:"Moonbeam Foundation XCM-SDK"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/asset-transfer-api",children:"asset-transfer-api"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/txwrapper-core",children:"txwrapper-core"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/open-web3.js",children:"open-web3 JS library"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CycanTech/GVM-Bridge",children:"VM-Bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/srtool",children:"srtool"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/chevdor/srtool-cli",children:"srtool-cli"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-tip-bot",children:"Substrate Tip Bot"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/syntifi/ori",children:"ORI (Onchain Risk Intelligence)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/albertov19/PolkaTools",children:"PolkaTools"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-scripts",children:"polkadot-scripts"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/virto-network/sube",children:"Sube"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/data-store-sidecar",children:"data-store-sidecar"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SugarFunge/sugarfunge-node",children:"SugarFunge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/second-state/substrate-wasmedge",children:"substrate-wasmedge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/eightfish-org/eightfish",children:"EightFish"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/sandoxio/sandox",children:"Sandox"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/darwinia-network/apk-verifier/",children:"APK verifier"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"ink-smart-contracts",children:"ink! Smart Contracts"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Core Libraries"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/ink",children:"ink!"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/cargo-contract",children:"cargo-contract"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame/contracts",children:"pallet-contracts"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Local Nodes"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-contracts-node",children:"substrate-contracts-node"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/swankyhub/swanky-cli",children:"Swanky"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Smart Contract Development"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/drink",children:"DRink!"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/contracts-ui",children:"contracts-ui"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Smart-Beaver",children:"SmartBeaver"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/h4nsu/openbrush-contracts",children:"OpenBrush"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/727-Ventures/sol2ink",children:"Sol2Ink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/protofire/polkadot-contract-wizard",children:"Polkadot Contract Wizard"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/ink-wrapper",children:"ink-wrapper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/ink-playground",children:"ink-playground"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockchain-it-hr/ink-remix-plugin",children:"ink! Remix Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/standardweb3/signac/",children:"Signac"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/avirajkhare00/ink-boxes/",children:"ink!-boxes"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/avirajkhare00/ink-wizard",children:"ink!-smart-contract-wizard"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Security & Testing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/ink-waterfall",children:"ink! Waterfall"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3labs/ink-verifier-image",children:"Verifier Image for ink!"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Brushfam/patron-backend/",children:"Patron"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/inkscopexyz/inkscope-fuzzer",children:"Inkscope Fuzzer"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Frontend Development"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/scio-labs/inkathon",children:"ink!athon Boilerplate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/useink",children:"useink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/scio-labs/use-inkathon",children:"useInkathon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subsquid/squid-sdk/tree/master/substrate/ink-typegen",children:"ink-typegen"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Brushfam/typechain-polkadot",children:"Typechain Polkadot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"IDE Plugins"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ink-analyzer/ink-analyzer",children:"ink! Analyzer"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Bridges"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/dantenetwork/protocol-stack-for-ink",children:"Dante Protocol"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DeFi"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/pendulum-chain/pendulum-ink-wrapper",children:"Pendulum-Ink-Wrapper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RottenKiwi/Panorama-Swap-INK-SC",children:"Panorama Swap"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Juminstock/ink_bank",children:"ink_bank"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/realnimish/polkadot-amm",children:"Polkadot AMM"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/veradefi/defi",children:"Vera"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nsure-tech/dot-contract",children:"Nsure Insurance"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/CycanTech/ELC",children:"Everlasting Cash"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Coinversation/coinpro",children:"Coinversation"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zenlinkpro/zenlink-dex-contract",children:"zenlink-dex-contract"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ReserveLabs/AlgoCash",children:"AlgoCash"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{children:"New seigniorage-style stable coins"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Gaming"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/OpenEmojiBattler/open-emoji-battler",children:"Open Emoji Battler"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/WiktorStarczewski/newomega.polkadot/blob/master/newomega_delegator/newomega/newomega.rs",children:"NewOmega"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DAO"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/SyncraDAO/modular-dao",children:"SyncraDAO"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/subDAO-contracts",children:"subDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RainbowcityFoundation/RainbowDAO-Protocol-Ink-milestone_1",children:"RainbowDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Mangoboxlabs/Mangoboxink",children:"MangoBox"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Mangoboxlabs/MangoSaleV2",children:"MangoSale"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Identity/DID"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/TheDotflow",children:"Dotflow"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Oracles"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/diadata-org/dia-wasm-oracle",children:"DIA WASM Oracle"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Spam Protection"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/prosopo/captcha",children:"Prosopo"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Governance"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/AbaxFinance/Governance",children:"Abax Governance"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"NFT"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ArtZero-io/Contracts",children:"ArtZero"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/pnsproject/ink-aa",children:"Polkadot Smart Account"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/swankyhub/magink-dapp",children:"magink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/ink-test-contracts",children:"ink-test-contracts"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/agryaznov/candle-auction-ink",children:"Candle Auctions"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SubDAO-Network/polkasign-contract",children:"polkasign-contract"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bsn-si/ocex-cli",children:"OCEX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RoloiMoney/roloi-polkadot-w3f-grant",children:"Roloi"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadrys/openPayroll",children:"OpenPayroll"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/InkSmartContract/BlockchainFoodOrder",children:"BlockchainFoodOrder"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"chains-and-pallets",children:"Chains and Pallets"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Scalable Transactions"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/perun-network/perun-polkadot-pallet",children:"Perun channels"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/perun-network/perun-polkadot-demo",children:"CLI demo of Perun"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/Astar",children:"Astar"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/celer-network/cChannel-substrate",children:"Celer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/GunClear/Gunero",children:"Gunclear"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/BCS-Labs/tpscore-etl-system",children:"TPScore"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/auguth/pocs",children:"proof-of-contract-stake"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"roll-ups, DAG-based consensus mechanisms, side chains"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Bridges and Interoperability"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/interlay/interbtc",children:"interBTC"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/webb-tools/dkg-substrate",children:"DKG Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sygmaprotocol/sygma-substrate-pallets",children:"Sygma"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bifrost-finance/bifrost-eos-relay",children:"EOS by Bifrost"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-bridge",children:"POA - Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/akropolisio/POC-polkadai-bridge",children:"Substrate - Ethereum DAI Bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-bridge-relay",children:"Substrate - Substrate Bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chainx-org/ChainX",children:"BTC by ChainX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ChorusOne/wormhole-bridge",children:"Cosmos-Substrate bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/octopus-network/substrate-ibc",children:"Substrate IBC Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Snowfork/polkadot-ethereum",children:"Polkadot Ethereum Bridge"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/darwinia-network/darwinia",children:"Darwinia"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/pendulum-chain/spacewalk",children:"Spacewalk: a Stellar bridge"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/filecoindot",children:"Filecoindot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/centrifuge/axelar-cgp-substrate/tree/main",children:"Axelar-Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/hyperbridge",children:"Hyperbridge"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/t3rn/t3rn",children:"t3rn"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"ZCash"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Privacy"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LayerXcom/zero-chain",children:"ZeroChain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/xx-labs/xxchain",children:"xx network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Phala-Network/phala-blockchain",children:"pLibra (Phala Network)"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/automata-network/automata",children:"Automata Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zero-network/zero",children:"Zero Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/appliedblockchain/silentdata-polkadot",children:"Silent Data"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/anoma/masp",children:"Multi-Asset Shielded Pool (MASP)"})," , ",(0,h.jsx)(e.a,{href:"https://arxiv.org/pdf/2009.01020.pdf",children:"Zkay"}),", ",(0,h.jsx)(e.a,{href:"https://eprint.iacr.org/2018/962.pdf",children:"Zexe"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"ZKP"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/zeropoolnetwork/zeropool-substrate-groth16-example",children:"ZeroPool"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/megaclite",children:"Megaclite"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/zkmega",children:"zkMega"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/plonk",children:"PLONK for Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/webb-tools/protocol-substrate",children:"Webb Anchor Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bright/zk-snarks-with-substrate/",children:"zk-SNARKs tutorial"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Zkvers/substrate-zk",children:"substrate-zk"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/hyperfridge-r0",children:"hyperfridge-r0"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cyborg-Network/cyborg-parachain/tree/master",children:"Cyborg Network"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Manta-Network/Manta",children:"Manta"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"TEE"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Acurast/acurast-core",children:"Acurast"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/integritee-network/worker",children:"Integritee"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/scs/substraTEE",children:"substraTEE"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/wetee-dao/chain",children:"WeTEE"})," \ud83d\udfe2"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/keysafe-protocol/keysafe-app",children:"Keysafe Protocol"})," \u26aa"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DeFi"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/kapilsinha/privadex",children:"PrivaDEX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/uinb/fusotao",children:"Fusotao"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/reef-defi/reef-chain",children:"Reef"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Diora-Network/Diora",children:"Diora"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pendulum-chain/pendulum",children:"Pendulum Chain"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/compound-finance/gateway",children:"Compound Gateway"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/parallel-finance/parallel",children:"Parallel Finance"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/PINT",children:"PINT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/laminar-protocol/laminar-chain",children:"Laminar Chain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/Acala",children:"Acala"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/centrifuge/centrifuge-chain",children:"Centrifuge"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/stafiprotocol/stafi-node",children:"Stafi"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/y2labs-0sh/definex",children:"Definex"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OAXFoundation/parrot",children:"OAX Foundation"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/alexxuyang/substrate-dex",children:"Cybex"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zenlinkpro/pallet-zenlink",children:"Zenlink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/lsaether/pallet-swaps",children:"Swaps Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Polkadex-Substrate/Polkadex/tree/master",children:"Polkadex"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subdarkdex/subdex-parachain",children:"SubDEX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/hydration-node",children:"Hydration"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/apopiak/stablecoin",children:"Substrate Stablecoin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/digitalnativeinc/standard-substrate",children:"Standard protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sora-xor/sora2-network",children:"Polkaswap"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/equilibrium-eosdt/equilibrium-curve-amm",children:"Curve AMM"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/konomi-network/cumulus/",children:"Konomi Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nutsfinance/stable-asset",children:"Stable Asset"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/atscaletech/libra",children:"Libra Payment"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/mangata-finance/mangata-node",children:"Mangata"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tidelabs/tidechain",children:"Tidechain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/Basilisk-node",children:"Basilisk"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/PolymeshAssociation/Polymesh",children:"Polymesh"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/bifrost-io/bifrost",children:"Bifrost"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/clover-network/clover",children:"Clover"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ComposableFi/composable",children:"Composable Finance "})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/OmniBTC/PSC",children:"OmniBTC"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Polimec/polimec-node",children:"Polimec"})," \ud83d\udfe1"]}),(0,h.jsxs)(e.td,{children:["DEX with privacy and confidentiality features such as those found in a ",(0,h.jsx)(e.a,{href:"https://en.wikipedia.org/wiki/Dark_pool",children:"dark pool"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Smart contract chains"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/PureStake/moonbeam",children:"moonbeam"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Magport/Magnet",children:"Magnet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/aleph-node",children:"Aleph-node"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/hicommonwealth/edgeware-node",children:"Edgeware"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ParaState/substrate-ssvm-node",children:"ParaState"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gear-tech/gear",children:"gear"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/cennznet/cennznet",children:"CENNZnet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/skyekiwi/skyekiwi-network",children:"SkyeKiwi"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OAK-Foundation/OAK-blockchain",children:"OAK-blockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3labs/ice-substrate",children:"ICE Blockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OmniBTC/PSC",children:"Polkadot Smart Chain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/keep-starknet-strange/madara",children:"Madara - Cairo/Starknet"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"smart contract chains with novel security approaches, smart contract chains based on existing toolchains"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Oracle"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/tellor-io/tellor-pallet",children:"Tellor"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/laminar-protocol/open-runtime-module-library/tree/master/oracle",children:"Laminar"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/smartcontractkit/chainlink-polkadot",children:"Chainlink-polkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/aresprotocols/ares",children:"Ares Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Kylin-Network/kylin-node",children:"Kylin Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/interlay/interbtc-clients/tree/master/oracle",children:"interbtc-clients oracle"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/webb-tools/anonima",children:"Anonima"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SaaS3-Foundation/dRuntime-fat",children:"SaaS3"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tellor-io/tellor-parachain-contracts",children:"Tellor"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/diadata-org/bridgestate-ocw",children:"Bridgestate Oracle"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Identity/DID"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/parami-foundation/parami-blockchain",children:"Parami"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/litentry/litentry-parachain",children:"Litentry"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/substrate-developer-hub/pallet-did",children:"pallet-did"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/prasad-kumkar/dot-id",children:"dot-id"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"IoT"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/NodleCode/chain",children:"Nodle"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/DataHighway-DHX/node",children:"MXC/DataHighway"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/peaqnetwork/peaq-network-node",children:"peaq-network-node"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Verifiable Claims"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/KILTprotocol/kilt-node",children:"KILT"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/docknetwork/dock-substrate",children:"Dock"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Supply chain"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/digicatapult/dscp-node",children:"DSCP Node"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Health care"}),(0,h.jsx)(e.td,{}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Music Industry"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Allfeat/Allfeat",children:"Allfeat Network"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Data Availability"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/availproject/avail",children:"Avail"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ZeroDAO/melodot",children:"Melodot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Social Networking"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/frequency-chain/frequency",children:"Frequency"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/social-network/blockchain",children:"Social Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dappforce/subsocial-parachain",children:"SubSocial"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ZeroDAO/ZeroDAO-node",children:"ZeroDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/myriadsocial/myriad-node",children:"Myriad Node"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/randombishop/wika_etl",children:"Wika Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/listenofficial/listen-parachain",children:"Listen"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tribal-protocol/tribal_contract",children:"Tribal Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rust-0x0/hex-space-protocol-substrate",children:"Five Degrees on Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/acuity-social/acuity-substrate",children:"Acuity Social"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{children:"Private instant messenger that uses on-chain identity"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Governance/DAO"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/aisland-dao/aisland-node/tree/main",children:"Aisland Node"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hashed-io/hashed-substrate",children:"Hashed Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sunshine-protocol/sunshine-bounty",children:"Sunshine DAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NucleiStudio/governance-os",children:"Governance OS"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/idavollnetwork/idavoll",children:"Idavoll Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DoraFactory/Substrate-Moloch-V2",children:"Substrate Moloch"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Qrucial/QRUCIAL-DAO",children:"QRUCIAL-DAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sctllabs/societal-node",children:"Societal"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/daos-org/daos",children:"DAOs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/amiyatulu/shivarthu/",children:"Shivarthu"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/faterium",children:"Faterium"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/decentration/apps",children:"Supersig"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/deep-ink-ventures/genesis-dao-node",children:"GenesisDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dao-entrance/dao-entrance-node",children:"DAO Entrance"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/liberland/liberland_substrate",children:"Liberland"})," \ud83d\udfe2"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/consul/consul",children:"Consul"})," - Open Government and E-Participation Web Software"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Prediction Markets and Futarchy"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/zeitgeistpm/zeitgeist",children:"Zeitgeist"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/XPredictMarket/NodePredict",children:"X Predict Market"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Messaging"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/validitylabs/HOPR-PL-Substrate",children:"HOPR"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chainify/nolik",children:"Nolik"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Uke-Messaging/uke-pallet",children:"Uke"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Belsoft-rs/diffychat-pallet",children:"Diffy Chat"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/fennelLabs/Fennel-Protocol",children:"Fennel Protocol"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"File Storage, Cloud"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/dappforce/subsocial-offchain",children:"Subsocial-Offchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/playproject-io/datdot",children:"DatDot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/crustio/crust",children:"Crust Network"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/rs-ipfs/offchain-ipfs-manual",children:"offchain::ipfs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/canyon-network/canyon",children:"Canyon Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cumulus2021/cess",children:"CESS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/cess-proving-system",children:"CESS Proving Subsystem"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/ideal-lab5/iris",children:"Iris"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/fmd-cess",children:"fmd-cess"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DanHenton/pocket-substrate/tree/ipfs-ocw",children:"IPFS Frame V3"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/threefoldtech/tfchain",children:"Threefold Chain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Apron-Network/apron-node",children:"Apron"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/TDSoftware/substrate-ipfs",children:"IPFS Utilities"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://gitlab.com/dinfra/dinfra",children:"DINFRA"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Name Service"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/xaya/substrate-names",children:"Substrate Names"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hskang9/substrate-name-service",children:"ENS on Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pnsproject/pns-pallets",children:"PNS-Pallets"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/HeisenbergLin22/Faceless_milestone2_delivery",children:"Faceless"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ff13dfly/Anchor",children:"Anchor"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Gaming"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/bit-country/Bit-Country-Blockchain",children:"Bit.country"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SubGame-Network/subgame-network",children:"SubGame"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/playzero/subzero",children:"subzero"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3gamesofficial/web3games-blockchain",children:"Web3Games"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ajuna-network/ajuna-pallets",children:"Ajuna Pallets"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/cryptoviet/gafi",children:"Gafi Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://gitlab.com/asylum-space/asylum-item-nft",children:"Asylum"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/3Dpass/3DP",children:"3DPass"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polketio/toearnfun_flutter_app",children:"Polket"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Computation/AI"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Deitos-Network/deitos-ip",children:"Deitos Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DeepBrainChain/DeepBrainChain-MainChain",children:"DeepBrain Chain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/anudit/cerebrum",children:"AI Infrastructure on Blockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OriginTrail/neuroweb",children:"NeuroWeb"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Enable specific use-cases"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/deep-ink-ventures/pallet_hookpoints",children:"pallet-hookpoints"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/airalab/substrate-node-robonomics",children:"Robonomics"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/UniversalDot/pallets",children:"UniversalDOT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/EvercityEcosystem/evercity-chain",children:"Evercity Sustainable Finance Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/logion-network/logion-node",children:"logion"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Me-Protocol/rusty-protocol-v0.1/",children:"Me Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/QSTN-US/Polkadot-QSTN-v1/",children:"QSTN"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subcoin-project/subcoin",children:"Subcoin"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/AventusProtocolFoundation/avn-parachain",children:"Aventus"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"NFT"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/capsule-corp-ternoa/chain",children:"ternoa"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/danforbes/pallet-nft",children:"FRAME Pallet: NFTs for Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/UniqueNetwork/unique-chain",children:"Unique NFT Parachain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DNFT-Team/dnft-substrate-node/tree/master/pallets",children:"DNFT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rmrk-team/rmrk-substrate",children:"RMRK-Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Popular-Coding/nt-nft",children:"NT-NFTs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/GreenLemonProtocol/dksap-polkadot",children:"Green Lemon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/Basilisk-node",children:"Basilisk"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/freeverseio/laos",children:"LAOS"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Randomness"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/substrate/tree/randomness-beacon",children:"DKG and Randomness Beacon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/random-meat/drand-substrate-client",children:"drand-substrate-client"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Licensing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/anagolay/anagolay-chain",children:"Anagolay Network"})," ","\u2754"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Banking Integration"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/element36-io/ebics-java-service",children:"FIAT on-off-ramp"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Crowdfunding"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ImbueNetwork/imbue",children:"Imbue Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zhangjiannan/QFgrant",children:"Quadratic Funding pallet by Dora"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OAK-Foundation/quadratic-funding-pallet/tree/master",children:"Quadratic Funding pallet by OAK"})," \u26aa"]}),(0,h.jsx)(e.td,{children:(0,h.jsx)(e.a,{href:"https://ethresear.ch/t/minimal-anti-collusion-infrastructure/5413",children:"Minimum Anti-Collusion Infrastructure (MACI)"})})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Collection of Pallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/open-runtime-module-library",children:"Substrate Open Runtime Module Library"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/warehouse",children:"warehouse"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/InvArch/InvArch-Frames",children:"InvArch FRAME Pallet Library"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Marketplaces"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/WowLabz/dot-marketplace-v2/tree/Phase3_Milestone3",children:"Dot Marketplace"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hashed-io/hashed-substrate/tree/main/pallets/gated-marketplace",children:"Gated Marketplace"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Popular-Coding/ventur",children:"Ventur"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RELAI-Network/futur-protocol",children:"Futur Protocol"})," ","\u2754"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Carbon Credits"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/bitgreen/bitg-node",children:"BitGreen"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/EvercityEcosystem/carbon-assets",children:"Carbon Assets Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SequesterChain/pallets",children:"Sequester Pallets"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"UTXO"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Off-Narrative-Labs/Tuxedo",children:"Tuxedo"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Moonsong-Labs/moonkit",children:"Moonkit"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/gautamdhameja/substrate-account-filter",children:"Substrate Account Filter"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opentensor/subtensor",children:"Subtensor"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/AdMetaNetwork/admeta",children:"AdMeta"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chocolatenetwork/chocolate-node",children:"Chocolate Node"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/virto-network/virto-node",children:"Virto Network"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/gautamdhameja/substrate-validator-set",children:"Substrate Validator Set"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DEIPworld/deip-node",children:"DEIP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/debionetwork/debio-node",children:"DeBio"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/mathwallet/MathChain",children:"MathChain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/encointer/encointer-node",children:"encointer"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/grasslandnetwork/substrate_node",children:"Grassland"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rusty-crewmates/substrate-tutorials",children:"Substrate-Tutorials"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Fair-Squares/fair-squares",children:"Fair Squares"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/totem-tech/totem",children:"Totem Live Accounting"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/herou/EscrowPallet",children:"Escrow Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NexTokenTech/TREX",children:"TREX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/relationlabs/Relation-Graph",children:"Relation Graph"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gertt/Invoice",children:"Decentralized Invoice"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/redstone-network/redstone-node",children:"Redstone Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/WunderbarNetwork/access-control",children:"Access Control Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Omniverse-Web3-Labs/omniverse-swap/tree/web3-grant",children:"Omniverse DLT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/substrate-ismp",children:"ISMP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/xcmp_prototype_playground",children:"XCMP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dhiway/cord",children:"CORD Chain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/educhain",children:"Educhain"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"Decentralized review/reputation system"})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"host",children:"Host"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Rust"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate",children:"Substrate"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/cumulus",children:"Cumulus"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"C++"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/kagome",children:"Kagome"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/mayon",children:"Mayon"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Go"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/gossamer",children:"Gossamer"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Java"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/Fruzhin",children:"Fruzhin"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/java-host-research",children:"Java Host Research"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"AssemblyScript"}),(0,h.jsx)(e.td,{}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Light Client"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/smol-dot/smoldot",children:"smoldot"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-connect",children:"Substrate Connect"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/eqlabs/polkadot-light-client",children:"C++ Polkadot Light Client"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Testing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/polkadot-conformance",children:"Polkadot Conformance"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sigp/polkafuzz",children:"Polkafuzz"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"network-maintenance-tools",children:"Network Maintenance Tools"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Secure validator setup"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/polkachu/polkadot-validator",children:"Polkadot Validation Node Ansible Setup"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-validator-setup",children:"W3F Polkadot Validator Setup"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Nexus2k/polkadot-ansible",children:"polkadot-ansible"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"High availability setup"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/luguslabs/archipel",children:"Archipel"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/protofire/polkadot-failover-mechanism",children:"Polkadot Failover Mechanism"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Datagen-Project/Datagen-Substrate-Grant",children:"Datagen"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bright/substrate-raft",children:"High Availability Validator Setup"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Load Balanced Endpoints"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/insight-w3f/terragrunt-polkadot",children:"terragrunt-polkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sudoblockio/substrate-meta",children:"Geometry Labs' Substrate Meta repo"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Deployment Tools"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Blockdaemon/bpm-sdk",children:"Polkadot Package Manager"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/akropolisio/polkahub-monorepo",children:"PolkaHub"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AvadoDServer/AVADO-DNP-Polkadot-custom",children:"Avado"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-deployer",children:"Polkadot Deployer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/for-parity-with-love/unified-collator-node-deployment",children:"Unified Collator Deployment"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator monitoring"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/turboflakes/one-t",children:"ONE-T"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/helikon-labs/subvt-backend",children:"SubVT"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/SimplyVC/panic",children:"P.A.N.I.C."})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/polkalert",children:"Polkalert"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nodebreaker0-0/substrate/tree/prometheus_v0.3",children:"B-Harvest"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/stakezone/nmonpolkadot",children:"nmonpolkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ironoa/polkadot-k8s-monitor",children:"Polkadot-K8s-Monitor"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-watcher",children:"Polkadot-Watcher"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/helikon-labs/polkadot-kusama-1kv-telegram-bot",children:"1KV Telegram Bot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator payout management"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Colm3na/substrate-auto-payout",children:"Substrate validator auto payout"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-payouts",children:"Polkadot Payouts"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/emostov/staking-payouts",children:"staking-payouts CLI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/stakelink/substrate-payctl",children:"Payctl"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/turboflakes/crunch",children:"crunch"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Staking Miner"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/staking-miner-v2",children:"Staking Miner v2"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Nominator Tools"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/miepsik/validators_selection",children:"Validator Selection"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/filippoweb3/polkanalyzer",children:"Polkanalyzer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/filippoweb3/polkanalyzer-app",children:"Polkanalyzer-app"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"signatures",children:"Signatures"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"SR25519"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/w3f/schnorrkel",children:"rust"})," \u26aa(contains partial bindings for C, JavaScript, and Python), ",(0,h.jsx)(e.a,{href:"https://github.com/gautamdhameja/sr25519-dotnet",children:".Net bindings"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/sr25519",children:"C"})," \u26aa",(0,h.jsx)(e.em,{children:"(old)"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/TerenceGe/sr25519-donna",children:"C"})," \u26aa",(0,h.jsx)(e.em,{children:"(new)"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/soramitsu-sr25519-crust",children:"C/C++"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/sr25519_dotnet",children:"C#"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/go-schnorrkel",children:"Go"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/debuggor/schnorrkel-java",children:"java"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/sr25519-bindings",children:"PHP"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Signature Aggregation"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/w3f/apk-proofs",children:"apk-proofs"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Distributed key generation (DKG) or management"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/isislovecruft/frost-dalek",children:"keygen.rs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/sword",children:"Secure Wallet Origin Distribution (SWORD)"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator HSMs"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Zondax/buildroot-zondax",children:"Zondax Remote Signer"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"MPC"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/orochi-network/orochi-network.github.io",children:"Orochi Network"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"consensus",children:"Consensus"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"PoC"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/subspace/substrate",children:"Spartan"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"PoW"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/client/consensus/pow",children:"PoW consensus for Substrate"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/kulupu/kulupu/tree/master/pow",children:"RandomX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/substrate-developer-hub/recipes/tree/master/consensus/sha3pow",children:"Sha3 PoW"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Block production"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/client/consensus/babe",children:"BABE"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/client/consensus/aura",children:"Aura"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Finality"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame/grandpa",children:"GRANDPA"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/AlephBFT",children:"AlephBFT"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/PureStake/nimbus",children:"Nimbus: Upgradeable consensus framework"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"networking",children:"Networking"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"SCALE Codec"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-scale-codec",children:"Rust"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-scale-codec-ts",children:"TypeScript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkascan/py-scale-codec",children:"Python"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/gossamer/tree/development/pkg/scale/",children:"Golang Chainsafe"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/scale.go",children:"Golang Itering"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/MatthewDarnell/cScale",children:"C"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/scale-codec-cpp",children:"C++"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/api",children:"JavaScript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/as-scale-codec",children:"AssemblyScript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/airalab/hs-web3/tree/master/packages/scale/src/Codec",children:"Haskell"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/emeraldpay/polkaj",children:"Java"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/scale.rb",children:"Ruby"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nbltrust/dart-scale-codec",children:"Dart"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tesseract-one/swift-scale-codec",children:"Swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/scale-codec-swift",children:"scale-codec-swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/scale-codec-kotlin",children:"scale-codec-kotlin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/php-scale-codec",children:"PHP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/scale-codec-js-library",children:"JavaScript by Soramitsu"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/scale-codec-comparator",children:"Scale Codec Comparator"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/darwinia-network/darwinia-messages-sol/blob/master/contracts/utils/contracts/ScaleCodec.sol",children:"ScaleCodec.sol by Darwinia"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Snowfork/snowbridge/blob/main/core/packages/contracts/contracts/ScaleCodec.sol",children:"ScaleCodec.sol by Snowfork"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/arijitAD/dotscale",children:"Dotscale"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Networking Framework"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/libp2p/libp2p",children:"libp2p"})," \u26aa",(0,h.jsx)(e.a,{href:"https://github.com/algorealmInc/SwarmNL",children:"SwarmNL"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DHT Crawler"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/atredispartners/dht-crawler-polkadot",children:"Go"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/emeraldpay/polkabot",children:"Kotlin"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"RPC Tor-like access"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Evanesco-Labs/WhiteNoise.rs",children:"WhiteNoise"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"primitives",children:"Primitives"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Storage"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/frisitano/merkle-tree-db",children:"Merkle Tree DB"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Merkle Proofs"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/solidity-merkle-trees",children:"Solidity Trie Verifier"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h2,{id:"contributing",children:"Contributing"}),"\n",(0,h.jsx)(e.p,{children:"Pull requests, issues, or other contributions from the community are encouraged! You can not only\nadd specific projects, but also potentially interesting fields/areas which are currently missing in\nthe tech stack."}),"\n",(0,h.jsx)(e.p,{children:":heavy_exclamation_mark: All technologies listed above need to be open-source. Ideally, the links\nlead directly to the code."}),"\n",(0,h.jsx)(e.p,{children:(0,h.jsxs)(e.em,{children:["Note: You will need a GitHub account to suggest changes or open issues. If you do not have one, you\nmay ",(0,h.jsx)(e.a,{href:"https://github.com/join",children:"sign up for free"}),"."]})})]})}function d(t={}){const{wrapper:e}={...(0,i.R)(),...t.components};return e?(0,h.jsx)(e,{...t,children:(0,h.jsx)(l,{...t})}):l(t)}},28453:(t,e,s)=>{s.d(e,{R:()=>a,x:()=>n});var r=s(96540);const h={},i=r.createContext(h);function a(t){const e=r.useContext(i);return r.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function n(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(h):t.components||h:a(t.components),r.createElement(i.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/ccc1222e.ea54b2ab.js b/assets/js/ccc1222e.ea54b2ab.js new file mode 100644 index 0000000000..98bf4f2961 --- /dev/null +++ b/assets/js/ccc1222e.ea54b2ab.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[5702],{36136:(t,e,s)=>{s.r(e),s.d(e,{assets:()=>c,contentTitle:()=>n,default:()=>d,frontMatter:()=>a,metadata:()=>r,toc:()=>o});const r=JSON.parse('{"id":"build/build-open-source","title":"Open Source Stack","description":"Overview of the open source Polkadot/Kusama Tech Stack","source":"@site/../docs/build/build-open-source.md","sourceDirName":"build","slug":"/build-open-source","permalink":"/docs/build-open-source","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"matiascabello","lastUpdatedAt":1733321546000,"frontMatter":{"id":"build-open-source","title":"Open Source Stack","sidebar_label":"Open Source Stack","description":"Overview of the open source Polkadot/Kusama Tech Stack","keywords":["open","source","development","code","resources","tools","apis"],"slug":"../build-open-source"},"sidebar":"docs","previous":{"title":"Explorer, Data, & Indexing Tools","permalink":"/docs/build-data"},"next":{"title":"Hackathons","permalink":"/docs/build-hackathon"}}');var h=s(74848),i=s(28453);const a={id:"build-open-source",title:"Open Source Stack",sidebar_label:"Open Source Stack",description:"Overview of the open source Polkadot/Kusama Tech Stack",keywords:["open","source","development","code","resources","tools","apis"],slug:"../build-open-source"},n="Open Source Polkadot Stack ",c={},o=[{value:"About",id:"about",level:2},{value:"Layers of Polkadot Stack",id:"layers-of-polkadot-stack",level:2},{value:"Wallets",id:"wallets",level:3},{value:"User Interface",id:"user-interface",level:3},{value:"Tools, APIs, and Languages",id:"tools-apis-and-languages",level:3},{value:"ink! Smart Contracts",id:"ink-smart-contracts",level:3},{value:"Chains and Pallets",id:"chains-and-pallets",level:3},{value:"Host",id:"host",level:3},{value:"Network Maintenance Tools",id:"network-maintenance-tools",level:3},{value:"Signatures",id:"signatures",level:3},{value:"Consensus",id:"consensus",level:3},{value:"Networking",id:"networking",level:3},{value:"Primitives",id:"primitives",level:3},{value:"Contributing",id:"contributing",level:2}];function l(t){const e={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",header:"header",hr:"hr",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.R)(),...t.components};return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(e.header,{children:(0,h.jsx)(e.h1,{id:"open-source-polkadot-stack-",children:"Open Source Polkadot Stack "})}),"\n",(0,h.jsx)(e.admonition,{title:"Do your research before using open-source tools",type:"caution",children:(0,h.jsxs)(e.p,{children:["The tools listed here are open-source and are linked directly to their source code. Before using these tools to build your projects, always ",(0,h.jsx)(e.a,{href:"/docs/how-to-dyor",children:"do your research"})," and be aware of ",(0,h.jsx)(e.a,{href:"/docs/learn-scams",children:"scams"}),"."]})}),"\n",(0,h.jsx)(e.p,{children:"This page aims to provide an overview of the open-source Polkadot Tech Stack."}),"\n",(0,h.jsxs)(e.p,{children:["This is a living document, and we rely on everyone to contribute and help maintain\nit. ",(0,h.jsx)(e.a,{href:"#contributing",children:(0,h.jsx)(e.strong,{children:"Please feel free to make edits and additions via pull requests"})}),". We\napologize if we missed your project!"]}),"\n",(0,h.jsx)(e.hr,{}),"\n",(0,h.jsxs)(e.ul,{children:["\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#about",children:"About"})}),"\n",(0,h.jsxs)(e.li,{children:[(0,h.jsx)(e.a,{href:"#layers-of-polkadot-stack",children:"Layers of Polkadot Stack"}),"\n",(0,h.jsxs)(e.ul,{children:["\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#wallets",children:"Wallets"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#user-interface",children:"User Interface"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#tools-apis-and-languages",children:"Tools, APIs, and Languages"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#ink-smart-contracts",children:"ink! Smart Contracts"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#chains-and-pallets",children:"Chains and Pallets"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#host",children:"Host"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#network-maintenance-tools",children:"Network Maintenance Tools"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#signatures",children:"Signatures"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#consensus",children:"Consensus"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#networking",children:"Networking"})}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#primitives",children:"Primitives"})}),"\n"]}),"\n"]}),"\n",(0,h.jsx)(e.li,{children:(0,h.jsx)(e.a,{href:"#contributing",children:"Contributing"})}),"\n"]}),"\n",(0,h.jsx)(e.h2,{id:"about",children:"About"}),"\n",(0,h.jsxs)(e.p,{children:["The Polkadot Tech Stack is a subset of the Web 3.0 Tech Stack, which consists of the ",(0,h.jsx)(e.strong,{children:"open-source"}),"\ntechnologies contributing to and relying on ",(0,h.jsx)(e.a,{href:"https://polkadot.network/",children:"Polkadot"}),". It is meant to be used\nfor decentralized application (Dapp) development within numerous verticals, including DeFi, Gaming,\nProvenance and many others not pictured below."]}),"\n",(0,h.jsx)(e.pre,{children:(0,h.jsx)(e.code,{children:"|------|--------|------------|\n| DeFi | Gaming | Provenance |\n|______|________|____________|\n Dapps\n|--------------------------/-|\n| Explorers, Wallets / |\n|------------------------/---|\n| Tools, Apis, Languages/ |\n|----------------------/-----|\n| 2nd layer protocols / |\n|--------------------/-------|\n| Chains / other |\n|------------------/--- --|\n| *Polkadot* | tech |\n|------------------\\---------|\n| P2P, Crypto, Wasm \\ |\n|--------------------\\-------|\n"})}),"\n",(0,h.jsx)(e.h2,{id:"layers-of-polkadot-stack",children:"Layers of Polkadot Stack"}),"\n",(0,h.jsx)(e.p,{children:"In the below sections, you can find a list of different layers of the Polkadot Stack."}),"\n",(0,h.jsxs)(e.p,{children:[(0,h.jsx)(e.strong,{children:"Maintenance Status"}),":"]}),"\n",(0,h.jsxs)(e.ul,{children:["\n",(0,h.jsx)(e.li,{children:"\ud83d\udfe2 Actively maintained"}),"\n",(0,h.jsx)(e.li,{children:"\ud83d\udfe1 Stale (no activity on the main branch for one month)"}),"\n",(0,h.jsx)(e.li,{children:"\u26aa Unmaintained (no activity on the main branch for more than three months)"}),"\n"]}),"\n",(0,h.jsx)(e.h3,{id:"wallets",children:"Wallets"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Web Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/Multix",children:"Multix"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polkasafe/polkasafe-ui",children:"Polkasafe"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/apps",children:"polkadot-js/apps"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/TalismanSociety/talisman-web",children:"Talisman Web Application"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/enkryptcom/mydotwallet",children:"mydotwallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dappforce/subid",children:"Sub ID"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Primis-Labs/client",children:"Primis"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3finance/sakura",children:"Sakura"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/Web3Box-apps",children:"Web3Box"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CoongCrafts/coong-wallet",children:"Coong Wallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/subscan-multisig-react",children:"Subscan Multisig UI - React"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/subscan-multisig-ui",children:"Subscan Multisig UI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DoraFactory/dorafactory-multisig",children:"Dorafactory-Multisig"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/capi-multisig-app",children:"Capi Multisig App"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:["User-friendly Wallet based on the ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame/recovery",children:"Recovery Pallet"}),", Web wallets focused on user-onboarding (e.g. using ",(0,h.jsx)(e.a,{href:"https://github.com/near/near-wallet",children:"localStorage"}),")"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Desktop Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/nova-spektr",children:"nova-spektr"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/omni-desktop-prototype",children:"Omni desktop"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"Enterprise Wallets"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Browser Extensions"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/TalismanSociety/talisman",children:"Talisman-Extension"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Koniverse/SubWallet-Extension",children:"SubWallet-Extension"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/enkryptcom/enKrypt",children:"Enkrypt"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/extension",children:"Polkadot-JS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/PolkaGate/polkagate-extension",children:"PolkaGate"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/trustwallet",children:"Trust Wallet Extension"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainBridgeNetworkTeam/Doter",children:"Doter"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/GetSpeckle/speckle-browser-extension",children:"Speckle OS"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockcoders/kuma-wallet",children:"Kuma Cross-chain Wallet"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"Sign-in with your Polkadot, Kusama, etc. account."})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Mobile Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/nova-wallet-ios",children:"Nova Wallet iOS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/nova-wallet-android",children:"Nova Wallet Android"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-signer",children:"Polkadot Vault"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/fearless-Android",children:"Fearless Wallet Android"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/fearless-iOS",children:"Fearless Wallet iOS"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/trustwallet",children:"Trust Wallet"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Koniverse/SubWallet-Mobile",children:"SubWallet-Mobile"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Kalapaja/kampela-firmware",children:"Kampela"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/airgap-it/airgap-wallet",children:"AirGap"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Interstellar-Network/wallet-app",children:"Interstellar Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/luniehq/lunie",children:"Lunie"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkawallet-io/polkawallet-flutter",children:"Polkawallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/consenlabs/token-core",children:"imToken"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/stylo-app/stylo",children:"Stylo"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/fractapp/fractapp/",children:"Fractapp"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hypha-dao/hashed-wallet",children:"Hashed Wallet"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Burner Wallets/Faucet/Gifts"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/hamidra/dotdrop",children:"dotdrop"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/vue-polkadot/apps",children:"KodaDot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/astar-faucet-bot",children:"Astar Faucet Bot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/karooolis/sybil-resistant-substrate-faucet",children:"Generic sybil-resistant faucet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/StringNick/sybil-resistant-chat-bot-substrate-faucet",children:"sybil-resistant Chat Bot Faucet"})," ","\u2754"]}),(0,h.jsx)(e.td,{children:"Faucet (a sybil-resistant way to receive free tokens)"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Wallet Plugins"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/metamask-snap-polkadot",children:"Metamask-Snap by Chainsafe"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"CLI Wallet"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/yxf/subwallet",children:"Subwallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/canontech/proxy-hot-wallet",children:"Proxy-hot-wallet"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Hardware Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ZondaX/ledger-polkadot",children:"Ledger Polkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/ledger-kusama",children:"Ledger Kusama"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/ledger-statemint",children:"Ledger Statemint"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/ledger-statemine",children:"Ledger Statemine"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{children:"Trezor"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"OAuth2-compatible Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/singkeo/dot-login",children:"DOT Login"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"user-interface",children:"User Interface"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Block Explorers"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/topmonks/calamar",children:"Calamar"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkascan/explorer-api",children:"Polkascan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Colm3na/polkastats-backend",children:"Polkastats"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/subscan",children:"Subscan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/statescan-v2",children:"Statescan"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/edgeware-builders/edgscan",children:"Edgscan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3labs/epirus-substrate",children:"Sirato"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockcoders/ink-substrate-explorer-api",children:"ink! Explorer API"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/substats",children:"Substats"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hybrid-explorer/hybrid-dapp",children:"Hybrid Block Explorer"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"Mempool focused explorer (including parachain transaction)"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator Dashboards"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-telemetry",children:"Polkadot Telemetry"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/hashquark-io/polkacube-frontend",children:"Polkacube"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/buidl-labs/YieldScan",children:"YieldScan"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-community/hubble/tree/master/app/controllers/polkadot",children:"Hubble"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ArthurHoeke/cyclops",children:"Cyclops"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/web3go-xyz/web3go-xyz-v2",children:"Web3Go"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/MathCryptoDoc/insights-1kv",children:"1kv insights"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Node Explorers"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/protos-research/polkadot-node-explorer",children:"Polkadot Node Explorer"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"NFT Explorer"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/kodadot/nft-gallery",children:"NFT Explorer for Kusama & Polkadot"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Governance Dashboards"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/governance-ui",children:"Polkadot Delegation Dashboard"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/premiurly/polkassembly",children:"Polkassembly"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/dotreasury",children:"dotreasury"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/bright/bright-tresury",children:"Bright Treasury"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/collaboration",children:"OpenSquare offchain voting"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/wpank/open-gov-insights",children:"OpenGov Insights"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/stake-plus/treasury-tracker",children:"Treasury Tracker"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/joepetrowski/opengov-cli",children:"OpenGov CLI"})," \ud83d\udfe1"]}),(0,h.jsxs)(e.td,{children:["UI for the Kusama and/or Polkadot treasury (see ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate/pull/5715",children:"bounty module"}),"), UI for Parachain Lease Offering (PLO)"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Staking"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/w3f/staking-rewards-collector",children:"Staking Rewards Collector"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/jackson-harris-iii/staking-rewards-viewer",children:"Staking Rewards Viewer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/cryptolab-network/polkadot-staking-site",children:"Polkadot Staking Site"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-staking-dashboard",children:"Polkadot Staking Dashboard"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/James-Sangalli/dot-validator-selector",children:"Polkadot/Kusama Validator Selector"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/James-Sangalli/dot-staking-income",children:"Staking Income CSV Generator"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Bridge UI"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-bridges-ui",children:"Parity Bridges UI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nutbox-dao/donut-interface",children:"Donut Interface (Steem - Dot)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RostislavLitovkin/PlutonicationServer",children:"Plutonication"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Parachain/Crowdloan"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/jhonalino/parachains.network",children:"Parachains.Network"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/CrommVardek/polk-auction-ui",children:"PolkAuction"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/10clouds/crowdloan-template",children:"Crowdloan Front End Template"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hack-ink/slothunter/",children:"Slothunter"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Identicon"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://polkadot.cloud/polkicon",children:"Polkicon"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/RidOne-technologies/polkadot-web-identicon",children:"PolkadotWebIdenticon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RidOne-technologies/polkadot-angular-identicon",children:"Polkadot Angular IdentIcon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Noc2/Bird-Identicon",children:"Bird Identicon"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Coretime"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LasticXYZ/LasticUI",children:"Lastic"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/RegionX-Labs/RegionX-Node",children:"RegionX"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://polkadot.cloud",children:"Polkadot Cloud"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/tien/dot-console",children:"\u0110\xd3TConsole"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/KappaSigmaMu/ksm-app",children:"KappaSigmaMu Fratority"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/DAOsign/daosign-ink-js-sdk/tree/main",children:"DAOSign"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/OAK-Foundation/quadratic-funding-webapp",children:"Quadratic Funding Webapp"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://gitlab.com/polkawatch/polkawatch",children:"Polkawatch"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/bytepayment/bytepay",children:"Bytepay"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Delmonicos/charging-management-platform",children:"charging-management-platform"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/TDSoftware/subidentity-webapp",children:"subidentity-webapp"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opensquare-network/paid-qa/",children:"OpenSquare Paid QA"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CrossChainLabs-DOT/dotpulse-api",children:"DotPulse"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bsn-si/rubeus-smartcontract",children:"Rubeus Keeper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/justmert/eco-flow-frontend",children:"Polkaflow"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/helikon-labs/chainviz",children:"ChainViz"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/fidi-tech/dotsight",children:"Dotsight"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://docs.sui.io/build/zk_login",children:"zkLogin"}),", Portfolio Viewer like Zapper or Zerion"]})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"tools-apis-and-languages",children:"Tools, APIs, and Languages"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Runtime/Parachain frameworks"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk",children:"Polkadot Blockchain SDK"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/gosemble",children:"Gosemble"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/subsembly",children:"Subsembly"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/parachain-utilities",children:"Parachain utilities"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gantree-io/gantree-core",children:"Gantree"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ideal-lab5",children:"Cryptex"})," \ud83d\udfe2"]}),(0,h.jsxs)(e.td,{children:["Tools to create parachains with other frameworks, like the ",(0,h.jsx)(e.a,{href:"https://github.com/cosmos/cosmos-sdk",children:"Cosmos SDK"})," or ",(0,h.jsx)(e.a,{href:"https://github.com/0xPolygon/cdk-validium-node",children:"Polygon CDK"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Client Libraries"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/polkadot-api/polkadot-api",children:"Polkadot-API - Typescript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/tien/reactive-dot",children:"Reactive DOT - Typescript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/capi",children:"Capi - Typescript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kodadot/packages/tree/main/sub-api",children:"sub-api"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/centrifuge/go-substrate-rpc-client",children:"Go"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/polkadot_api_dotnet",children:".Net"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SubstrateGaming/Substrate.NET.API",children:".NET Standard 2.0"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/SubstrateGaming/Substrate.NET.Toolchain",children:"Substrate .NET Toolchain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/polkadot_api_cpp",children:"C++"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/finoabanking/substrate-c-tool",children:"C"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/airalab/hs-web3",children:"Haskell"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/api",children:"Javascript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-api-sidecar",children:"Substrate API Sidecar - TypeScript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polkascan/py-substrate-interface",children:"Python"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/emeraldpay/polkaj",children:"Java (+ Android)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/strategyobject/substrate-client-java",children:"Substrate Client Java"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/scs/substrate-api-client",children:"Rust SCS"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/subxt",children:"Rust Parity (subxt)"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/philoniare/subxtpy",children:"subxtpy"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/trevor-crypto",children:"Rust pdotc"})," ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/php-substrate-api",children:"PHP (gmajor-encrypt)"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/neha0921/substrate-interface-package",children:"PHP (neha0921)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/frontier",children:"RPC-Ethereum"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/tesseract-one/Substrate.swift",children:"Swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NodleCode/substrate-client-kotlin",children:"Kotlin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/substrate-client-kotlin",children:"substrate-client-kotlin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/substrate-client-swift",children:"substrate-client-swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rankanizer/polkadart",children:"Dart"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polywrap/integrations",children:"Substrate Core Polywrapper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/substrate-sdk-ios",children:"Substrate SDK iOS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/novasamatech/substrate-sdk-android",children:"Substrate SDK Android"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dedotdev/dedot",children:"Dedot - Typescript"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"RPC Gateway"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/subway",children:"Subway"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Substrate Contract clients"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/go-patract",children:"PatractGo"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Easy Runtime Development"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/hack-ink/subalfred",children:"Subalfred"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/kaichaosun/substrate-stencil",children:"substrate-stencil"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kaichaosun/play-substrate",children:"Play Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/substrate-developer-hub/substrate-node-template",children:"substrate-node-template"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-playground",children:"Substrate Playground"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/as-substrate-runtime",children:"AssemblyScript Runtime Generation"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/clearloop/sup",children:"Substrate Package Manager"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/subsembly",children:"Subsembly: Framework for developing AssemblyScript Substrate Runtimes"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bkchr/diener",children:"dependency diener"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"IDE Plugins"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/vscode-substrate",children:"Substrate Marketplace VS Code Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/everstake/vscode-plugin-substrate",children:"VS Code Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/everstake/atom-plugin-substrate",children:"Atom Code Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/zombienet-vscode-extension",children:"zombienet extension"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Runtime/Pallet Security"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/srlabs/substrate-runtime-fuzzer",children:"Substrate Runtime Fuzzer"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/shawntabrizi/substrate-toml-lint",children:"Substrate Toml Lint"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kframework/wasm-semantics",children:"K specifications"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSecurity/polpatrol",children:"PolPatrol - Polkadot Runtime Checker"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:["Automated Runtime checking tools, economic audit simulator such as ",(0,h.jsx)(e.a,{href:"https://gauntlet.network/",children:"gauntlet.network"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Smart Contract Languages"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"#ink-smart-contracts",children:"ink!"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ask-lang/ask",children:"Ask!"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/slickup/subscript",children:"Subscript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hyperledger-labs/solang",children:"Solang"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/eigerco/pallet-move",children:"pallet-move"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pontem-network/sp-move",children:"Move VM Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/neatcoin/neatcoin",children:"Move smart contract by Neatcoin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pepyakin/substrate-seal-ebpf",children:"eBPF Contracts Hackathon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/koute/polkavm",children:"PolkaVM"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"Functional Programming Languages, other languages with developed toolchains"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Testing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-introspector",children:"Polkadot introspector"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/subdirectory/subshell",children:"Subshell"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/sc-simnode",children:"substrate-simnode"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/halva-suite/halva",children:"Halva"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/redspot",children:"Redspot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/mixbytes/tank",children:"MixBytes Tank"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NikVolf/sub-flood",children:"sub-flood"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-debug-kit",children:"Substrate debug-kit"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/JesseAbram/asset_cli_tool",children:"Asset CLI tool"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/JesseAbram/unfinished_testing_tool",children:"sub_crash"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chevdor/subwasm",children:"subwasm"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/ascjones/subsee",children:"subsee"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-lab",children:"polkadot-lab"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dwellir-public/rpc-perf/",children:"RPC-perf"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Static Analysis"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/KaiserKarel/substrace",children:"Substrace"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/simon-perriard/saft",children:"Static analyzer for Substrate FRAME's pallets"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CoinFabrik/scout-audit",children:"CoinFabrik Scout"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Testnet"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/zombienet",children:"Zombienet"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/chopsticks",children:"Chopsticks"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-launch",children:"Polkadot Launch"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/koute/polkadot-starship",children:"polkadot-starship"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/maxsam4/fork-off-substrate",children:"Fork off Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/try-runtime-cli",children:"try-runtime-cli"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/parachain-launch",children:"Parachain Launch"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Zeeve-App/larch",children:"Larch Zombienet GUI"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Benchmarking"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/utils/frame/benchmarking-cli",children:"Benchmarking CLI"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-stps",children:"Polkadot sTPS"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/0xekez/clockchain",children:"Clockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/shawntabrizi/substrate-graph-benchmarks",children:"Substrate Graph Benchmarks"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Nikhil-Desai-Talentica/substrate-node-template-benchmarking",children:"ink! & pallet benchmarking template"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/smart-bench",children:"smart-bench"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Blockchain Indexing Engine"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/subsquid/squid-sdk",children:"Squid SDK"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/hybrid-explorer/hybrid-indexer",children:"Hybrid Indexer"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-archive",children:"Substrate Archive"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/polkadot_psql_indexer",children:"PSQL Indexer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/playzero/substrate-graph",children:"Substrate Graph"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OnFinality-io/subql",children:"Subquery"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/p2p-org/polkadot-profit-transformer",children:"MBELT3"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/kodadot/stick",children:"stick"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Infra3-Network/hyperdot",children:"Hyperdot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Blockchain/Event Monitoring"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/guardian",children:"Web3 Guardian"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/HugoByte/aurras-event-manager",children:"Aurras Event Manager"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hicommonwealth/chain-events",children:"@commonwealth/chain-events"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/massbitchain",children:"Massbit"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/kianenigma/polkadot-basic-notification",children:"Polkadot Basic Notifications"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sodazone/ocelloids",children:"Ocelloids"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/TrackingChains/TrackingChain",children:"Tracking Chain"})," \u26aa,"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Gaming"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/PolkadotPlay/Polkadot.Unity.SDK",children:"Polkadot SDK for Unity"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/dodorare/crossbow",children:"Crossbow"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://assetstore.unity.com/packages/decentralization/infrastructure/polkadot-sdk-for-unity-273535",children:"Unity Asset Store"}),", ",(0,h.jsx)(e.a,{href:"https://amethyst.rs/",children:"Amethyst"})," + ",(0,h.jsx)(e.a,{href:"https://substrate.dev/",children:"Substrate"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"No-code Platforms"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/NovaBloq/Bubble-Plugin-Polkadot.js",children:"EzCode's Polkadot-JS plugin on Bubble.io"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Blackprint/nodes-polkadot.js",children:"Blackprint Visual Programming Polkadot-JS module"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subrelay/interface",children:"SubRelay"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Wallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/tien/dot-connect",children:"DOT Connect"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/TalismanSociety/talisman-connect",children:"Talisman Connect"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Koniverse/SubConnect",children:"SubWallet-SubConnect"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nova-wallet/metadata-portal",children:"Metadata Portal"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/tesseract-one/Tesseract.rs",children:"Tesseract"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/walletconnect-v2-monorepo",children:"WalletConnect"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/BitGo/BitGoJS/tree/master",children:"BitGoJS"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"XCM"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/trappist",children:"Trappist"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Moonsong-Labs/xcm-tools",children:"XCM-tools"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/substrate-api-rpc",children:"XCM-tools Golang"})," \u26aa,",(0,h.jsx)(e.a,{href:"https://github.com/paraspell/xcm-tools",children:"ParaSpell XCM Tools"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/t3rn/xbi",children:"XBI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockcoders/xcm-sdk",children:"XCM TS/JS SDK"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/XcmSend/app",children:"XCMSend"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/sodazone/xcm-monitoring/",children:"XCM Monitoring Server"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/moonbeam-foundation/xcm-sdk",children:"Moonbeam Foundation XCM-SDK"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/asset-transfer-api",children:"asset-transfer-api"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/txwrapper-core",children:"txwrapper-core"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/open-web3.js",children:"open-web3 JS library"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CycanTech/GVM-Bridge",children:"VM-Bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/srtool",children:"srtool"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/chevdor/srtool-cli",children:"srtool-cli"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-tip-bot",children:"Substrate Tip Bot"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/syntifi/ori",children:"ORI (Onchain Risk Intelligence)"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/albertov19/PolkaTools",children:"PolkaTools"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-scripts",children:"polkadot-scripts"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/virto-network/sube",children:"Sube"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/data-store-sidecar",children:"data-store-sidecar"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SugarFunge/sugarfunge-node",children:"SugarFunge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/second-state/substrate-wasmedge",children:"substrate-wasmedge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/eightfish-org/eightfish",children:"EightFish"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/sandoxio/sandox",children:"Sandox"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/darwinia-network/apk-verifier/",children:"APK verifier"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"ink-smart-contracts",children:"ink! Smart Contracts"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Core Libraries"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/ink",children:"ink!"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/cargo-contract",children:"cargo-contract"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame/contracts",children:"pallet-contracts"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Local Nodes"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-contracts-node",children:"substrate-contracts-node"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/swankyhub/swanky-cli",children:"Swanky"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Smart Contract Development"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/drink",children:"DRink!"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/contracts-ui",children:"contracts-ui"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Smart-Beaver",children:"SmartBeaver"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/h4nsu/openbrush-contracts",children:"OpenBrush"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/727-Ventures/sol2ink",children:"Sol2Ink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/protofire/polkadot-contract-wizard",children:"Polkadot Contract Wizard"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/ink-wrapper",children:"ink-wrapper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/ink-playground",children:"ink-playground"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/blockchain-it-hr/ink-remix-plugin",children:"ink! Remix Plugin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/standardweb3/signac/",children:"Signac"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/avirajkhare00/ink-boxes/",children:"ink!-boxes"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/avirajkhare00/ink-wizard",children:"ink!-smart-contract-wizard"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Security & Testing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/ink-waterfall",children:"ink! Waterfall"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3labs/ink-verifier-image",children:"Verifier Image for ink!"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Brushfam/patron-backend/",children:"Patron"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/inkscopexyz/inkscope-fuzzer",children:"Inkscope Fuzzer"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Frontend Development"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/scio-labs/inkathon",children:"ink!athon Boilerplate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/useink",children:"useink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/scio-labs/use-inkathon",children:"useInkathon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subsquid/squid-sdk/tree/master/substrate/ink-typegen",children:"ink-typegen"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Brushfam/typechain-polkadot",children:"Typechain Polkadot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"IDE Plugins"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ink-analyzer/ink-analyzer",children:"ink! Analyzer"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Bridges"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/dantenetwork/protocol-stack-for-ink",children:"Dante Protocol"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DeFi"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/pendulum-chain/pendulum-ink-wrapper",children:"Pendulum-Ink-Wrapper"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RottenKiwi/Panorama-Swap-INK-SC",children:"Panorama Swap"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Juminstock/ink_bank",children:"ink_bank"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/realnimish/polkadot-amm",children:"Polkadot AMM"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/veradefi/defi",children:"Vera"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nsure-tech/dot-contract",children:"Nsure Insurance"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/CycanTech/ELC",children:"Everlasting Cash"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Coinversation/coinpro",children:"Coinversation"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zenlinkpro/zenlink-dex-contract",children:"zenlink-dex-contract"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ReserveLabs/AlgoCash",children:"AlgoCash"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{children:"New seigniorage-style stable coins"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Gaming"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/OpenEmojiBattler/open-emoji-battler",children:"Open Emoji Battler"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/WiktorStarczewski/newomega.polkadot/blob/master/newomega_delegator/newomega/newomega.rs",children:"NewOmega"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DAO"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/SyncraDAO/modular-dao",children:"SyncraDAO"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/subDAO-contracts",children:"subDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RainbowcityFoundation/RainbowDAO-Protocol-Ink-milestone_1",children:"RainbowDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Mangoboxlabs/Mangoboxink",children:"MangoBox"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Mangoboxlabs/MangoSaleV2",children:"MangoSale"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Identity/DID"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/TheDotflow",children:"Dotflow"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Oracles"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/diadata-org/dia-wasm-oracle",children:"DIA WASM Oracle"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Spam Protection"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/prosopo/captcha",children:"Prosopo"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Governance"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/AbaxFinance/Governance",children:"Abax Governance"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"NFT"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ArtZero-io/Contracts",children:"ArtZero"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/pnsproject/ink-aa",children:"Polkadot Smart Account"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/swankyhub/magink-dapp",children:"magink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/ink-test-contracts",children:"ink-test-contracts"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/agryaznov/candle-auction-ink",children:"Candle Auctions"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SubDAO-Network/polkasign-contract",children:"polkasign-contract"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bsn-si/ocex-cli",children:"OCEX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RoloiMoney/roloi-polkadot-w3f-grant",children:"Roloi"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadrys/openPayroll",children:"OpenPayroll"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/InkSmartContract/BlockchainFoodOrder",children:"BlockchainFoodOrder"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"chains-and-pallets",children:"Chains and Pallets"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Scalable Transactions"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/perun-network/perun-polkadot-pallet",children:"Perun channels"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/perun-network/perun-polkadot-demo",children:"CLI demo of Perun"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/Astar",children:"Astar"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/celer-network/cChannel-substrate",children:"Celer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/GunClear/Gunero",children:"Gunclear"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/BCS-Labs/tpscore-etl-system",children:"TPScore"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/auguth/pocs",children:"proof-of-contract-stake"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"roll-ups, DAG-based consensus mechanisms, side chains"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Bridges and Interoperability"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/interlay/interbtc",children:"interBTC"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/webb-tools/dkg-substrate",children:"DKG Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sygmaprotocol/sygma-substrate-pallets",children:"Sygma"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bifrost-finance/bifrost-eos-relay",children:"EOS by Bifrost"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-bridge",children:"POA - Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/akropolisio/POC-polkadai-bridge",children:"Substrate - Ethereum DAI Bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-bridge-relay",children:"Substrate - Substrate Bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chainx-org/ChainX",children:"BTC by ChainX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ChorusOne/wormhole-bridge",children:"Cosmos-Substrate bridge"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/octopus-network/substrate-ibc",children:"Substrate IBC Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Snowfork/polkadot-ethereum",children:"Polkadot Ethereum Bridge"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/darwinia-network/darwinia",children:"Darwinia"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/pendulum-chain/spacewalk",children:"Spacewalk: a Stellar bridge"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/filecoindot",children:"Filecoindot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/centrifuge/axelar-cgp-substrate/tree/main",children:"Axelar-Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/hyperbridge",children:"Hyperbridge"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/t3rn/t3rn",children:"t3rn"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"ZCash"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Privacy"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LayerXcom/zero-chain",children:"ZeroChain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/xx-labs/xxchain",children:"xx network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Phala-Network/phala-blockchain",children:"pLibra (Phala Network)"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/automata-network/automata",children:"Automata Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zero-network/zero",children:"Zero Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/appliedblockchain/silentdata-polkadot",children:"Silent Data"})," \u26aa"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/anoma/masp",children:"Multi-Asset Shielded Pool (MASP)"})," , ",(0,h.jsx)(e.a,{href:"https://arxiv.org/pdf/2009.01020.pdf",children:"Zkay"}),", ",(0,h.jsx)(e.a,{href:"https://eprint.iacr.org/2018/962.pdf",children:"Zexe"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"ZKP"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/zeropoolnetwork/zeropool-substrate-groth16-example",children:"ZeroPool"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/megaclite",children:"Megaclite"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/patractlabs/zkmega",children:"zkMega"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AstarNetwork/plonk",children:"PLONK for Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/webb-tools/protocol-substrate",children:"Webb Anchor Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bright/zk-snarks-with-substrate/",children:"zk-SNARKs tutorial"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Zkvers/substrate-zk",children:"substrate-zk"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/hyperfridge-r0",children:"hyperfridge-r0"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cyborg-Network/cyborg-parachain/tree/master",children:"Cyborg Network"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Manta-Network/Manta",children:"Manta"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"TEE"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Acurast/acurast-core",children:"Acurast"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/integritee-network/worker",children:"Integritee"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/scs/substraTEE",children:"substraTEE"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/wetee-dao/chain",children:"WeTEE"})," \ud83d\udfe2"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/keysafe-protocol/keysafe-app",children:"Keysafe Protocol"})," \u26aa"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DeFi"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/kapilsinha/privadex",children:"PrivaDEX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/uinb/fusotao",children:"Fusotao"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/reef-defi/reef-chain",children:"Reef"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Diora-Network/Diora",children:"Diora"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pendulum-chain/pendulum",children:"Pendulum Chain"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/compound-finance/gateway",children:"Compound Gateway"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/parallel-finance/parallel",children:"Parallel Finance"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/PINT",children:"PINT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/laminar-protocol/laminar-chain",children:"Laminar Chain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AcalaNetwork/Acala",children:"Acala"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/centrifuge/centrifuge-chain",children:"Centrifuge"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/stafiprotocol/stafi-node",children:"Stafi"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/y2labs-0sh/definex",children:"Definex"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OAXFoundation/parrot",children:"OAX Foundation"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/alexxuyang/substrate-dex",children:"Cybex"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zenlinkpro/pallet-zenlink",children:"Zenlink"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/lsaether/pallet-swaps",children:"Swaps Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Polkadex-Substrate/Polkadex/tree/master",children:"Polkadex"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subdarkdex/subdex-parachain",children:"SubDEX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/hydration-node",children:"Hydration"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/apopiak/stablecoin",children:"Substrate Stablecoin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/digitalnativeinc/standard-substrate",children:"Standard protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sora-xor/sora2-network",children:"Polkaswap"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/equilibrium-eosdt/equilibrium-curve-amm",children:"Curve AMM"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/konomi-network/cumulus/",children:"Konomi Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nutsfinance/stable-asset",children:"Stable Asset"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/atscaletech/libra",children:"Libra Payment"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/mangata-finance/mangata-node",children:"Mangata"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tidelabs/tidechain",children:"Tidechain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/Basilisk-node",children:"Basilisk"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/PolymeshAssociation/Polymesh",children:"Polymesh"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/bifrost-io/bifrost",children:"Bifrost"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/clover-network/clover",children:"Clover"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ComposableFi/composable",children:"Composable Finance "})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/OmniBTC/PSC",children:"OmniBTC"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Polimec/polimec-node",children:"Polimec"})," \ud83d\udfe1"]}),(0,h.jsxs)(e.td,{children:["DEX with privacy and confidentiality features such as those found in a ",(0,h.jsx)(e.a,{href:"https://en.wikipedia.org/wiki/Dark_pool",children:"dark pool"})]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Smart contract chains"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/PureStake/moonbeam",children:"moonbeam"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Magport/Magnet",children:"Magnet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/aleph-node",children:"Aleph-node"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/hicommonwealth/edgeware-node",children:"Edgeware"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ParaState/substrate-ssvm-node",children:"ParaState"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gear-tech/gear",children:"gear"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/cennznet/cennznet",children:"CENNZnet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/skyekiwi/skyekiwi-network",children:"SkyeKiwi"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OAK-Foundation/OAK-blockchain",children:"OAK-blockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3labs/ice-substrate",children:"ICE Blockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OmniBTC/PSC",children:"Polkadot Smart Chain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/keep-starknet-strange/madara",children:"Madara - Cairo/Starknet"})," \u26aa"]}),(0,h.jsx)(e.td,{children:"smart contract chains with novel security approaches, smart contract chains based on existing toolchains"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Oracle"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/tellor-io/tellor-pallet",children:"Tellor"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/laminar-protocol/open-runtime-module-library/tree/master/oracle",children:"Laminar"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/smartcontractkit/chainlink-polkadot",children:"Chainlink-polkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/aresprotocols/ares",children:"Ares Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Kylin-Network/kylin-node",children:"Kylin Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/interlay/interbtc-clients/tree/master/oracle",children:"interbtc-clients oracle"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/webb-tools/anonima",children:"Anonima"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SaaS3-Foundation/dRuntime-fat",children:"SaaS3"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tellor-io/tellor-parachain-contracts",children:"Tellor"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/diadata-org/bridgestate-ocw",children:"Bridgestate Oracle"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Identity/DID"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/parami-foundation/parami-blockchain",children:"Parami"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/litentry/litentry-parachain",children:"Litentry"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/substrate-developer-hub/pallet-did",children:"pallet-did"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/prasad-kumkar/dot-id",children:"dot-id"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"IoT"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/NodleCode/chain",children:"Nodle"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/DataHighway-DHX/node",children:"MXC/DataHighway"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/peaqnetwork/peaq-network-node",children:"peaq-network-node"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Verifiable Claims"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/KILTprotocol/kilt-node",children:"KILT"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/docknetwork/dock-substrate",children:"Dock"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Supply chain"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/digicatapult/dscp-node",children:"DSCP Node"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Health care"}),(0,h.jsx)(e.td,{}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Music Industry"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Allfeat/Allfeat",children:"Allfeat Network"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Data Availability"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/availproject/avail",children:"Avail"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/ZeroDAO/melodot",children:"Melodot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Social Networking"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/frequency-chain/frequency",children:"Frequency"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/social-network/blockchain",children:"Social Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dappforce/subsocial-parachain",children:"SubSocial"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ZeroDAO/ZeroDAO-node",children:"ZeroDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/myriadsocial/myriad-node",children:"Myriad Node"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/randombishop/wika_etl",children:"Wika Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/listenofficial/listen-parachain",children:"Listen"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tribal-protocol/tribal_contract",children:"Tribal Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rust-0x0/hex-space-protocol-substrate",children:"Five Degrees on Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/acuity-social/acuity-substrate",children:"Acuity Social"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{children:"Private instant messenger that uses on-chain identity"})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Governance/DAO"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/aisland-dao/aisland-node/tree/main",children:"Aisland Node"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hashed-io/hashed-substrate",children:"Hashed Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sunshine-protocol/sunshine-bounty",children:"Sunshine DAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NucleiStudio/governance-os",children:"Governance OS"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/idavollnetwork/idavoll",children:"Idavoll Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DoraFactory/Substrate-Moloch-V2",children:"Substrate Moloch"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Qrucial/QRUCIAL-DAO",children:"QRUCIAL-DAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sctllabs/societal-node",children:"Societal"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/daos-org/daos",children:"DAOs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/amiyatulu/shivarthu/",children:"Shivarthu"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/faterium",children:"Faterium"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/decentration/apps",children:"Supersig"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/deep-ink-ventures/genesis-dao-node",children:"GenesisDAO"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dao-entrance/dao-entrance-node",children:"DAO Entrance"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/liberland/liberland_substrate",children:"Liberland"})," \ud83d\udfe2"]}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/consul/consul",children:"Consul"})," - Open Government and E-Participation Web Software"]})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Prediction Markets and Futarchy"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/zeitgeistpm/zeitgeist",children:"Zeitgeist"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/XPredictMarket/NodePredict",children:"X Predict Market"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Messaging"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/validitylabs/HOPR-PL-Substrate",children:"HOPR"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chainify/nolik",children:"Nolik"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Uke-Messaging/uke-pallet",children:"Uke"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Belsoft-rs/diffychat-pallet",children:"Diffy Chat"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/fennelLabs/Fennel-Protocol",children:"Fennel Protocol"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"File Storage, Cloud"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/dappforce/subsocial-offchain",children:"Subsocial-Offchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/playproject-io/datdot",children:"DatDot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/crustio/crust",children:"Crust Network"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/rs-ipfs/offchain-ipfs-manual",children:"offchain::ipfs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/canyon-network/canyon",children:"Canyon Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Cumulus2021/cess",children:"CESS"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/cess-proving-system",children:"CESS Proving Subsystem"})," ","\u2754",", ",(0,h.jsx)(e.a,{href:"https://github.com/ideal-lab5/iris",children:"Iris"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/CESSProject/fmd-cess",children:"fmd-cess"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DanHenton/pocket-substrate/tree/ipfs-ocw",children:"IPFS Frame V3"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/threefoldtech/tfchain",children:"Threefold Chain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Apron-Network/apron-node",children:"Apron"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/TDSoftware/substrate-ipfs",children:"IPFS Utilities"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://gitlab.com/dinfra/dinfra",children:"DINFRA"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Name Service"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/xaya/substrate-names",children:"Substrate Names"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hskang9/substrate-name-service",children:"ENS on Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/pnsproject/pns-pallets",children:"PNS-Pallets"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/HeisenbergLin22/Faceless_milestone2_delivery",children:"Faceless"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ff13dfly/Anchor",children:"Anchor"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Gaming"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/bit-country/Bit-Country-Blockchain",children:"Bit.country"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SubGame-Network/subgame-network",children:"SubGame"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/playzero/subzero",children:"subzero"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/web3gamesofficial/web3games-blockchain",children:"Web3Games"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ajuna-network/ajuna-pallets",children:"Ajuna Pallets"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/cryptoviet/gafi",children:"Gafi Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://gitlab.com/asylum-space/asylum-item-nft",children:"Asylum"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/3Dpass/3DP",children:"3DPass"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polketio/toearnfun_flutter_app",children:"Polket"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Computation/AI"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Deitos-Network/deitos-ip",children:"Deitos Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DeepBrainChain/DeepBrainChain-MainChain",children:"DeepBrain Chain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/anudit/cerebrum",children:"AI Infrastructure on Blockchain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OriginTrail/neuroweb",children:"NeuroWeb"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Enable specific use-cases"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/deep-ink-ventures/pallet_hookpoints",children:"pallet-hookpoints"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/airalab/substrate-node-robonomics",children:"Robonomics"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/UniversalDot/pallets",children:"UniversalDOT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/EvercityEcosystem/evercity-chain",children:"Evercity Sustainable Finance Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/logion-network/logion-node",children:"logion"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Me-Protocol/rusty-protocol-v0.1/",children:"Me Protocol"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/QSTN-US/Polkadot-QSTN-v1/",children:"QSTN"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/subcoin-project/subcoin",children:"Subcoin"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/AventusProtocolFoundation/avn-parachain",children:"Aventus"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"NFT"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/capsule-corp-ternoa/chain",children:"ternoa"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/danforbes/pallet-nft",children:"FRAME Pallet: NFTs for Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/UniqueNetwork/unique-chain",children:"Unique NFT Parachain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DNFT-Team/dnft-substrate-node/tree/master/pallets",children:"DNFT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rmrk-team/rmrk-substrate",children:"RMRK-Substrate"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Popular-Coding/nt-nft",children:"NT-NFTs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/GreenLemonProtocol/dksap-polkadot",children:"Green Lemon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/Basilisk-node",children:"Basilisk"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/freeverseio/laos",children:"LAOS"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Randomness"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/substrate/tree/randomness-beacon",children:"DKG and Randomness Beacon"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/random-meat/drand-substrate-client",children:"drand-substrate-client"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Licensing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/anagolay/anagolay-chain",children:"Anagolay Network"})," ","\u2754"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Banking Integration"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/element36-io/ebics-java-service",children:"FIAT on-off-ramp"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Crowdfunding"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ImbueNetwork/imbue",children:"Imbue Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/zhangjiannan/QFgrant",children:"Quadratic Funding pallet by Dora"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/OAK-Foundation/quadratic-funding-pallet/tree/master",children:"Quadratic Funding pallet by OAK"})," \u26aa"]}),(0,h.jsx)(e.td,{children:(0,h.jsx)(e.a,{href:"https://ethresear.ch/t/minimal-anti-collusion-infrastructure/5413",children:"Minimum Anti-Collusion Infrastructure (MACI)"})})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Collection of Pallets"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/open-web3-stack/open-runtime-module-library",children:"Substrate Open Runtime Module Library"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/warehouse",children:"warehouse"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/InvArch/InvArch-Frames",children:"InvArch FRAME Pallet Library"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Marketplaces"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/WowLabz/dot-marketplace-v2/tree/Phase3_Milestone3",children:"Dot Marketplace"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/hashed-io/hashed-substrate/tree/main/pallets/gated-marketplace",children:"Gated Marketplace"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Popular-Coding/ventur",children:"Ventur"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/RELAI-Network/futur-protocol",children:"Futur Protocol"})," ","\u2754"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Carbon Credits"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/bitgreen/bitg-node",children:"BitGreen"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/EvercityEcosystem/carbon-assets",children:"Carbon Assets Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/SequesterChain/pallets",children:"Sequester Pallets"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"UTXO"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Off-Narrative-Labs/Tuxedo",children:"Tuxedo"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Moonsong-Labs/moonkit",children:"Moonkit"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/gautamdhameja/substrate-account-filter",children:"Substrate Account Filter"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/opentensor/subtensor",children:"Subtensor"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/AdMetaNetwork/admeta",children:"AdMeta"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/chocolatenetwork/chocolate-node",children:"Chocolate Node"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/virto-network/virto-node",children:"Virto Network"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/gautamdhameja/substrate-validator-set",children:"Substrate Validator Set"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/DEIPworld/deip-node",children:"DEIP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/debionetwork/debio-node",children:"DeBio"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/mathwallet/MathChain",children:"MathChain"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/encointer/encointer-node",children:"encointer"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/grasslandnetwork/substrate_node",children:"Grassland"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/rusty-crewmates/substrate-tutorials",children:"Substrate-Tutorials"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Fair-Squares/fair-squares",children:"Fair Squares"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/totem-tech/totem",children:"Totem Live Accounting"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/herou/EscrowPallet",children:"Escrow Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/NexTokenTech/TREX",children:"TREX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/relationlabs/Relation-Graph",children:"Relation Graph"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gertt/Invoice",children:"Decentralized Invoice"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/redstone-network/redstone-node",children:"Redstone Network"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/WunderbarNetwork/access-control",children:"Access Control Pallet"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Omniverse-Web3-Labs/omniverse-swap/tree/web3-grant",children:"Omniverse DLT"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/substrate-ismp",children:"ISMP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/xcmp_prototype_playground",children:"XCMP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/dhiway/cord",children:"CORD Chain"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/educhain",children:"Educhain"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{children:"Decentralized review/reputation system"})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"host",children:"Host"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Rust"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate",children:"Substrate"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/cumulus",children:"Cumulus"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"C++"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/kagome",children:"Kagome"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Zondax/mayon",children:"Mayon"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Go"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/gossamer",children:"Gossamer"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Java"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/Fruzhin",children:"Fruzhin"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/java-host-research",children:"Java Host Research"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"AssemblyScript"}),(0,h.jsx)(e.td,{}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Light Client"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/smol-dot/smoldot",children:"smoldot"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/substrate-connect",children:"Substrate Connect"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/eqlabs/polkadot-light-client",children:"C++ Polkadot Light Client"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Testing"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/polkadot-conformance",children:"Polkadot Conformance"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sigp/polkafuzz",children:"Polkafuzz"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"network-maintenance-tools",children:"Network Maintenance Tools"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Secure validator setup"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/polkachu/polkadot-validator",children:"Polkadot Validation Node Ansible Setup"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-validator-setup",children:"W3F Polkadot Validator Setup"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Nexus2k/polkadot-ansible",children:"polkadot-ansible"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"High availability setup"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/luguslabs/archipel",children:"Archipel"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/protofire/polkadot-failover-mechanism",children:"Polkadot Failover Mechanism"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Datagen-Project/Datagen-Substrate-Grant",children:"Datagen"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/bright/substrate-raft",children:"High Availability Validator Setup"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Load Balanced Endpoints"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/insight-w3f/terragrunt-polkadot",children:"terragrunt-polkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sudoblockio/substrate-meta",children:"Geometry Labs' Substrate Meta repo"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Deployment Tools"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Blockdaemon/bpm-sdk",children:"Polkadot Package Manager"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/akropolisio/polkahub-monorepo",children:"PolkaHub"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/AvadoDServer/AVADO-DNP-Polkadot-custom",children:"Avado"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-deployer",children:"Polkadot Deployer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/for-parity-with-love/unified-collator-node-deployment",children:"Unified Collator Deployment"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator monitoring"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/turboflakes/one-t",children:"ONE-T"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/helikon-labs/subvt-backend",children:"SubVT"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/SimplyVC/panic",children:"P.A.N.I.C."})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/galacticcouncil/polkalert",children:"Polkalert"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nodebreaker0-0/substrate/tree/prometheus_v0.3",children:"B-Harvest"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/stakezone/nmonpolkadot",children:"nmonpolkadot"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ironoa/polkadot-k8s-monitor",children:"Polkadot-K8s-Monitor"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-watcher",children:"Polkadot-Watcher"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/helikon-labs/polkadot-kusama-1kv-telegram-bot",children:"1KV Telegram Bot"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator payout management"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Colm3na/substrate-auto-payout",children:"Substrate validator auto payout"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f/polkadot-payouts",children:"Polkadot Payouts"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/emostov/staking-payouts",children:"staking-payouts CLI"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/stakelink/substrate-payctl",children:"Payctl"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/turboflakes/crunch",children:"crunch"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Staking Miner"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/staking-miner-v2",children:"Staking Miner v2"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Nominator Tools"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/miepsik/validators_selection",children:"Validator Selection"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/filippoweb3/polkanalyzer",children:"Polkanalyzer"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/filippoweb3/polkanalyzer-app",children:"Polkanalyzer-app"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"signatures",children:"Signatures"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"SR25519"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/w3f/schnorrkel",children:"rust"})," \u26aa(contains partial bindings for C, JavaScript, and Python), ",(0,h.jsx)(e.a,{href:"https://github.com/gautamdhameja/sr25519-dotnet",children:".Net bindings"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/sr25519",children:"C"})," \u26aa",(0,h.jsx)(e.em,{children:"(old)"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/TerenceGe/sr25519-donna",children:"C"})," \u26aa",(0,h.jsx)(e.em,{children:"(new)"}),", ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/soramitsu-sr25519-crust",children:"C/C++"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/usetech-llc/sr25519_dotnet",children:"C#"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/go-schnorrkel",children:"Go"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/debuggor/schnorrkel-java",children:"java"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/sr25519-bindings",children:"PHP"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Signature Aggregation"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/w3f/apk-proofs",children:"apk-proofs"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Distributed key generation (DKG) or management"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/isislovecruft/frost-dalek",children:"keygen.rs"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/w3f-grants-archive/sword",children:"Secure Wallet Origin Distribution (SWORD)"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Validator HSMs"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Zondax/buildroot-zondax",children:"Zondax Remote Signer"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"MPC"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/orochi-network/orochi-network.github.io",children:"Orochi Network"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"consensus",children:"Consensus"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"PoC"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/subspace/substrate",children:"Spartan"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"PoW"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/client/consensus/pow",children:"PoW consensus for Substrate"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/kulupu/kulupu/tree/master/pow",children:"RandomX"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/substrate-developer-hub/recipes/tree/master/consensus/sha3pow",children:"Sha3 PoW"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Block production"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/client/consensus/babe",children:"BABE"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/client/consensus/aura",children:"Aura"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Finality"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame/grandpa",children:"GRANDPA"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/Cardinal-Cryptography/AlephBFT",children:"AlephBFT"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Other"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/PureStake/nimbus",children:"Nimbus: Upgradeable consensus framework"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"networking",children:"Networking"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"SCALE Codec"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-scale-codec",children:"Rust"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/paritytech/parity-scale-codec-ts",children:"TypeScript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/polkascan/py-scale-codec",children:"Python"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/ChainSafe/gossamer/tree/development/pkg/scale/",children:"Golang Chainsafe"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/scale.go",children:"Golang Itering"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/MatthewDarnell/cScale",children:"C"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/scale-codec-cpp",children:"C++"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/polkadot-js/api",children:"JavaScript"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/LimeChain/as-scale-codec",children:"AssemblyScript"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/airalab/hs-web3/tree/master/packages/scale/src/Codec",children:"Haskell"})," \ud83d\udfe1, ",(0,h.jsx)(e.a,{href:"https://github.com/emeraldpay/polkaj",children:"Java"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/itering/scale.rb",children:"Ruby"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/nbltrust/dart-scale-codec",children:"Dart"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/tesseract-one/swift-scale-codec",children:"Swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/scale-codec-swift",children:"scale-codec-swift"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/sublabdev/scale-codec-kotlin",children:"scale-codec-kotlin"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/php-scale-codec",children:"PHP"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/soramitsu/scale-codec-js-library",children:"JavaScript by Soramitsu"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/gmajor-encrypt/scale-codec-comparator",children:"Scale Codec Comparator"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/darwinia-network/darwinia-messages-sol/blob/master/contracts/utils/contracts/ScaleCodec.sol",children:"ScaleCodec.sol by Darwinia"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/Snowfork/snowbridge/blob/main/core/packages/contracts/contracts/ScaleCodec.sol",children:"ScaleCodec.sol by Snowfork"})," \ud83d\udfe2, ",(0,h.jsx)(e.a,{href:"https://github.com/arijitAD/dotscale",children:"Dotscale"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Networking Framework"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/libp2p/libp2p",children:"libp2p"})," \u26aa",(0,h.jsx)(e.a,{href:"https://github.com/algorealmInc/SwarmNL",children:"SwarmNL"})," \ud83d\udfe2"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"DHT Crawler"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/atredispartners/dht-crawler-polkadot",children:"Go"})," \u26aa, ",(0,h.jsx)(e.a,{href:"https://github.com/emeraldpay/polkabot",children:"Kotlin"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"RPC Tor-like access"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/Evanesco-Labs/WhiteNoise.rs",children:"WhiteNoise"})," \u26aa"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h3,{id:"primitives",children:"Primitives"}),"\n",(0,h.jsxs)(e.table,{children:[(0,h.jsx)(e.thead,{children:(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.th,{children:"Components"}),(0,h.jsx)(e.th,{children:"Existing projects"}),(0,h.jsx)(e.th,{children:"Potentially interesting projects"})]})}),(0,h.jsxs)(e.tbody,{children:[(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Storage"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/frisitano/merkle-tree-db",children:"Merkle Tree DB"})," \u26aa"]}),(0,h.jsx)(e.td,{})]}),(0,h.jsxs)(e.tr,{children:[(0,h.jsx)(e.td,{children:"Merkle Proofs"}),(0,h.jsxs)(e.td,{children:[(0,h.jsx)(e.a,{href:"https://github.com/polytope-labs/solidity-merkle-trees",children:"Solidity Trie Verifier"})," \ud83d\udfe1"]}),(0,h.jsx)(e.td,{})]})]})]}),"\n",(0,h.jsx)(e.h2,{id:"contributing",children:"Contributing"}),"\n",(0,h.jsx)(e.p,{children:"Pull requests, issues, or other contributions from the community are encouraged! You can not only\nadd specific projects, but also potentially interesting fields/areas which are currently missing in\nthe tech stack."}),"\n",(0,h.jsx)(e.p,{children:":heavy_exclamation_mark: All technologies listed above need to be open-source. Ideally, the links\nlead directly to the code."}),"\n",(0,h.jsx)(e.p,{children:(0,h.jsxs)(e.em,{children:["Note: You will need a GitHub account to suggest changes or open issues. If you do not have one, you\nmay ",(0,h.jsx)(e.a,{href:"https://github.com/join",children:"sign up for free"}),"."]})})]})}function d(t={}){const{wrapper:e}={...(0,i.R)(),...t.components};return e?(0,h.jsx)(e,{...t,children:(0,h.jsx)(l,{...t})}):l(t)}},28453:(t,e,s)=>{s.d(e,{R:()=>a,x:()=>n});var r=s(96540);const h={},i=r.createContext(h);function a(t){const e=r.useContext(i);return r.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function n(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(h):t.components||h:a(t.components),r.createElement(i.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/main.48d8ce52.js b/assets/js/main.9b46aaa5.js similarity index 99% rename from assets/js/main.48d8ce52.js rename to assets/js/main.9b46aaa5.js index 61929b65ee..022a733f30 100644 --- a/assets/js/main.48d8ce52.js +++ b/assets/js/main.9b46aaa5.js @@ -1,2 +1,2 @@ -/*! For license information please see main.48d8ce52.js.LICENSE.txt */ -(self.webpackChunk=self.webpackChunk||[]).push([[8792],{55600:(e,t,n)=>{"use strict";n.d(t,{Bc:()=>A,E8:()=>Zn,a1:()=>Yn});var r=n(96540);n(40961);function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n=0;--o){var i=this.tryEntries[o],s=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),l=r.call(i,"finallyLoc");if(c&&l){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),P(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;P(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:I(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}function v(e,t){return v=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},v(e,t)}function x(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,a,o,i,s=[],c=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,a=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw a}}return s}}(e,t)||k(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 w(e){return function(e){if(Array.isArray(e))return a(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||k(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 k(e,t){if(e){if("string"==typeof e)return a(e,t);var n={}.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)?a(e,t):void 0}}function _(e){var t="function"==typeof Map?new Map:void 0;return _=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return function(e,t,n){if(m())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var a=new(e.bind.apply(e,r));return n&&v(a,n.prototype),a}(e,arguments,p(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),v(n,e)},_(e)}function S(){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 E(){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 j=["translations"],O="Ctrl",A=r.forwardRef((function(e,t){var n=e.translations,a=void 0===n?{}:n,o=b(e,j),i=a.buttonText,s=void 0===i?"Search":i,c=a.buttonAriaLabel,l=void 0===c?"Search":c,u=x((0,r.useState)(null),2),p=u[0],f=u[1];(0,r.useEffect)((function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?f("\u2318"):f(O))}),[]);var m=x(p===O?[O,"Ctrl",r.createElement(S,null)]:["Meta","Command",p],3),h=m[0],g=m[1],y=m[2];return r.createElement("button",d({type:"button",className:"DocSearch DocSearch-Button","aria-label":"".concat(l," (").concat(g,"+K)")},o,{ref:t}),r.createElement("span",{className:"DocSearch-Button-Container"},r.createElement(E,null),r.createElement("span",{className:"DocSearch-Button-Placeholder"},s)),r.createElement("span",{className:"DocSearch-Button-Keys"},null!==p&&r.createElement(r.Fragment,null,r.createElement(C,{reactsToKey:h},y),r.createElement(C,{reactsToKey:"k"},"K"))))}));function C(e){var t=e.reactsToKey,n=e.children,a=x((0,r.useState)(!1),2),o=a[0],i=a[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:o?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"},n)}function P(e,t){var n=void 0;return function(){for(var r=arguments.length,a=new Array(r),o=0;oe.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function W(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 K(e){for(var t=1;t=3||2===n&&r>=4||1===n&&r>=10);function o(t,n,r){if(a&&void 0!==r){var o=r[0].__autocomplete_algoliaCredentials,i={"X-Algolia-Application-Id":o.appId,"X-Algolia-API-Key":o.apiKey};e.apply(void 0,[t].concat($(n),[{headers:i}]))}else e.apply(void 0,[t].concat($(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setAuthenticatedUserToken:function(t){e("setAuthenticatedUserToken",t)},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&o("clickedObjectIDsAfterSearch",Q(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&o("clickedObjectIDs",Q(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&o("convertedObjectIDsAfterSearch",Q(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&o("convertedObjectIDs",Q(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&t.reduce((function(e,t){var n=t.items,r=V(t,U);return[].concat($(e),$(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r0&&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 X(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}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 ee(e){return function(e){if(Array.isArray(e))return te(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 te(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)?te(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 te(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&se({onItemsChange:a,items:n,insights:l,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive,a=!1;function u(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:re(re({},s?{clickAnalytics:!0}:{}),e?{userToken:ue(e)}:{}),insights:l}})}c("addAlgoliaAgent","insights-plugin"),u(),c("onUserTokenChange",(function(e){a||u(e)})),c("getUserToken",null,(function(e,t){a||u(t)})),c("onAuthenticatedUserTokenChange",(function(e){e?(a=!0,u(e)):(a=!1,c("getUserToken",null,(function(e,t){return u(t)})))})),c("getAuthenticatedUserToken",null,(function(e,t){t&&(a=!0,u(t))})),n((function(e){var t=e.item,n=e.state,r=e.event,a=e.source;X(t)&&o({state:n,event:r,insights:l,item:t,insightsEvents:[re({eventName:"Item Selected"},F({item:t,items:a.getItems().filter(X)}))]})})),r((function(e){var t=e.item,n=e.source,r=e.state,a=e.event;X(t)&&i({state:r,event:a,insights:l,item:t,insightsEvents:[re({eventName:"Item Active"},F({item:t,items:n.getItems().filter(X)}))]})}))},onStateChange:function(e){var t=e.state;d({state:t})},__autocomplete_pluginOptions:e}}function le(){var e,t=arguments.length>1?arguments[1]:void 0;return[].concat(ee(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),["autocomplete-internal"],ee(null!==(e=t.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}function ue(e){return"number"==typeof e?e.toString():e}function de(e,t){var n=t;return{then:function(t,r){return de(e.then(fe(t,n,e),fe(r,n,e)),n)},catch:function(t){return de(e.catch(fe(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),de(e.finally(fe(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 pe(e){return de(e,{isCanceled:!1,onCancelList:[]})}function fe(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}function me(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var a=(null===t?-1:t)+e;return a<=-1||a>=n?null===r?null:0:a}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;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:"autocomplete-".concat(I++),plugins:a,initialState:Ne({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),a.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),a.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),a.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 Te(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 Te(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)?Te(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.")}()}(a.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:D,onResolve:D};Object.keys(t).forEach((function(e){t[e].__default=!0}));var r=ge(ge({},t),e);return Promise.resolve(r)})))}))}(e,n)}))).then((function(e){return T(e)})).then((function(e){return e.map((function(e){return Ne(Ne({},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:Ne({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 De(e){return De="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},De(e)}function Me(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 Fe(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(e,Qe);nt&&a.environment.clearTimeout(nt);var l=c.setCollections,u=c.setIsOpen,d=c.setQuery,p=c.setActiveItemId,f=c.setStatus,m=c.setContext;if(d(o),p(a.defaultActiveItemId),!o&&!1===a.openOnFocus){var h,g=s.getState().collections.map((function(e){return Ze(Ze({},e),{},{items:[]})}));f("idle"),l(g),u(null!==(h=r.isOpen)&&void 0!==h?h:a.shouldPanelOpen({state:s.getState()}));var b=pe(rt(g).then((function(){return Promise.resolve()})));return s.pendingRequests.add(b)}f("loading"),nt=a.environment.setTimeout((function(){f("stalled")}),a.stallThreshold);var y=pe(rt(a.getSources(Ze({query:o,refresh:i,state:s.getState()},c)).then((function(e){return Promise.all(e.map((function(e){return Promise.resolve(e.getItems(Ze({query:o,refresh:i,state:s.getState()},c))).then((function(t){return function(e,t,n){if(a=e,Boolean(null==a?void 0:a.execute)){var r="algolia"===e.requesterId?Object.assign.apply(Object,[{}].concat(He(Object.keys(n.context).map((function(e){var t;return null===(t=n.context[e])||void 0===t?void 0:t.__algoliaSearchParameters}))))):{};return qe(qe({},e),{},{requests:e.queries.map((function(n){return{query:"algolia"===e.requesterId?qe(qe({},n),{},{params:qe(qe({},r),n.params)}):n,sourceId:t,transformResponse:e.transformResponse}}))})}var a;return{items:e,sourceId:t}}(t,e.sourceId,s.getState())}))}))).then(Ke).then((function(t){var n,r=t.some((function(e){return function(e){return!Array.isArray(e)&&Boolean(null==e?void 0:e._automaticInsights)}(e.items)}));return r&&m({algoliaInsightsPlugin:Ze(Ze({},(null===(n=s.getState().context)||void 0===n?void 0:n.algoliaInsightsPlugin)||{}),{},{__automaticInsights:r})}),function(e,t,n){return t.map((function(t){var r,a=e.filter((function(e){return e.sourceId===t.sourceId})),o=a.map((function(e){return e.items})),i=a[0].transformResponse,s=i?i({results:r=o,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)}):o;return t.onResolve({source:t,results:o,items:s,state:n.getState()}),s.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:s}}))}(t,e,s)})).then((function(e){return function(e){var t=e.props,n=e.state,r=e.collections.reduce((function(e,t){return Fe(Fe({},e),{},Be({},t.source.sourceId,Fe(Fe({},t.source),{},{getItems:function(){return T(t.items)}})))}),{}),a=t.plugins.reduce((function(e,t){return t.reshape?t.reshape(e):e}),{sourcesBySourceId:r,state:n}).sourcesBySourceId;return T(t.reshape({sourcesBySourceId:a,sources:Object.values(a),state:n})).filter(Boolean).map((function(e){return{source:e,items:e.getItems()}}))}({collections:e,props:a,state:s.getState()})}))})))).then((function(e){var n;f("idle"),l(e);var d=a.shouldPanelOpen({state:s.getState()});u(null!==(n=r.isOpen)&&void 0!==n?n:a.openOnFocus&&!o&&d||d);var p=ve(s.getState());if(null!==s.getState().activeItemId&&p){var m=p.item,h=p.itemInputValue,g=p.itemUrl,b=p.source;b.onActive(Ze({event:t,item:m,itemInputValue:h,itemUrl:g,refresh:i,source:b,state:s.getState()},c))}})).finally((function(){f("idle"),nt&&a.environment.clearTimeout(nt)}));return s.pendingRequests.add(y)}function ot(e){return ot="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},ot(e)}var it=["event","props","refresh","store"];function st(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 ct(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function wt(e){var t=e.props,n=e.refresh,r=e.store,a=xt(e,dt);return{getEnvironmentProps:function(e){var n=e.inputElement,a=e.formElement,o=e.panelElement;function i(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[a,o].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 yt({onTouchStart:i,onMouseDown:i,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},xt(e,pt))},getRootProps:function(e){return yt({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-controls":r.getState().isOpen?r.getState().collections.map((function(e){var n=e.source;return xe(t.id,"list",n)})).join(" "):void 0,"aria-labelledby":xe(t.id,"label")},e)},getFormProps:function(e){return e.inputElement,yt({action:"",noValidate:!0,role:"search",onSubmit:function(o){var i;o.preventDefault(),t.onSubmit(yt({event:o,refresh:n,state:r.getState()},a)),r.dispatch("submit",null),null===(i=e.inputElement)||void 0===i||i.blur()},onReset:function(o){var i;o.preventDefault(),t.onReset(yt({event:o,refresh:n,state:r.getState()},a)),r.dispatch("reset",null),null===(i=e.inputElement)||void 0===i||i.focus()}},xt(e,ft))},getLabelProps:function(e){return yt({htmlFor:xe(t.id,"input"),id:xe(t.id,"label")},e)},getInputProps:function(e){var o;function i(e){(t.openOnFocus||Boolean(r.getState().query))&&at(yt({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},a)),r.dispatch("focus",null)}var s=e||{};s.inputElement;var c=s.maxLength,l=void 0===c?512:c,u=xt(s,mt),d=ve(r.getState()),p=function(e){return Boolean(e&&e.match(we))}((null===(o=t.environment.navigator)||void 0===o?void 0:o.userAgent)||""),f=t.enterKeyHint||(null!=d&&d.itemUrl&&!p?"go":"search");return yt({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&null!==r.getState().activeItemId?xe(t.id,"item-".concat(r.getState().activeItemId),null==d?void 0:d.source):void 0,"aria-controls":r.getState().isOpen?r.getState().collections.map((function(e){var n=e.source;return xe(t.id,"list",n)})).join(" "):void 0,"aria-labelledby":xe(t.id,"label"),value:r.getState().completion||r.getState().query,id:xe(t.id,"input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:f,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:l,type:"search",onChange:function(e){var o=e.currentTarget.value;t.ignoreCompositionEvents&&ke(e).isComposing?a.setQuery(o):at(yt({event:e,props:t,query:o.slice(0,l),refresh:n,store:r},a))},onCompositionEnd:function(e){at(yt({event:e,props:t,query:e.currentTarget.value.slice(0,l),refresh:n,store:r},a))},onKeyDown:function(e){ke(e).isComposing||function(e){var t=e.event,n=e.props,r=e.refresh,a=e.store,o=function(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(e,it);if("ArrowUp"===t.key||"ArrowDown"===t.key){var i=function(){var e=ve(a.getState()),t=n.environment.document.getElementById(xe(n.id,"item-".concat(a.getState().activeItemId),null==e?void 0:e.source));t&&(t.scrollIntoViewIfNeeded?t.scrollIntoViewIfNeeded(!1):t.scrollIntoView(!1))},s=function(){var e=ve(a.getState());if(null!==a.getState().activeItemId&&e){var n=e.item,i=e.itemInputValue,s=e.itemUrl,c=e.source;c.onActive(ct({event:t,item:n,itemInputValue:i,itemUrl:s,refresh:r,source:c,state:a.getState()},o))}};t.preventDefault(),!1===a.getState().isOpen&&(n.openOnFocus||Boolean(a.getState().query))?at(ct({event:t,props:n,query:a.getState().query,refresh:r,store:a},o)).then((function(){a.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),s(),setTimeout(i,0)})):(a.dispatch(t.key,{}),s(),i())}else if("Escape"===t.key)t.preventDefault(),a.dispatch(t.key,null),a.pendingRequests.cancelAll();else if("Tab"===t.key)a.dispatch("blur",null),a.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===a.getState().activeItemId||a.getState().collections.every((function(e){return 0===e.items.length})))return void(n.debug||a.pendingRequests.cancelAll());t.preventDefault();var c=ve(a.getState()),l=c.item,u=c.itemInputValue,d=c.itemUrl,p=c.source;if(t.metaKey||t.ctrlKey)void 0!==d&&(p.onSelect(ct({event:t,item:l,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:a.getState()},o)),n.navigator.navigateNewTab({itemUrl:d,item:l,state:a.getState()}));else if(t.shiftKey)void 0!==d&&(p.onSelect(ct({event:t,item:l,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:a.getState()},o)),n.navigator.navigateNewWindow({itemUrl:d,item:l,state:a.getState()}));else if(t.altKey);else{if(void 0!==d)return p.onSelect(ct({event:t,item:l,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:a.getState()},o)),void n.navigator.navigate({itemUrl:d,item:l,state:a.getState()});at(ct({event:t,nextState:{isOpen:!1},props:n,query:u,refresh:r,store:a},o)).then((function(){p.onSelect(ct({event:t,item:l,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:a.getState()},o))}))}}}(yt({event:e,props:t,refresh:n,store:r},a))},onFocus:i,onBlur:D,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},u)},getPanelProps:function(e){return yt({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},e)},getListProps:function(e){var n=e||{},r=n.source,a=xt(n,ht);return yt({role:"listbox","aria-labelledby":xe(t.id,"label"),id:xe(t.id,"list",r)},a)},getItemProps:function(e){var o=e.item,i=e.source,s=xt(e,gt);return yt({id:xe(t.id,"item-".concat(o.__autocomplete_id),i),role:"option","aria-selected":r.getState().activeItemId===o.__autocomplete_id,onMouseMove:function(e){if(o.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",o.__autocomplete_id);var t=ve(r.getState());if(null!==r.getState().activeItemId&&t){var i=t.item,s=t.itemInputValue,c=t.itemUrl,l=t.source;l.onActive(yt({event:e,item:i,itemInputValue:s,itemUrl:c,refresh:n,source:l,state:r.getState()},a))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var s=i.getItemInputValue({item:o,state:r.getState()}),c=i.getItemUrl({item:o,state:r.getState()});(c?Promise.resolve():at(yt({event:e,nextState:{isOpen:!1},props:t,query:s,refresh:n,store:r},a))).then((function(){i.onSelect(yt({event:e,item:o,itemInputValue:s,itemUrl:c,refresh:n,source:i,state:r.getState()},a))}))}},s)}}}function kt(e){return kt="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},kt(e)}function _t(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;t0&&r.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},r.createElement("p",{className:"DocSearch-Help"},c,":"),r.createElement("ul",null,f.slice(0,3).reduce((function(e,t){return[].concat(w(e),[r.createElement("li",{key:t},r.createElement("button",{className:"DocSearch-Prefill",key:t,type:"button",onClick:function(){a.setQuery(t.toLowerCase()+" "),a.refresh(),a.inputRef.current.focus()}},t))])}),[]))),a.getMissingResultsUrl&&r.createElement("p",{className:"DocSearch-Help"},"".concat(u," "),r.createElement("a",{href:a.getMissingResultsUrl({query:a.state.query}),target:"_blank",rel:"noopener noreferrer"},p)))}var nn=["hit","attribute","tagName"];function rn(e,t){return t.split(".").reduce((function(e,t){return null!=e&&e[t]?e[t]:null}),e)}function an(e){var t=e.hit,n=e.attribute,a=e.tagName,o=void 0===a?"span":a,i=b(e,nn);return(0,r.createElement)(o,g(g({},i),{},{dangerouslySetInnerHTML:{__html:rn(t,"_snippetResult.".concat(n,".value"))||rn(t,n)}}))}function on(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(sn,d({key:[e.title,t.objectID].join(":"),item:t,index:n},e))})))):null}function sn(e){var t=e.item,n=e.index,a=e.renderIcon,o=e.renderAction,i=e.getItemProps,s=e.onItemClick,c=e.collection,l=e.hitComponent,u=x(r.useState(!1),2),p=u[0],f=u[1],m=x(r.useState(!1),2),h=m[0],g=m[1],b=r.useRef(null),y=l;return r.createElement("li",d({className:["DocSearch-Hit",t.__docsearch_parent&&"DocSearch-Hit--Child",p&&"DocSearch-Hit--deleting",h&&"DocSearch-Hit--favoriting"].filter(Boolean).join(" "),onTransitionEnd:function(){b.current&&b.current()}},i({item:t,source:c.source,onClick:function(e){s(t,e)}})),r.createElement(y,{hit:t},r.createElement("div",{className:"DocSearch-Hit-Container"},a({item:t,index:n}),t.hierarchy[t.type]&&"lvl1"===t.type&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(an,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.lvl1"}),t.content&&r.createElement(an,{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(an,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.".concat(t.type)}),r.createElement(an,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),"content"===t.type&&r.createElement("div",{className:"DocSearch-Hit-content-wrapper"},r.createElement(an,{className:"DocSearch-Hit-title",hit:t,attribute:"content"}),r.createElement(an,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),o({item:t,runDeleteTransition:function(e){f(!0),b.current=e},runFavoriteTransition:function(e){g(!0),b.current=e}}))))}function cn(e,t,n){return e.reduce((function(e,r){var a=t(r);return e.hasOwnProperty(a)||(e[a]=[]),e[a].length<(n||5)&&e[a].push(r),e}),{})}function ln(e){return e}function un(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}function dn(){}var pn=/(|<\/mark>)/g,fn=RegExp(pn.source);function mn(e){var t,n,r=e;if(!r.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var a=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;return a?a.value&&fn.test(a.value)?a.value.replace(pn,""):a.value:e.hierarchy.lvl0}function hn(e){return r.createElement("div",{className:"DocSearch-Dropdown-Container"},e.state.collections.map((function(t){if(0===t.items.length)return null;var n=mn(t.items[0]);return r.createElement(on,d({},e,{key:t.source.sourceId,title:n,collection:t,renderIcon:function(e){var n,a=e.item,o=e.index;return r.createElement(r.Fragment,null,a.__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"},a.__docsearch_parent!==(null===(n=t.items[o+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(Kt,{type:a.type})))},renderAction:function(){return r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement(Vt,null))}}))})),e.resultsFooterComponent&&r.createElement("section",{className:"DocSearch-HitsFooter"},r.createElement(e.resultsFooterComponent,{state:e.state})))}var gn=["translations"];function bn(e){var t=e.translations,n=void 0===t?{}:t,a=b(e,gn),o=n.recentSearchesTitle,i=void 0===o?"Recent":o,s=n.noRecentSearchesText,c=void 0===s?"No recent searches":s,l=n.saveRecentSearchButtonTitle,u=void 0===l?"Save this search":l,p=n.removeRecentSearchButtonTitle,f=void 0===p?"Remove this search from history":p,m=n.favoriteSearchesTitle,h=void 0===m?"Favorite":m,g=n.removeFavoriteSearchButtonTitle,y=void 0===g?"Remove this search from favorites":g;return"idle"===a.state.status&&!1===a.hasCollections?a.disableUserPersonalization?null:r.createElement("div",{className:"DocSearch-StartScreen"},r.createElement("p",{className:"DocSearch-Help"},c)):!1===a.hasCollections?null:r.createElement("div",{className:"DocSearch-Dropdown-Container"},r.createElement(on,d({},a,{title:i,collection:a.state.collections[0],renderIcon:function(){return r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement($t,null))},renderAction:function(e){var t=e.item,n=e.runFavoriteTransition,o=e.runDeleteTransition;return r.createElement(r.Fragment,null,r.createElement("div",{className:"DocSearch-Hit-action"},r.createElement("button",{className:"DocSearch-Hit-action-button",title:u,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){a.favoriteSearches.add(t),a.recentSearches.remove(t),a.refresh()}))}},r.createElement(Yt,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(),o((function(){a.recentSearches.remove(t),a.refresh()}))}},r.createElement(Ht,null))))}})),r.createElement(on,d({},a,{title:h,collection:a.state.collections[1],renderIcon:function(){return r.createElement("div",{className:"DocSearch-Hit-icon"},r.createElement(Yt,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:y,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){a.favoriteSearches.remove(t),a.refresh()}))}},r.createElement(Ht,null)))}})))}var yn=["translations"],vn=r.memo((function(e){var t=e.translations,n=void 0===t?{}:t,a=b(e,yn);if("error"===a.state.status)return r.createElement(Jt,{translations:null==n?void 0:n.errorScreen});var o=a.state.collections.some((function(e){return e.items.length>0}));return a.state.query?!1===o?r.createElement(tn,d({},a,{translations:null==n?void 0:n.noResultsScreen})):r.createElement(hn,a):r.createElement(bn,d({},a,{hasCollections:o,translations:null==n?void 0:n.startScreen}))}),(function(e,t){return"loading"===t.state.status||"stalled"===t.state.status})),xn=["translations"];function wn(e){var t=e.translations,n=void 0===t?{}:t,a=b(e,xn),o=n.resetButtonTitle,i=void 0===o?"Clear the query":o,s=n.resetButtonAriaLabel,c=void 0===s?"Clear the query":s,l=n.cancelButtonText,u=void 0===l?"Cancel":l,p=n.cancelButtonAriaLabel,f=void 0===p?"Cancel":p,m=n.searchInputLabel,h=void 0===m?"Search":m,g=a.getFormProps({inputElement:a.inputRef.current}).onReset;return r.useEffect((function(){a.autoFocus&&a.inputRef.current&&a.inputRef.current.focus()}),[a.autoFocus,a.inputRef]),r.useEffect((function(){a.isFromSelection&&a.inputRef.current&&a.inputRef.current.select()}),[a.isFromSelection,a.inputRef]),r.createElement(r.Fragment,null,r.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:g},r.createElement("label",d({className:"DocSearch-MagnifierLabel"},a.getLabelProps()),r.createElement(E,null),r.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},h)),r.createElement("div",{className:"DocSearch-LoadingIndicator"},r.createElement(qt,null)),r.createElement("input",d({className:"DocSearch-Input",ref:a.inputRef},a.getInputProps({inputElement:a.inputRef.current,autoFocus:a.autoFocus,maxLength:64}))),r.createElement("button",{type:"reset",title:i,className:"DocSearch-Reset","aria-label":c,hidden:!a.state.query},r.createElement(Ht,null))),r.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":f,onClick:a.onClose},u))}var kn=["_highlightResult","_snippetResult"];function _n(e){var t=e.key,n=e.limit,r=void 0===n?5:n,a=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),o=a.getItem().slice(0,r);return{add:function(e){var t=e;t._highlightResult,t._snippetResult;var n=b(t,kn),i=o.findIndex((function(e){return e.objectID===n.objectID}));i>-1&&o.splice(i,1),o.unshift(n),o=o.slice(0,r),a.setItem(o)},remove:function(e){o=o.filter((function(t){return t.objectID!==e.objectID})),a.setItem(o)},getAll:function(){return o}}}function Sn(e){var t,n="algolia-client-js-".concat(e.key);function r(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function a(){return JSON.parse(r().getItem(n)||"{}")}function o(e){r().setItem(n,JSON.stringify(e))}return{get:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){var n,r,i;return n=e.timeToLive?1e3*e.timeToLive:null,r=a(),o(i=Object.fromEntries(Object.entries(r).filter((function(e){return void 0!==x(e,2)[1].timestamp})))),n&&o(Object.fromEntries(Object.entries(i).filter((function(e){var t=x(e,2)[1],r=(new Date).getTime();return!(t.timestamp+n2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then((function(e){return Promise.all([e,n.miss(e)])})).then((function(e){return x(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,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(e,r,a).catch((function(){return En({caches:t}).get(e,r,a)}))},set:function(e,r){return n.set(e,r).catch((function(){return En({caches:t}).set(e,r)}))},delete:function(e){return n.delete(e).catch((function(){return En({caches:t}).delete(e)}))},clear:function(){return n.clear().catch((function(){return En({caches:t}).clear()}))}}}function jn(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(n,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},o=JSON.stringify(n);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);var i=r();return i.then((function(e){return a.miss(e)})).then((function(){return i}))},set:function(n,r){return t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function On(e){var t=e.algoliaAgents,n=e.client,r=e.version,a=function(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var n="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(n)&&(t.value="".concat(t.value).concat(n)),t}};return t}(r).add({segment:n,version:r});return t.forEach((function(e){return a.add(e)})),a}var An=12e4;function Cn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"up",n=Date.now();return g(g({},e),{},{status:t,lastUpdate:n,isUp:function(){return"up"===t||Date.now()-n>An},isTimedOut:function(){return"timed out"===t&&Date.now()-n<=An}})}var Pn=function(){function e(t,n){var r;return c(this,e),u(r=s(this,e,[t]),"name","AlgoliaError"),n&&(r.name=n),r}return f(e,_(Error)),l(e)}(),Tn=function(){function e(t,n,r){var a;return c(this,e),u(a=s(this,e,[t,r]),"stackTrace",void 0),a.stackTrace=n,a}return f(e,Pn),l(e)}(),In=function(){function e(t){return c(this,e),s(this,e,["Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support.",t,"RetryError"])}return f(e,Tn),l(e)}(),Nn=function(){function e(t,n,r){var a,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"ApiError";return c(this,e),u(a=s(this,e,[t,r,o]),"status",void 0),a.status=n,a}return f(e,Tn),l(e)}(),Ln=function(){function e(t,n){var r;return c(this,e),u(r=s(this,e,[t,"DeserializationError"]),"response",void 0),r.response=n,r}return f(e,Pn),l(e)}(),Rn=function(){function e(t,n,r,a){var o;return c(this,e),u(o=s(this,e,[t,n,a,"DetailedApiError"]),"error",void 0),o.error=r,o}return f(e,Nn),l(e)}();function Dn(e,t,n){var r,a=(r=n,Object.keys(r).filter((function(e){return void 0!==r[e]})).sort().map((function(e){return"".concat(e,"=").concat(encodeURIComponent("[object Array]"===Object.prototype.toString.call(r[e])?r[e].join(","):r[e]).replace(/\+/g,"%20"))})).join("&")),o="".concat(e.protocol,"://").concat(e.url).concat(e.port?":".concat(e.port):"","/").concat("/"===t.charAt(0)?t.substring(1):t);return a.length&&(o+="?".concat(a)),o}function Mn(e,t){if("GET"!==e.method&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:g(g({},e.data),t.data);return JSON.stringify(n)}}function Fn(e,t,n){var r=g(g(g({Accept:"application/json"},e),t),n),a={};return Object.keys(r).forEach((function(e){var t=r[e];a[e.toLowerCase()]=t})),a}function Bn(e){try{return JSON.parse(e.content)}catch(t){throw new Ln(t.message,e)}}function zn(e,t){var n=e.content,r=e.status;try{var a=JSON.parse(n);return"error"in a?new Rn(a.message,r,a.error,t):new Nn(a.message,r,t)}catch(e){}return new Nn(n,r,t)}function Un(e){return e.map((function(e){return qn(e)}))}function qn(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return g(g({},e),{},{request:g(g({},e.request),{},{headers:g(g({},e.request.headers),t)})})}var $n=["appId","apiKey","authMode","algoliaAgents"],Hn=["params"],Vn="5.12.0";function Wn(e){return[{url:"".concat(e,"-dsn.algolia.net"),accept:"read",protocol:"https"},{url:"".concat(e,".algolia.net"),accept:"write",protocol:"https"}].concat(function(e){for(var t=e,n=e.length-1;n>0;n--){var r=Math.floor(Math.random()*(n+1)),a=e[n];t[n]=e[r],t[r]=a}return t}([{url:"".concat(e,"-1.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-2.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-3.algolianet.com"),accept:"readWrite",protocol:"https"}]))}var Kn="3.8.0";function Gn(e,t,n){return r.useMemo((function(){var r=function(e,t){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!t||"string"!=typeof t)throw new Error("`apiKey` is missing.");return function(e){var t=e.appId,n=e.apiKey,r=e.authMode,a=e.algoliaAgents,o=b(e,$n),s=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"WithinHeaders",r={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers:function(){return"WithinHeaders"===n?r:{}},queryParameters:function(){return"WithinQueryParameters"===n?r:{}}}}(t,n,r),c=function(e){var t=e.hosts,n=e.hostsCache,r=e.baseHeaders,a=e.logger,o=e.baseQueryParameters,s=e.algoliaAgent,c=e.timeouts,l=e.requester,u=e.requestsCache,d=e.responsesCache;function p(e){return f.apply(this,arguments)}function f(){return(f=i(y().mark((function e(t){var r,a,o,i,s;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all(t.map((function(e){return n.get(e,(function(){return Promise.resolve(Cn(e))}))})));case 2:return r=e.sent,a=r.filter((function(e){return e.isUp()})),o=r.filter((function(e){return e.isTimedOut()})),i=[].concat(w(a),w(o)),s=i.length>0?i:t,e.abrupt("return",{hosts:s,getTimeout:function(e,t){return(0===o.length&&0===e?1:o.length+3+e)*t}});case 8:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function m(e,t){return h.apply(this,arguments)}function h(){return h=i(y().mark((function e(u,d){var f,m,h,b,v,x,k,_,S,E,j,O,A,C=arguments;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(f=!(C.length>2&&void 0!==C[2])||C[2],m=[],h=Mn(u,d),b=Fn(r,u.headers,d.headers),v="GET"===u.method?g(g({},u.data),d.data):{},x=g(g(g({},o),u.queryParameters),v),s.value&&(x["x-algolia-agent"]=s.value),d&&d.queryParameters)for(k=0,_=Object.keys(d.queryParameters);k<_.length;k++)S=_[k],d.queryParameters[S]&&"[object Object]"!==Object.prototype.toString.call(d.queryParameters[S])?x[S]=d.queryParameters[S].toString():x[S]=d.queryParameters[S];return E=0,j=function(){var e=i(y().mark((function e(t,r){var o,i,s,p,v,w;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==(o=t.pop())){e.next=3;break}throw new In(Un(m));case 3:return i=g(g({},c),d.timeouts),s={data:h,headers:b,method:u.method,url:Dn(o,u.path,x),connectTimeout:r(E,i.connect),responseTimeout:r(E,f?i.read:i.write)},p=function(e){var n={request:s,response:e,host:o,triesLeft:t.length};return m.push(n),n},e.next=8,l.send(s);case 8:if(k=(y=v=e.sent).isTimedOut,_=y.status,!(k||function(e){return!e.isTimedOut&&!~~e.status}({isTimedOut:k,status:_})||2!=~~(_/100)&&4!=~~(_/100))){e.next=16;break}return w=p(v),v.isTimedOut&&E++,a.info("Retryable failure",qn(w)),e.next=15,n.set(o,Cn(o,v.isTimedOut?"timed out":"down"));case 15:return e.abrupt("return",j(t,r));case 16:if(2!=~~(v.status/100)){e.next=18;break}return e.abrupt("return",Bn(v));case 18:throw p(v),zn(v,m);case 20:case"end":return e.stop()}var y,k,_}),e)})));return function(t,n){return e.apply(this,arguments)}}(),O=t.filter((function(e){return"readWrite"===e.accept||(f?"read"===e.accept:"write"===e.accept)})),e.next=13,p(O);case 13:return A=e.sent,e.abrupt("return",j(w(A.hosts).reverse(),A.getTimeout));case 15:case"end":return e.stop()}}),e)}))),h.apply(this,arguments)}return{hostsCache:n,requester:l,timeouts:c,logger:a,algoliaAgent:s,baseHeaders:r,baseQueryParameters:o,hosts:t,request:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.useReadTransporter||"GET"===e.method;if(!n)return m(e,t,n);var a=function(){return m(e,t)};if(!0!==(t.cacheable||e.cacheable))return a();var i={request:e,requestOptions:t,transporter:{queryParameters:o,headers:r}};return d.get(i,(function(){return u.get(i,(function(){return u.set(i,a()).then((function(e){return Promise.all([u.delete(i),e])}),(function(e){return Promise.all([u.delete(i),Promise.reject(e)])})).then((function(e){var t=x(e,2);return t[0],t[1]}))}))}),{miss:function(e){return d.set(i,e)}})},requestsCache:u,responsesCache:d}}(g(g({hosts:Wn(t)},o),{},{algoliaAgent:On({algoliaAgents:a,client:"Lite",version:Vn}),baseHeaders:g(g({"content-type":"text/plain"},s.headers()),o.baseHeaders),baseQueryParameters:g(g({},s.queryParameters()),o.baseQueryParameters)}));return{transporter:c,appId:t,clearCache:function(){return Promise.all([c.requestsCache.clear(),c.responsesCache.clear()]).then((function(){}))},get _ua(){return c.algoliaAgent.value},addAlgoliaAgent:function(e,t){c.algoliaAgent.add({segment:e,version:t})},setClientApiKey:function(e){var t=e.apiKey;r&&"WithinHeaders"!==r?c.baseQueryParameters["x-algolia-api-key"]=t:c.baseHeaders["x-algolia-api-key"]=t},searchForHits:function(e,t){return this.search(e,t)},searchForFacets:function(e,t){return this.search(e,t)},customPost:function(e,t){var n=e.path,r=e.parameters,a=e.body;if(!n)throw new Error("Parameter `path` is required when calling `customPost`.");var o={method:"POST",path:"/{path}".replace("{path}",n),queryParameters:r||{},headers:{},data:a||{}};return c.request(o,t)},getRecommendations:function(e,t){if(e&&Array.isArray(e)&&(e={requests:e}),!e)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!e.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");var n={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return c.request(n,t)},search:function(e,t){if(e&&Array.isArray(e)){var n={requests:e.map((function(e){var t=e.params,n=b(e,Hn);return"facet"===n.type?g(g(g({},n),t),{},{type:"facet"}):g(g(g({},n),t),{},{facet:void 0,maxFacetHits:void 0,facetQuery:void 0})}))};e=n}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");var r={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return c.request(r,t)}}}(g({appId:e,apiKey:t,timeouts:{connect:1e3,read:2e3,write:3e4},logger:{debug:function(e,t){return Promise.resolve()},info:function(e,t){return Promise.resolve()},error:function(e,t){return Promise.resolve()}},requester:{send:function(e){return new Promise((function(t){var n=new XMLHttpRequest;n.open(e.method,e.url,!0),Object.keys(e.headers).forEach((function(t){return n.setRequestHeader(t,e.headers[t])}));var r,a=function(e,r){return setTimeout((function(){n.abort(),t({status:0,content:r,isTimedOut:!0})}),e)},o=a(e.connectTimeout,"Connection timeout");n.onreadystatechange=function(){n.readyState>n.OPENED&&void 0===r&&(clearTimeout(o),r=a(e.responseTimeout,"Socket timeout"))},n.onerror=function(){0===n.status&&(clearTimeout(o),clearTimeout(r),t({content:n.responseText||"Network request failed",status:n.status,isTimedOut:!1}))},n.onload=function(){clearTimeout(o),clearTimeout(r),t({content:n.responseText,status:n.status,isTimedOut:!1})},n.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:jn(),requestsCache:jn({serializable:!1}),hostsCache:En({caches:[Sn({key:"".concat(Vn,"-").concat(e)}),jn()]})},void 0))}(e,t);return r.addAlgoliaAgent("docsearch",Kn),!1===/docsearch.js \(.*\)/.test(r.transporter.algoliaAgent.value)&&r.addAlgoliaAgent("docsearch-react",Kn),n(r)}),[e,t,n])}var Qn=["footer","searchBox"];function Yn(e){var t=e.appId,n=e.apiKey,a=e.indexName,o=e.placeholder,i=void 0===o?"Search docs":o,s=e.searchParameters,c=e.maxResultsPerGroup,l=e.onClose,u=void 0===l?dn:l,p=e.transformItems,f=void 0===p?ln:p,m=e.hitComponent,h=void 0===m?Ut:m,y=e.resultsFooterComponent,v=void 0===y?function(){return null}:y,w=e.navigator,k=e.initialScrollY,_=void 0===k?0:k,S=e.transformSearchClient,E=void 0===S?ln:S,j=e.disableUserPersonalization,O=void 0!==j&&j,A=e.initialQuery,C=void 0===A?"":A,P=e.translations,T=void 0===P?{}:P,I=e.getMissingResultsUrl,N=e.insights,L=void 0!==N&&N,R=T.footer,D=T.searchBox,M=b(T,Qn),F=x(r.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),B=F[0],z=F[1],U=r.useRef(null),q=r.useRef(null),$=r.useRef(null),H=r.useRef(null),V=r.useRef(null),W=r.useRef(10),K=r.useRef("undefined"!=typeof window?window.getSelection().toString().slice(0,64):"").current,G=r.useRef(C||K).current,Q=Gn(t,n,E),Y=r.useRef(_n({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(a),limit:10})).current,Z=r.useRef(_n({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(a),limit:0===Y.getAll().length?7:4})).current,X=r.useCallback((function(e){if(!O){var t="content"===e.type?e.__docsearch_parent:e;t&&-1===Y.getAll().findIndex((function(e){return e.objectID===t.objectID}))&&Z.add(t)}}),[Y,Z,O]),J=r.useCallback((function(e){if(B.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};B.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(n)}}),[B.context.algoliaInsightsPlugin]),ee=r.useMemo((function(){return Mt({id:"docsearch",defaultActiveItemId:0,placeholder:i,openOnFocus:!0,initialState:{query:G,context:{searchSuggestions:[]}},insights:L,navigator:w,onStateChange:function(e){z(e.state)},getSources:function(e){var r=e.query,o=e.state,i=e.setContext,l=e.setStatus;if(!r)return O?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,n=e.event;X(t),un(n)||u()},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),un(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return Y.getAll()}}];var d=Boolean(L);return Q.search({requests:[g({query:r,indexName: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:"",highlightPostTag:"",hitsPerPage:20,clickAnalytics:d},s)]}).catch((function(e){throw"RetryError"===e.name&&l("error"),e})).then((function(e){var r=e.results[0],s=r.hits,l=r.nbHits,p=cn(s,(function(e){return mn(e)}),c);o.context.searchSuggestions.length0&&(re(),V.current&&V.current.focus())}),[G,re]),r.useEffect((function(){function e(){if(q.current){var e=.01*window.innerHeight;q.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[]),r.createElement("div",d({ref:U},ne({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===B.status&&"DocSearch-Container--Stalled","error"===B.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&u()}}),r.createElement("div",{className:"DocSearch-Modal",ref:q},r.createElement("header",{className:"DocSearch-SearchBar",ref:$},r.createElement(wn,d({},ee,{state:B,autoFocus:0===G.length,inputRef:V,isFromSelection:Boolean(G)&&G===K,translations:D,onClose:u}))),r.createElement("div",{className:"DocSearch-Dropdown",ref:H},r.createElement(vn,d({},ee,{indexName:a,state:B,hitComponent:h,resultsFooterComponent:v,disableUserPersonalization:O,recentSearches:Z,favoriteSearches:Y,inputRef:V,translations:M,getMissingResultsUrl:I,onItemClick:function(e,t){J(e),X(e),un(t)||u()}}))),r.createElement("footer",{className:"DocSearch-Footer"},r.createElement(zt,{translations:R}))))}function Zn(e){var t=e.isOpen,n=e.onOpen,a=e.onClose,o=e.onInput,i=e.searchButtonRef;r.useEffect((function(){function e(e){var r;if("Escape"===e.code&&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)return e.preventDefault(),void(t?a():document.body.classList.contains("DocSearch--active")||n());i&&i.current===document.activeElement&&o&&/[a-zA-Z0-9]/.test(String.fromCharCode(e.keyCode))&&o(e)}return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[t,n,a,o,i])}},1459:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});n(96540);var r=n(53259),a=n.n(r),o=n(55602);const i={"0058b4c6":[function(){return n.e(849).then(n.t.bind(n,14912,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-175.json",14912],"06597bc8":[function(){return Promise.all([n.e(1869),n.e(6417)]).then(n.bind(n,8206))},"@site/../docs/learn/archive/learn-treasury.md",8206],"078895e8":[function(){return Promise.all([n.e(1869),n.e(9909)]).then(n.bind(n,89995))},"@site/../docs/learn/archive/learn-controller.md",89995],"08c12c3a":[function(){return n.e(5630).then(n.bind(n,62397))},"@site/../docs/general/dune-analytics/parachain-dashboards/polimec-dashboards.md",62397],"09dda9ae":[function(){return n.e(2598).then(n.bind(n,76991))},"@site/../docs/general/dune-analytics/parachain-dashboards/polkadex-dashboards.md",76991],"0a3f0c9b":[function(){return Promise.all([n.e(1869),n.e(6555)]).then(n.bind(n,88292))},"@site/../docs/general/ledger.md",88292],"0b632434":[function(){return n.e(4739).then(n.bind(n,8233))},"@site/../docs/general/parachains-apps.md",8233],"0df78d26":[function(){return n.e(782).then(n.bind(n,35753))},"@site/../docs/maintain/maintain-guides-secure-validator.md",35753],"0eeb7a68":[function(){return Promise.all([n.e(1869),n.e(6869)]).then(n.bind(n,33476))},"@site/../docs/learn/learn-guides-DOT-KSM-bridge.md",33476],"113faa87":[function(){return Promise.all([n.e(1869),n.e(6011)]).then(n.bind(n,89434))},"@site/../docs/learn/learn-guides-assets.md",89434],"12331e8b":[function(){return Promise.all([n.e(1869),n.e(2244)]).then(n.bind(n,18312))},"@site/../docs/general/polkadotjs.md",18312],"1283e352":[function(){return n.e(1396).then(n.t.bind(n,68154,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-01f.json",68154],"131c7f55":[function(){return Promise.all([n.e(1869),n.e(2298)]).then(n.bind(n,17328))},"@site/../docs/learn/learn-architecture.md",17328],"145746f5":[function(){return Promise.all([n.e(1869),n.e(6789)]).then(n.bind(n,73294))},"@site/../docs/maintain/maintain-polkadot-parameters.md",73294],"14eb3368":[function(){return Promise.all([n.e(1869),n.e(6969)]).then(n.bind(n,65847))},"@theme/DocCategoryGeneratedIndexPage",65847],15985664:[function(){return n.e(5881).then(n.bind(n,12548))},"@site/../docs/learn/xcm/journey/summary.md",12548],"1646726c":[function(){return Promise.all([n.e(1869),n.e(3266)]).then(n.bind(n,8859))},"@site/../docs/learn/learn-staking.md",8859],"17541cf3":[function(){return Promise.all([n.e(1869),n.e(2273)]).then(n.bind(n,32018))},"@site/../docs/learn/learn-kusama-inflation.md",32018],17896441:[function(){return Promise.all([n.e(1869),n.e(8401)]).then(n.bind(n,48220))},"@theme/DocItem",48220],"196e07e8":[function(){return n.e(3602).then(n.bind(n,65321))},"@site/../docs/general/dune-analytics/parachain-dashboards/interlay-dashboards.md",65321],"19ed4d4c":[function(){return n.e(4661).then(n.bind(n,52127))},"@site/../docs/learn/learn-comparisons-cosmos.md",52127],"1a4e3797":[function(){return Promise.all([n.e(1869),n.e(2138)]).then(n.bind(n,74604))},"@theme/SearchPage",74604],"1ae2b102":[function(){return n.e(8121).then(n.bind(n,32991))},"@site/../docs/build/build-protocol-info.md",32991],"1d6d4797":[function(){return n.e(3477).then(n.bind(n,20609))},"@site/../docs/learn/xcm/journey/transact.md",20609],"1de1f488":[function(){return n.e(1240).then(n.t.bind(n,57766,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-parachains-index-132.json",57766],"1e051548":[function(){return n.e(3598).then(n.t.bind(n,86311,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-index-c1b.json",86311],"1e15616a":[function(){return n.e(3751).then(n.bind(n,70548))},"@site/../docs/learn/learn-wasm.md",70548],"1ed3671a":[function(){return n.e(3377).then(n.bind(n,54098))},"@site/../docs/learn/xcm/journey/trap-and-claim.md",54098],"21877fa5":[function(){return Promise.all([n.e(1869),n.e(6466)]).then(n.bind(n,78887))},"@site/../docs/learn/learn-system-chains.md",78887],"21899dd2":[function(){return Promise.all([n.e(1869),n.e(5168)]).then(n.bind(n,59619))},"@site/../docs/learn/learn-parachains.md",59619],"23210cde":[function(){return Promise.all([n.e(1869),n.e(3482),n.e(499)]).then(n.bind(n,84841))},"@site/../docs/general/chain-state-values.md",84841],"23498fd5":[function(){return n.e(7276).then(n.bind(n,40610))},"@site/../docs/build/build-integrate-assets.md",40610],"240a6b01":[function(){return n.e(9633).then(n.bind(n,60637))},"@site/../docs/general/dune-analytics/parachain-dashboards/nodle-dashboards.md",60637],"2462cc91":[function(){return n.e(9141).then(n.bind(n,70009))},"@site/../docs/general/multisig-apps.md",70009],"25f2bd2a":[function(){return n.e(885).then(n.bind(n,57784))},"@site/../docs/maintain/maintain-guides-how-to-stop-validating.md",57784],"269b78ec":[function(){return n.e(1191).then(n.t.bind(n,68248,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-build-protocol-index-9e0.json",68248],"269bc3bb":[function(){return n.e(1968).then(n.bind(n,7952))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-nominators.md",7952],"26dc7bd1":[function(){return n.e(166).then(n.bind(n,35025))},"@site/../docs/general/dune-analytics/parachain-dashboards/invarch-dashboards.md",35025],"279fb1d6":[function(){return Promise.all([n.e(1869),n.e(4994)]).then(n.bind(n,19037))},"@site/../docs/general/kusama/kusama-getting-started.md",19037],"28b84bbb":[function(){return n.e(9385).then(n.bind(n,76053))},"@site/../docs/build/build-network-overview.md",76053],"2be0d940":[function(){return Promise.all([n.e(1869),n.e(4537)]).then(n.bind(n,40451))},"@site/../docs/learn/learn-guides-identity.md",40451],"2d34559d":[function(){return n.e(7893).then(n.bind(n,54992))},"@site/../docs/learn/learn-jam-chain.md",54992],"2d429218":[function(){return n.e(6361).then(n.bind(n,73071))},"@site/../docs/learn/learn-consensus.md",73071],"2e0c35d5":[function(){return n.e(2698).then(n.bind(n,21946))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-governance-dashboard.md",21946],"2e944e01":[function(){return n.e(4231).then(n.bind(n,44148))},"@site/../docs/general/dune-analytics/parachain-dashboards/manta-dashboards.md",44148],"2ea50c63":[function(){return n.e(1560).then(n.bind(n,6585))},"@site/../docs/learn/learn-xcm-usecases.md",6585],"2f3b630e":[function(){return Promise.all([n.e(1869),n.e(2584)]).then(n.bind(n,51749))},"@site/../docs/learn/learn-polkadot-opengov.md",51749],"3002ebf4":[function(){return Promise.all([n.e(1869),n.e(3423)]).then(n.bind(n,2005))},"@site/../docs/build/build-dapp.md",2005],"3184af97":[function(){return Promise.all([n.e(1869),n.e(5362)]).then(n.bind(n,35356))},"@site/../docs/maintain/archive/maintain-guides-how-to-vote-councillor.md",35356],"31bd35e0":[function(){return n.e(1042).then(n.bind(n,109))},"@site/../docs/learn/xcm/overview/summary.md",109],"320c8a05":[function(){return n.e(4479).then(n.bind(n,53813))},"@site/../docs/maintain/maintain-networks.md",53813],"32c9742a":[function(){return n.e(9682).then(n.bind(n,58485))},"@site/../docs/learn/xcm/fundamentals/summary.md",58485],"33b0bcab":[function(){return n.e(1519).then(n.bind(n,17601))},"@site/../docs/learn/xcm/reference/xcvm-registers.md",17601],"33bbe353":[function(){return n.e(5033).then(n.bind(n,56088))},"@site/../docs/maintain/kusama/maintain-guides-society-kusama.md",56088],"34b0fecb":[function(){return n.e(1024).then(n.t.bind(n,61398,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-references-e58.json",61398],"3521cab9":[function(){return n.e(3827).then(n.t.bind(n,64855,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-staking-index-244.json",64855],"36051dfe":[function(){return n.e(3949).then(n.bind(n,90470))},"@site/../docs/general/dune-analytics/parachain-dashboards/unique-dashboards.md",90470],"3611be04":[function(){return Promise.all([n.e(1869),n.e(5761)]).then(n.bind(n,66))},"@site/../docs/learn/learn-offenses.md",66],"36b7ae49":[function(){return n.e(1914).then(n.bind(n,71423))},"@site/../docs/learn/learn-snowbridge.md",71423],"3829cf1d":[function(){return n.e(5249).then(n.bind(n,97092))},"@site/../docs/maintain/maintain-guides-validator-community.md",97092],"386099fc":[function(){return n.e(3091).then(n.bind(n,50418))},"@site/../docs/learn/learn-polkadot-opengov-treasury.md",50418],"386bfe51":[function(){return n.e(6319).then(n.bind(n,69288))},"@site/../docs/general/contributing.md",69288],"387813b8":[function(){return n.e(2409).then(n.bind(n,63651))},"@site/../docs/learn/learn-guides-coretime-parachains.md",63651],"390ca211":[function(){return Promise.all([n.e(1869),n.e(2623)]).then(n.bind(n,17369))},"@site/../docs/learn/archive/learn-launch.md",17369],"3ab7d35a":[function(){return n.e(5291).then(n.t.bind(n,3436,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-agile-coretime-index-f45.json",3436],"3bd77df4":[function(){return Promise.all([n.e(1869),n.e(3976)]).then(n.bind(n,79416))},"@site/../docs/learn/learn-bridges.md",79416],"3d1bf5db":[function(){return n.e(4190).then(n.bind(n,80147))},"@site/../docs/maintain/maintain-guides-async-backing.md",80147],"3e56470e":[function(){return n.e(1608).then(n.bind(n,98650))},"@site/../docs/maintain/maintain-wss.md",98650],"41b7b3e8":[function(){return n.e(577).then(n.bind(n,79776))},"@site/../docs/learn/learn-staking-advanced.md",79776],"41f7224c":[function(){return Promise.all([n.e(1869),n.e(7376)]).then(n.bind(n,61865))},"@site/../docs/learn/learn-archive.md",61865],"437b4e16":[function(){return n.e(8647).then(n.bind(n,25453))},"@site/../docs/general/dune-analytics/parachain-dashboards/snowbridge-dashboards.md",25453],"43ee4f22":[function(){return Promise.all([n.e(1869),n.e(876)]).then(n.bind(n,93085))},"@site/../docs/build/build-guide.md",93085],"4403bb94":[function(){return n.e(3735).then(n.bind(n,3456))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-dot-ordinals.md",3456],"452ad91d":[function(){return n.e(6195).then(n.bind(n,3432))},"@site/../docs/learn/xcm/overview/intro.md",3432],"4642ab5c":[function(){return n.e(4434).then(n.bind(n,4367))},"@site/../docs/learn/learn-cryptography.md",4367],"48d75399":[function(){return n.e(230).then(n.bind(n,61210))},"@site/../docs/general/faq.md",61210],"493c7fdf":[function(){return n.e(5053).then(n.bind(n,28136))},"@site/../docs/general/glossary.md",28136],"497334c4":[function(){return n.e(6736).then(n.bind(n,65524))},"@site/../docs/general/dune-analytics/project-dashboards.md",65524],"49ea81bb":[function(){return n.e(9233).then(n.bind(n,91290))},"@site/../docs/general/dune-analytics/polkadot-dashboards/polkadot-dashboards-staking.md",91290],"4a8eb552":[function(){return n.e(1949).then(n.bind(n,8090))},"@site/../docs/learn/learn-comparisons-kusama.md",8090],"4d76887f":[function(){return n.e(6235).then(n.bind(n,9328))},"@site/../docs/build/build-hackathon.md",9328],"4d9b9869":[function(){return n.e(9550).then(n.bind(n,5483))},"@site/../docs/learn/learn-parachains-protocol.md",5483],"4f031749":[function(){return Promise.all([n.e(1869),n.e(1699)]).then(n.bind(n,58081))},"@site/../docs/learn/learn-guides-staking-pools.md",58081],"4f6f3f96":[function(){return n.e(1531).then(n.t.bind(n,34787,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-overview-d82.json",34787],"5136ee31":[function(){return n.e(4632).then(n.bind(n,83709))},"@site/../docs/learn/xcm/journey/expects.md",83709],"5193d8a9":[function(){return n.e(1511).then(n.bind(n,30442))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-opengov-referenda-home.md",30442],"51fbc2c9":[function(){return n.e(2706).then(n.bind(n,81006))},"@site/../docs/learn/learn-comparisons.md",81006],"5355b952":[function(){return Promise.all([n.e(1869),n.e(3482),n.e(2580),n.e(1003)]).then(n.bind(n,47103))},"@site/../docs/learn/learn-polkadot-opengov-origins.md",47103],"54338ffb":[function(){return n.e(8112).then(n.bind(n,72035))},"@site/../docs/learn/learn-account-multisig.md",72035],"543c9f0a":[function(){return n.e(566).then(n.bind(n,66745))},"@site/../docs/build/build-guides-coretime-troubleshoot.md",66745],"556d3f96":[function(){return n.e(1241).then(n.bind(n,51790))},"@site/../docs/general/dune-analytics/parachain-dashboards/astar-dashboards.md",51790],"571c8793":[function(){return n.e(3984).then(n.bind(n,77596))},"@site/../docs/general/dune-analytics/parachain-dashboards/moonbeam-dashboards.md",77596],"57d69936":[function(){return n.e(8736).then(n.t.bind(n,83071,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-programs-index-225.json",83071],"591eca19":[function(){return n.e(2493).then(n.bind(n,29811))},"@site/../docs/general/polkadot-direction.md",29811],"5c6a20c2":[function(){return n.e(9349).then(n.bind(n,23752))},"@site/../docs/learn/learn-safrole.md",23752],"5c90fc9b":[function(){return n.e(3708).then(n.bind(n,58060))},"@site/../docs/learn/xcm/executor_config/config.md",58060],"5d5db6f5":[function(){return n.e(3200).then(n.t.bind(n,67335,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-advanced-index-8e8.json",67335],"5d69d9d4":[function(){return n.e(1658).then(n.bind(n,45175))},"@site/../docs/maintain/maintain-guides-how-to-upgrade.md",45175],"5db34cd0":[function(){return n.e(8058).then(n.bind(n,75565))},"@site/../docs/general/decentralized-voices.md",75565],"5dfc1fb1":[function(){return n.e(1187).then(n.bind(n,32776))},"@site/../docs/general/pcf.md",32776],"5e1f281f":[function(){return n.e(6835).then(n.t.bind(n,89648,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-stay-safe-index-fb6.json",89648],"5e95c892":[function(){return n.e(9647).then(n.bind(n,7121))},"@theme/DocsRoot",7121],"5e9f5e1a":[function(){return Promise.resolve().then(n.bind(n,84450))},"@generated/docusaurus.config",84450],"5f2beba5":[function(){return n.e(7405).then(n.t.bind(n,45638,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-participants-index-530.json",45638],"60738e36":[function(){return Promise.all([n.e(3482),n.e(7777)]).then(n.bind(n,81875))},"@site/../docs/general/metadata.md",81875],"6116139f":[function(){return Promise.all([n.e(1869),n.e(4840)]).then(n.bind(n,32262))},"@site/../docs/learn/learn-elastic-scaling.md",32262],"643a7bcf":[function(){return n.e(3345).then(n.t.bind(n,13502,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-wallets-index-9b6.json",13502],"64947d47":[function(){return n.e(8688).then(n.t.bind(n,53741,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-polkadot-vision-index-148.json",53741],"64c7e1cc":[function(){return n.e(8727).then(n.bind(n,63329))},"@site/../docs/build/build-integration.md",63329],"6544ec02":[function(){return n.e(9786).then(n.bind(n,39675))},"@site/../docs/general/alpha-program.md",39675],"6822f432":[function(){return n.e(2356).then(n.t.bind(n,19084,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-community-index-a87.json",19084],"694672cd":[function(){return Promise.all([n.e(1869),n.e(1004)]).then(n.bind(n,74041))},"@site/../docs/learn/learn-guides-staking.md",74041],"69b97ecd":[function(){return n.e(866).then(n.bind(n,51339))},"@site/../docs/learn/learn-implementations.md",51339],"6bfbfa77":[function(){return Promise.all([n.e(1869),n.e(2858)]).then(n.bind(n,43523))},"@site/../docs/learn/archive/learn-auction.md",43523],"6d2ffbf3":[function(){return n.e(4168).then(n.bind(n,8448))},"@site/../docs/learn/xcm/quickstart/first-look.md",8448],"6d423296":[function(){return n.e(9521).then(n.t.bind(n,60593,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-assets-index-7cb.json",60593],"6d5c9a28":[function(){return n.e(417).then(n.bind(n,50719))},"@site/../docs/general/staking-apps.md",50719],"6f1a81b8":[function(){return n.e(2802).then(n.bind(n,70675))},"@site/../docs/maintain/maintain-guides-how-to-chill.md",70675],"700d39cd":[function(){return n.e(5647).then(n.t.bind(n,62699,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-polkadot-opengov-index-246.json",62699],"706277b1":[function(){return n.e(3487).then(n.bind(n,31072))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-validators.md",31072],"71ed82b9":[function(){return n.e(1369).then(n.bind(n,38987))},"@site/../docs/general/start-building.md",38987],"72b78d4a":[function(){return n.e(1772).then(n.bind(n,28180))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-opengov-referendum-voting-analysis.md",28180],73617284:[function(){return n.e(981).then(n.bind(n,31963))},"@site/../docs/learn/learn-hyperbridge.md",31963],"73a7060c":[function(){return n.e(5208).then(n.bind(n,31772))},"@site/../docs/learn/learn-polkadot-technical-fellowship.md",31772],"73d1b372":[function(){return Promise.all([n.e(1869),n.e(1498)]).then(n.bind(n,50658))},"@site/../docs/learn/learn-agile-coretime.md",50658],"74df6a22":[function(){return n.e(7227).then(n.bind(n,67447))},"@site/../docs/maintain/maintain-rpc.md",67447],"766a10e1":[function(){return n.e(6118).then(n.bind(n,35437))},"@site/../docs/learn/learn-comparisons-avalanche.md",35437],"767dd344":[function(){return Promise.all([n.e(1869),n.e(7734)]).then(n.bind(n,43955))},"@site/../docs/learn/archive/thousand-validators.md",43955],"77c23c97":[function(){return Promise.all([n.e(1869),n.e(5555),n.e(3536)]).then(n.bind(n,70791))},"@site/../docs/learn/learn-transactions.md",70791],"78868b16":[function(){return n.e(1539).then(n.bind(n,64037))},"@site/../docs/general/kusama/kusama-social-recovery.md",64037],"78e1e977":[function(){return n.e(5884).then(n.bind(n,16098))},"@site/../docs/learn/xcm/journey/holding-modifiers.md",16098],"7be75fa6":[function(){return n.e(220).then(n.bind(n,4129))},"@site/../docs/learn/learn-guides-test-opengov-proposals.md",4129],"7c138549":[function(){return n.e(7473).then(n.bind(n,38597))},"@site/../docs/general/dune-analytics/parachain-dashboards/neuroweb-dashboards.md",38597],"7c43c534":[function(){return n.e(9787).then(n.t.bind(n,2451,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-fundamentals-multilocation-cfc.json",2451],"7dcec981":[function(){return Promise.all([n.e(1869),n.e(4271)]).then(n.bind(n,50634))},"@site/../docs/build/build-client-side.md",50634],"7fbac68a":[function(){return n.e(2757).then(n.bind(n,79405))},"@site/../docs/general/ambassadors.md",79405],"7ffd66a6":[function(){return n.e(6547).then(n.bind(n,64377))},"@site/../docs/general/dune-analytics/parachain-dashboards/acala-dashboards.md",64377],"804b1e9f":[function(){return Promise.all([n.e(1869),n.e(1062)]).then(n.bind(n,77629))},"@site/../docs/learn/learn-guides-nominator.md",77629],"8081c0c6":[function(){return n.e(8568).then(n.bind(n,93560))},"@site/../docs/general/parity-data-dashboards.md",93560],"824749c6":[function(){return n.e(8800).then(n.bind(n,29053))},"@site/../docs/build/build-node-interaction.md",29053],"8247eba8":[function(){return n.e(7044).then(n.bind(n,16096))},"@site/../docs/learn/xcm/journey/transfers/teleports.md",16096],"83d4859f":[function(){return n.e(2808).then(n.bind(n,15089))},"@site/../docs/learn/xcm/journey/transfers/summary.md",15089],"84ede15a":[function(){return Promise.all([n.e(1869),n.e(6124)]).then(n.bind(n,50447))},"@site/../docs/learn/learn-guides-transfers.md",50447],"85afe03a":[function(){return n.e(1628).then(n.bind(n,52282))},"@site/../docs/maintain/maintain-errors.md",52282],"863c4753":[function(){return n.e(6076).then(n.bind(n,70471))},"@site/../docs/learn/xcm/journey/register-modifiers.md",70471],"879e564b":[function(){return n.e(8789).then(n.bind(n,4421))},"@site/../docs/general/dune-analytics/onboarding-status-and-key-dashboards.md",4421],"899aadcc":[function(){return n.e(6993).then(n.bind(n,3387))},"@site/../docs/learn/xcm/overview/architecture.md",3387],"89a76fd2":[function(){return Promise.all([n.e(1869),n.e(2204)]).then(n.bind(n,41808))},"@site/../docs/learn/archive/learn-redenomination.md",41808],"8a8a7d05":[function(){return n.e(4791).then(n.bind(n,52821))},"@site/../docs/build/build-parachains.md",52821],"8b670b2b":[function(){return n.e(954).then(n.bind(n,49900))},"@site/../docs/build/build-index.md",49900],"8d3a1bf8":[function(){return Promise.all([n.e(1869),n.e(5588)]).then(n.bind(n,52313))},"@site/../docs/learn/learn-inflation.md",52313],"8d48ec84":[function(){return n.e(2615).then(n.bind(n,65387))},"@site/../docs/general/dune-analytics/parachain-dashboards/frequency-dashboards.md",65387],"8fadc1f3":[function(){return n.e(2191).then(n.t.bind(n,68133,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-index-b78.json",68133],"90a09ad1":[function(){return n.e(8768).then(n.bind(n,22405))},"@site/../docs/general/dune-analytics/dunesql-cheatsheet.md",22405],"918b38b6":[function(){return Promise.all([n.e(1869),n.e(6930)]).then(n.bind(n,31842))},"@site/../docs/learn/learn-async-backing.md",31842],"93953b85":[function(){return n.e(6247).then(n.t.bind(n,96766,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-journey-f1c.json",96766],"943aba4c":[function(){return Promise.all([n.e(1869),n.e(1112)]).then(n.bind(n,94001))},"@site/../docs/learn/learn-guides-claims.md",94001],"9528ac88":[function(){return n.e(1379).then(n.bind(n,98243))},"@site/../docs/learn/learn-xcm-transport.md",98243],"95aedc42":[function(){return n.e(6842).then(n.t.bind(n,85898,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-journey-transfers-540.json",85898],"9662c81e":[function(){return Promise.all([n.e(1869),n.e(7809)]).then(n.bind(n,50830))},"@site/../docs/maintain/archive/maintain-guides-how-to-join-council.md",50830],"967fa6d4":[function(){return Promise.all([n.e(1869),n.e(7876)]).then(n.bind(n,17999))},"@site/../docs/learn/learn-guides-accounts-multisig.md",17999],"979a04e7":[function(){return n.e(3705).then(n.bind(n,98914))},"@site/../docs/general/dune-analytics/parachain-dashboards/bifrost-dashboards.md",98914],"987d08ef":[function(){return n.e(6496).then(n.bind(n,46241))},"@site/../docs/build/build-smart-contracts.md",46241],"98a30fd8":[function(){return n.e(2950).then(n.bind(n,87658))},"@site/../docs/learn/xcm/fundamentals/multiasset.md",87658],"98a431f4":[function(){return n.e(8005).then(n.bind(n,77967))},"@site/../docs/general/transaction-attacks.md",77967],"9913464d":[function(){return Promise.all([n.e(1869),n.e(5883)]).then(n.bind(n,42864))},"@site/../docs/learn/archive/learn-governance.md",42864],"9e2042f5":[function(){return n.e(3086).then(n.bind(n,13402))},"@site/../docs/learn/learn-collator.md",13402],"9e3f6a8a":[function(){return n.e(8108).then(n.bind(n,88304))},"@site/../docs/learn/learn-comparison-ethereum-2.md",88304],"9e6341e5":[function(){return n.e(8431).then(n.bind(n,46363))},"@site/../docs/learn/xcm/journey/transfers/reserve.md",46363],"9e76b49d":[function(){return n.e(6775).then(n.bind(n,62754))},"@site/../docs/learn/xcm/testing.md",62754],"9f319605":[function(){return n.e(834).then(n.bind(n,78659))},"@site/../docs/learn/xcm/journey/fees.md",78659],"9f804621":[function(){return Promise.all([n.e(1869),n.e(5555),n.e(1431)]).then(n.bind(n,81258))},"@site/../docs/learn/learn-guides-accounts.md",81258],a2800a5b:[function(){return n.e(3234).then(n.bind(n,11173))},"@site/../docs/build/build-transaction-construction.md",11173],a29dc56e:[function(){return n.e(7554).then(n.bind(n,61105))},"@site/../docs/maintain/maintain-guides-how-to-monitor-your-node.md",61105],a2d5a6d8:[function(){return n.e(6622).then(n.bind(n,98433))},"@site/../docs/general/dune-analytics/parachain-dashboards/collectives-dashboards.md",98433],a44b8423:[function(){return n.e(319).then(n.bind(n,99701))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-pool-member.md",99701],a5002e4a:[function(){return n.e(1067).then(n.bind(n,55109))},"@site/../docs/build/build-oracle.md",55109],a5b3561d:[function(){return n.e(2226).then(n.bind(n,31920))},"@site/../docs/general/kusama/kusama-coc.md",31920],a6e65e5f:[function(){return n.e(7208).then(n.t.bind(n,75366,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-quickstart-1cc.json",75366],a7456010:[function(){return n.e(1235).then(n.t.bind(n,66252,19))},"@generated/docusaurus-plugin-content-pages/default/__plugin.json",66252],a74a59a0:[function(){return n.e(4975).then(n.bind(n,43848))},"@site/../docs/maintain/maintain-guides-how-to-validate-polkadot.md",43848],a7b37b86:[function(){return n.e(1447).then(n.bind(n,85929))},"@site/../docs/general/scams.md",85929],a7bd4aaa:[function(){return n.e(7098).then(n.bind(n,74532))},"@theme/DocVersionRoot",74532],a8f54fb1:[function(){return n.e(1706).then(n.bind(n,86847))},"@site/../docs/learn/learn-DOT-KSM-bridge.md",86847],a94703ab:[function(){return Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,11377))},"@theme/DocRoot",11377],a9f58d5b:[function(){return n.e(5331).then(n.bind(n,70564))},"@site/../docs/learn/learn-account-balances.md",70564],ab138bf8:[function(){return n.e(8914).then(n.bind(n,64822))},"@site/../docs/learn/learn-proxies.md",64822],aba21aa0:[function(){return n.e(5742).then(n.t.bind(n,36545,19))},"@generated/docusaurus-plugin-content-docs/default/__plugin.json",36545],ad1dd1a4:[function(){return n.e(7217).then(n.t.bind(n,21523,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-dashboards-index-254.json",21523],ad5a1373:[function(){return n.e(3656).then(n.bind(n,22656))},"@site/../docs/general/dune-analytics/parachain-dashboards/phala-dashboards.md",22656],ad762f86:[function(){return Promise.all([n.e(1869),n.e(3041)]).then(n.bind(n,67848))},"@site/../docs/learn/learn-account-advanced.md",67848],af2ff1b5:[function(){return n.e(6646).then(n.bind(n,20492))},"@site/../docs/general/dune-analytics/parachain-dashboards/hydration-dashboards.md",20492],afddde9d:[function(){return n.e(1724).then(n.bind(n,56270))},"@site/../docs/learn/learn-asset-conversion-assethub.md",56270],b0a48d97:[function(){return Promise.all([n.e(1869),n.e(1018)]).then(n.bind(n,22589))},"@site/../docs/learn/learn-guides-ledger.md",22589],b0cb055f:[function(){return n.e(9074).then(n.bind(n,45496))},"@site/../docs/learn/xcm/fundamentals/xcvm.md",45496],b0cbc1d4:[function(){return n.e(7826).then(n.bind(n,30410))},"@site/../docs/general/staking-dashboard.md",30410],b0d34550:[function(){return n.e(8660).then(n.bind(n,63773))},"@site/../docs/general/dune-analytics/polkadot-dashboards/polkadot-dashboards-network.md",63773],b1b82dcd:[function(){return Promise.all([n.e(1869),n.e(557)]).then(n.bind(n,15125))},"@site/../docs/learn/archive/learn-crowdloans.md",15125],b21dd8a7:[function(){return n.e(6024).then(n.bind(n,88755))},"@site/../docs/learn/learn-comparison-rollups.md",88755],b225a2ce:[function(){return n.e(1101).then(n.bind(n,63970))},"@site/../docs/learn/xcm/fundamentals/multilocation/summary.md",63970],b3558274:[function(){return n.e(3975).then(n.bind(n,18492))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard.md",18492],b3719d54:[function(){return n.e(8290).then(n.bind(n,29015))},"@site/../docs/general/polkadot-v1.md",29015],b38833d4:[function(){return n.e(6104).then(n.bind(n,65716))},"@site/../docs/learn/learn-phragmen.md",65716],b418feb9:[function(){return n.e(7242).then(n.bind(n,43198))},"@site/../docs/general/dune-analytics/polkadot-dashboards/polkadot-dashboards-governance.md",43198],b48c599b:[function(){return n.e(9057).then(n.bind(n,32661))},"@site/../docs/general/kusama/kusama-bug-bounty.md",32661],b7bd3ab3:[function(){return n.e(6445).then(n.bind(n,68657))},"@site/../docs/general/dune-analytics/parachain-dashboards/energywebx-dashboards.md",68657],b835d927:[function(){return n.e(1397).then(n.bind(n,40596))},"@site/../docs/general/ecosystem-funds.md",40596],b906f375:[function(){return n.e(159).then(n.bind(n,5214))},"@site/../docs/build/build-light-clients.md",5214],b940de31:[function(){return n.e(4817).then(n.bind(n,22350))},"@site/../docs/learn/learn-assets.md",22350],b9b4ec9e:[function(){return n.e(3316).then(n.bind(n,11819))},"@site/../docs/learn/xcm/reference/glossary.md",11819],bb8b1738:[function(){return n.e(2916).then(n.bind(n,42257))},"@site/../docs/learn/learn-validator.md",42257],bbba852d:[function(){return n.e(9799).then(n.bind(n,64394))},"@site/../docs/general/kusama/kusama-adverserial-cheatsheet.md",64394],bd701914:[function(){return Promise.all([n.e(1869),n.e(1077)]).then(n.bind(n,95136))},"@site/../docs/learn/learn-parachains-faq.md",95136],bea375d6:[function(){return n.e(4938).then(n.bind(n,76539))},"@site/../docs/general/grants.md",76539],bf3ab9de:[function(){return Promise.all([n.e(1869),n.e(2389)]).then(n.bind(n,24073))},"@site/../docs/learn/learn-guides-bridges.md",24073],c07c2447:[function(){return Promise.all([n.e(1869),n.e(7561)]).then(n.bind(n,88669))},"@site/../docs/learn/learn-guides-polkadot-opengov.md",88669],c110e322:[function(){return n.e(1592).then(n.bind(n,30720))},"@site/../docs/learn/learn-guides-coretime-swap.md",30720],c141421f:[function(){return n.e(957).then(n.t.bind(n,58164,19))},"@generated/docusaurus-theme-search-algolia/default/__plugin.json",58164],c1bbdb2a:[function(){return n.e(5558).then(n.bind(n,29269))},"@site/../docs/learn/learn-polkadot-host.md",29269],c2912163:[function(){return n.e(7352).then(n.t.bind(n,475,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-components-index-c9a.json",475],c2c6a3a6:[function(){return n.e(8506).then(n.bind(n,57119))},"@site/../docs/learn/learn-nft-projects.md",57119],c41801b5:[function(){return Promise.all([n.e(3482),n.e(9507)]).then(n.bind(n,98031))},"@site/../docs/maintain/kusama/maintain-guides-how-to-validate-kusama.md",98031],c4f5d8e4:[function(){return n.e(2634).then(n.bind(n,19258))},"@site/src/pages/index.js",19258],c57cca4f:[function(){return n.e(895).then(n.t.bind(n,9256,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-future-implementations-index-472.json",9256],c630d0cd:[function(){return n.e(5420).then(n.bind(n,47465))},"@site/../docs/build/build-guides-template-basic.md",47465],c662f00a:[function(){return n.e(7887).then(n.bind(n,15680))},"@site/../docs/learn/xcm/journey/queries.md",15680],c6b91cbc:[function(){return n.e(1050).then(n.t.bind(n,35697,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-basics-index-5be.json",35697],c78e4f7d:[function(){return n.e(1335).then(n.bind(n,19729))},"@site/../docs/general/dune-analytics/polkadot-dashboards/polkadot-dashboards-overview.md",19729],c7a044bb:[function(){return n.e(9110).then(n.bind(n,25559))},"@site/../docs/learn/xcm/journey/channels-and-bridges.md",25559],c7a2145e:[function(){return n.e(6277).then(n.bind(n,11684))},"@site/../docs/general/how-to-dyor.md",11684],c7c5ba1a:[function(){return Promise.all([n.e(1869),n.e(9476)]).then(n.bind(n,30893))},"@site/../docs/learn/learn-accounts.md",30893],c8dd560b:[function(){return Promise.all([n.e(1869),n.e(4293)]).then(n.bind(n,87911))},"@site/../docs/learn/learn-guides-accounts-proxy-pure.md",87911],c91a9c06:[function(){return Promise.all([n.e(1869),n.e(1019)]).then(n.bind(n,59757))},"@site/../docs/learn/learn-identity.md",59757],c977dfe8:[function(){return n.e(4024).then(n.bind(n,90441))},"@site/../docs/learn/learn-teleport.md",90441],ca45e589:[function(){return n.e(4821).then(n.t.bind(n,48012,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-explore-index-06f.json",48012],ca9fe671:[function(){return n.e(5827).then(n.bind(n,22422))},"@site/../docs/learn/xcm/overview/xcvm.md",22422],cb9afd28:[function(){return Promise.all([n.e(1869),n.e(1738)]).then(n.bind(n,52704))},"@site/../docs/learn/learn-polkadot-js-guides.md",52704],cc44e8fd:[function(){return n.e(5052).then(n.bind(n,12560))},"@site/../docs/build/build-node-management.md",12560],ccc1222e:[function(){return n.e(5702).then(n.bind(n,36136))},"@site/../docs/build/build-open-source.md",36136],cda87995:[function(){return n.e(1711).then(n.bind(n,42969))},"@site/../docs/build/build-tools-index.md",42969],ceaa29cb:[function(){return n.e(4841).then(n.bind(n,97284))},"@site/../docs/learn/xcm/journey/locks/locks.md",97284],cfd53ea4:[function(){return n.e(7482).then(n.bind(n,33723))},"@site/../docs/general/kusama/kusama-timeline.md",33723],cfe984ba:[function(){return n.e(8289).then(n.t.bind(n,59015,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-apps-index-b66.json",59015],d000eb73:[function(){return n.e(4228).then(n.bind(n,86366))},"@site/../docs/general/dune-analytics/parachain-dashboards/stellaswap-dashboards.md",86366],d27ae88d:[function(){return n.e(3170).then(n.bind(n,76488))},"@site/../docs/learn/learn-video-tutorials.md",76488],d3a753cf:[function(){return n.e(4191).then(n.bind(n,98392))},"@site/../docs/learn/xcm/fundamentals/multilocation/example.md",98392],d42819bc:[function(){return n.e(3306).then(n.bind(n,68257))},"@site/../docs/general/dune-analytics/parachain-dashboards/bridgehub-dashboards.md",68257],d569989b:[function(){return n.e(8255).then(n.bind(n,79688))},"@site/../docs/general/bug-bounty.md",79688],d5909206:[function(){return n.e(5434).then(n.bind(n,27650))},"@site/../docs/learn/xcm/fundamentals/multilocation/junction.md",27650],d6a97e7e:[function(){return n.e(1107).then(n.bind(n,10494))},"@site/../docs/learn/xcm/quickstart/xcm-simulator.md",10494],d6b0148d:[function(){return n.e(2980).then(n.bind(n,52231))},"@site/../docs/learn/xcm/journey/origins.md",52231],d8955f2e:[function(){return n.e(8635).then(n.t.bind(n,43090,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-agile-coretime-getting-started-eb2.json",43090],d9a69e3a:[function(){return n.e(5829).then(n.bind(n,3664))},"@site/../docs/general/dune-analytics/parachain-dashboards/people-dashboards.md",3664],d9ef69a7:[function(){return n.e(2164).then(n.bind(n,37528))},"@site/../docs/general/contributors.md",37528],da9f79cb:[function(){return Promise.all([n.e(1869),n.e(3044)]).then(n.bind(n,74741))},"@site/../docs/learn/learn-nomination-pools.md",74741],daaf1ab4:[function(){return Promise.all([n.e(1869),n.e(8215)]).then(n.bind(n,36879))},"@site/../docs/general/funding.md",36879],db039c7f:[function(){return n.e(2481).then(n.bind(n,71524))},"@site/../docs/learn/xcm/overview/format.md",71524],db3d6c4d:[function(){return n.e(7845).then(n.bind(n,28131))},"@site/../docs/learn/learn-account-abstraction.md",28131],db9d4dae:[function(){return n.e(8472).then(n.bind(n,92825))},"@site/../docs/general/dune-analytics/parachain-dashboards/coretime-dashboards.md",92825],dbbd9e76:[function(){return Promise.all([n.e(1869),n.e(2922)]).then(n.bind(n,94477))},"@site/../docs/learn/learn-guides-vault.md",94477],dc0f9344:[function(){return n.e(1058).then(n.bind(n,39214))},"@site/../docs/general/dune-analytics/parachain-dashboards/pendulum-dashboards.md",39214],dc36d550:[function(){return Promise.all([n.e(1869),n.e(2357)]).then(n.bind(n,91217))},"@site/../docs/maintain/maintain-archive.md",91217],dc776cbc:[function(){return n.e(4498).then(n.bind(n,53460))},"@site/../docs/general/thousand-contributors.md",53460],dd2fa029:[function(){return Promise.all([n.e(1869),n.e(2047)]).then(n.bind(n,82827))},"@site/../docs/learn/learn-polkadotjs.md",82827],dd32e389:[function(){return n.e(7781).then(n.bind(n,68736))},"@site/../docs/general/polkadot-vault.md",68736],df154d69:[function(){return n.e(3880).then(n.bind(n,86336))},"@site/../docs/learn/learn-xcm.md",86336],e00ac272:[function(){return n.e(1881).then(n.bind(n,7006))},"@site/../docs/learn/learn-guides-coretime-marketplaces.md",7006],e2e89062:[function(){return n.e(9894).then(n.bind(n,53350))},"@site/../docs/learn/learn-proxies-pure.md",53350],e31fc461:[function(){return n.e(352).then(n.bind(n,35851))},"@site/../docs/learn/xcm/learn-xcm-docs-intro.md",35851],e43aed4a:[function(){return n.e(1122).then(n.t.bind(n,4691,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-general-index-bbd.json",4691],e495ca4d:[function(){return Promise.all([n.e(1869),n.e(662)]).then(n.bind(n,94695))},"@site/../docs/maintain/archive/maintain-guides-democracy.md",94695],e4ef088f:[function(){return Promise.all([n.e(1869),n.e(3315)]).then(n.bind(n,24843))},"@site/../docs/build/build-guides-install-deps.md",24843],e77078a1:[function(){return n.e(3557).then(n.bind(n,12167))},"@site/../docs/learn/learn-jam-faq.md",12167],e8522a07:[function(){return n.e(5513).then(n.bind(n,95281))},"@site/../docs/general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-nomination-pool.md",95281],ec3b6a32:[function(){return n.e(8832).then(n.bind(n,77905))},"@site/../docs/learn/learn-nft.md",77905],ecb495b7:[function(){return n.e(6786).then(n.bind(n,7671))},"@site/../docs/maintain/maintain-guides-how-to-systemd.md",7671],ece9fdae:[function(){return Promise.all([n.e(1869),n.e(6641)]).then(n.bind(n,46332))},"@site/../docs/general/community.md",46332],ed3409b3:[function(){return Promise.all([n.e(1869),n.e(4117)]).then(n.bind(n,45150))},"@site/../docs/learn/learn-guides-bounties.md",45150],eef3f1dd:[function(){return Promise.all([n.e(1869),n.e(7827)]).then(n.bind(n,89453))},"@site/../docs/learn/learn-guides-treasury.md",89453],efba78c5:[function(){return n.e(3368).then(n.bind(n,30969))},"@site/../docs/general/dune-analytics/polkadot-ecosystem-overview.md",30969],f0ff685a:[function(){return Promise.all([n.e(1869),n.e(2393)]).then(n.bind(n,29264))},"@site/../docs/learn/learn-guides-accounts-proxy.md",29264],f10f9928:[function(){return n.e(5534).then(n.bind(n,60473))},"@site/../docs/general/dune-analytics/parachain-dashboards/assethub-dashboards.md",60473],f137ce68:[function(){return Promise.all([n.e(1869),n.e(9188)]).then(n.bind(n,74707))},"@site/../docs/learn/learn-xcm-instructions.md",74707],f1585bfb:[function(){return n.e(3642).then(n.bind(n,21475))},"@site/../docs/learn/xcm/quickstart/summary.md",21475],f189ca9f:[function(){return n.e(5312).then(n.bind(n,53595))},"@site/../docs/learn/learn-spree.md",53595],f2521980:[function(){return n.e(3584).then(n.bind(n,46817))},"@site/../docs/general/getting-started.md",46817],f2b5c614:[function(){return n.e(4076).then(n.bind(n,7428))},"@site/../docs/general/dune-analytics/parachain-dashboards/centrifuge-dashboards.md",7428],f2c21b54:[function(){return n.e(4410).then(n.bind(n,60065))},"@site/../docs/build/build-storage.md",60065],f3027c84:[function(){return Promise.all([n.e(1869),n.e(1906)]).then(n.bind(n,97427))},"@site/../docs/general/polkadotjs-ui.md",97427],f359a251:[function(){return Promise.all([n.e(1869),n.e(4051)]).then(n.bind(n,60289))},"@site/../docs/maintain/maintain-endpoints.md",60289],f3bde756:[function(){return n.e(9625).then(n.bind(n,78367))},"@site/../docs/maintain/maintain-bootnode.md",78367],f4130007:[function(){return n.e(8582).then(n.bind(n,25091))},"@site/../docs/general/wallets-and-extensions.md",25091],f41c4e9d:[function(){return n.e(8679).then(n.bind(n,85173))},"@site/../docs/learn/learn-xcm-pallet.md",85173],f4200fe5:[function(){return Promise.all([n.e(1869),n.e(3135)]).then(n.bind(n,88254))},"@site/../docs/maintain/maintain-sync.md",88254],f44679e7:[function(){return n.e(9535).then(n.bind(n,90269))},"@site/../docs/general/governance-apps.md",90269],f44ed8f8:[function(){return n.e(2930).then(n.bind(n,64311))},"@site/../docs/build/build-hrmp-channels.md",64311],f47489cd:[function(){return n.e(4544).then(n.bind(n,49237))},"@site/../docs/learn/learn-runtime-upgrades.md",49237],f52abf29:[function(){return n.e(9116).then(n.bind(n,55667))},"@site/../docs/general/decentralized-futures.md",55667],f62dca67:[function(){return n.e(6416).then(n.t.bind(n,67183,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-learn-xcm-fundamentals-e19.json",67183],f750c690:[function(){return n.e(3261).then(n.bind(n,41018))},"@site/../docs/learn/learn-nft-pallets.md",41018],f7acb151:[function(){return Promise.all([n.e(1869),n.e(2783)]).then(n.bind(n,59973))},"@site/../docs/learn/learn-guides-assets-create.md",59973],f8518919:[function(){return n.e(4484).then(n.bind(n,92860))},"@site/../docs/general/web3-and-polkadot.md",92860],f861e7c0:[function(){return n.e(5967).then(n.bind(n,80872))},"@site/../docs/general/dune-analytics/parachain-dashboards/litentry-dashboards.md",80872],f90fa732:[function(){return n.e(8225).then(n.bind(n,29582))},"@site/../docs/build/build-data.md",29582],fa343ad1:[function(){return n.e(2368).then(n.bind(n,3293))},"@site/../docs/learn/xcm/fundamentals/weight_and_fees.md",3293],fabebe44:[function(){return n.e(9783).then(n.bind(n,55460))},"@site/../docs/general/dev-heroes.md",55460],fc0e5740:[function(){return n.e(8067).then(n.t.bind(n,62433,19))},"@generated/docusaurus-plugin-content-docs/default/p/docs-build-client-index-10e.json",62433],fda65b2b:[function(){return Promise.all([n.e(1869),n.e(6225)]).then(n.bind(n,10238))},"@site/../docs/learn/learn-guides-asset-conversion.md",10238],fea93377:[function(){return n.e(4898).then(n.bind(n,29616))},"@site/../docs/maintain/maintain-guides-validator-payout.md",29616],feadf832:[function(){return Promise.all([n.e(1869),n.e(1710)]).then(n.bind(n,75995))},"@site/../docs/build/build-guides-coretime-start.md",75995],fecdcc34:[function(){return n.e(2410).then(n.bind(n,23382))},"@site/../docs/learn/xcm/journey/version.md",23382],feea648c:[function(){return n.e(9175).then(n.bind(n,29500))},"@site/../docs/learn/learn-xcvm.md",29500],ff6596ea:[function(){return n.e(3507).then(n.bind(n,69228))},"@site/../docs/learn/learn-nominator.md",69228],ffd76171:[function(){return Promise.all([n.e(1869),n.e(639)]).then(n.bind(n,85831))},"@site/../docs/maintain/maintain-index.md",85831],ffe9c3c9:[function(){return n.e(1967).then(n.bind(n,12536))},"@site/../docs/learn/learn-DOT.md",12536]};var s=n(74848);function c(e){var t=e.error,n=e.retry,r=e.pastDelay;return t?(0,s.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,s.jsx)("p",{children:String(t)}),(0,s.jsx)("div",{children:(0,s.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):r?(0,s.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,s.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,s.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,s.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var l=n(86921),u=n(53102);function d(e,t){if("*"===e)return a()({loading:c,loader:function(){return n.e(2237).then(n.bind(n,82237))},modules:["@theme/NotFound"],webpack:function(){return[82237]},render:function(e,t){var n=e.default;return(0,s.jsx)(u.W,{value:{plugin:{name:"native",id:"default"}},children:(0,s.jsx)(n,Object.assign({},t))})}});var r=o[e+"-"+t],d={},p=[],f=[],m=(0,l.A)(r);return Object.entries(m).forEach((function(e){var t=e[0],n=e[1],r=i[n];r&&(d[t]=r[0],p.push(r[1]),f.push(r[2]))})),a().Map({loading:c,loader:d,modules:p,webpack:function(){return f},render:function(t,n){var a=JSON.parse(JSON.stringify(r));Object.entries(t).forEach((function(t){var n=t[0],r=t[1],o=r.default;if(!o)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 o&&"function"!=typeof o||Object.keys(r).filter((function(e){return"default"!==e})).forEach((function(e){o[e]=r[e]}));var i=a,s=n.split(".");s.slice(0,-1).forEach((function(e){i=i[e]})),i[s[s.length-1]]=o}));var o=a.__comp;delete a.__comp;var i=a.__context;delete a.__context;var c=a.__props;return delete a.__props,(0,s.jsx)(u.W,{value:i,children:(0,s.jsx)(o,Object.assign({},a,c,n))})}})}const p=[{path:"/search",component:d("/search","5de"),exact:!0},{path:"/docs",component:d("/docs","9c8"),routes:[{path:"/docs",component:d("/docs","862"),routes:[{path:"/docs",component:d("/docs","5b2"),routes:[{path:"/docs/alpha-program",component:d("/docs/alpha-program","9f0"),exact:!0,sidebar:"docs"},{path:"/docs/ambassadors",component:d("/docs/ambassadors","718"),exact:!0,sidebar:"docs"},{path:"/docs/apps-index",component:d("/docs/apps-index","b46"),exact:!0,sidebar:"docs"},{path:"/docs/bug-bounty",component:d("/docs/bug-bounty","1ba"),exact:!0,sidebar:"docs"},{path:"/docs/build-client-index",component:d("/docs/build-client-index","e7c"),exact:!0,sidebar:"docs"},{path:"/docs/build-client-side",component:d("/docs/build-client-side","65f"),exact:!0,sidebar:"docs"},{path:"/docs/build-dapp",component:d("/docs/build-dapp","b5a"),exact:!0},{path:"/docs/build-data",component:d("/docs/build-data","95f"),exact:!0,sidebar:"docs"},{path:"/docs/build-guide",component:d("/docs/build-guide","479"),exact:!0,sidebar:"docs"},{path:"/docs/build-guides-coretime-start",component:d("/docs/build-guides-coretime-start","7be"),exact:!0,sidebar:"docs"},{path:"/docs/build-guides-coretime-troubleshoot",component:d("/docs/build-guides-coretime-troubleshoot","0fb"),exact:!0,sidebar:"docs"},{path:"/docs/build-guides-install-deps",component:d("/docs/build-guides-install-deps","5f9"),exact:!0,sidebar:"docs"},{path:"/docs/build-guides-template-basic",component:d("/docs/build-guides-template-basic","752"),exact:!0,sidebar:"docs"},{path:"/docs/build-hackathon",component:d("/docs/build-hackathon","c97"),exact:!0,sidebar:"docs"},{path:"/docs/build-hrmp-channels",component:d("/docs/build-hrmp-channels","05c"),exact:!0,sidebar:"docs"},{path:"/docs/build-index",component:d("/docs/build-index","26d"),exact:!0},{path:"/docs/build-integrate-assets",component:d("/docs/build-integrate-assets","3ad"),exact:!0,sidebar:"docs"},{path:"/docs/build-integration",component:d("/docs/build-integration","00e"),exact:!0},{path:"/docs/build-light-clients",component:d("/docs/build-light-clients","f31"),exact:!0,sidebar:"docs"},{path:"/docs/build-network-overview",component:d("/docs/build-network-overview","fb1"),exact:!0,sidebar:"docs"},{path:"/docs/build-node-interaction",component:d("/docs/build-node-interaction","f39"),exact:!0,sidebar:"docs"},{path:"/docs/build-node-management",component:d("/docs/build-node-management","1c9"),exact:!0},{path:"/docs/build-open-source",component:d("/docs/build-open-source","aee"),exact:!0,sidebar:"docs"},{path:"/docs/build-oracle",component:d("/docs/build-oracle","392"),exact:!0},{path:"/docs/build-pdk",component:d("/docs/build-pdk","023"),exact:!0},{path:"/docs/build-protocol-index",component:d("/docs/build-protocol-index","aac"),exact:!0,sidebar:"docs"},{path:"/docs/build-protocol-info",component:d("/docs/build-protocol-info","10f"),exact:!0,sidebar:"docs"},{path:"/docs/build-smart-contracts",component:d("/docs/build-smart-contracts","bd5"),exact:!0,sidebar:"docs"},{path:"/docs/build-storage",component:d("/docs/build-storage","451"),exact:!0},{path:"/docs/build-tools-index",component:d("/docs/build-tools-index","6fd"),exact:!0,sidebar:"docs"},{path:"/docs/build-transaction-construction",component:d("/docs/build-transaction-construction","19b"),exact:!0},{path:"/docs/chain-state-values",component:d("/docs/chain-state-values","c41"),exact:!0},{path:"/docs/community",component:d("/docs/community","d96"),exact:!0,sidebar:"docs"},{path:"/docs/community-index",component:d("/docs/community-index","d5a"),exact:!0,sidebar:"docs"},{path:"/docs/contributing",component:d("/docs/contributing","89f"),exact:!0,sidebar:"docs"},{path:"/docs/contributors",component:d("/docs/contributors","420"),exact:!0,sidebar:"docs"},{path:"/docs/dashboards-index",component:d("/docs/dashboards-index","421"),exact:!0,sidebar:"docs"},{path:"/docs/decentralized-futures",component:d("/docs/decentralized-futures","ff3"),exact:!0,sidebar:"docs"},{path:"/docs/decentralized-voices",component:d("/docs/decentralized-voices","f82"),exact:!0,sidebar:"docs"},{path:"/docs/dev-heroes",component:d("/docs/dev-heroes","3a5"),exact:!0,sidebar:"docs"},{path:"/docs/ecosystem-funds",component:d("/docs/ecosystem-funds","802"),exact:!0},{path:"/docs/explore-index",component:d("/docs/explore-index","1f3"),exact:!0,sidebar:"docs"},{path:"/docs/faq",component:d("/docs/faq","d8a"),exact:!0,sidebar:"docs"},{path:"/docs/funding",component:d("/docs/funding","331"),exact:!0,sidebar:"docs"},{path:"/docs/general-index",component:d("/docs/general-index","409"),exact:!0,sidebar:"docs"},{path:"/docs/general/dune-analytics/acala-dashboards",component:d("/docs/general/dune-analytics/acala-dashboards","b19"),exact:!0},{path:"/docs/general/dune-analytics/assethub-dashboards",component:d("/docs/general/dune-analytics/assethub-dashboards","7a1"),exact:!0},{path:"/docs/general/dune-analytics/astar-dashboards",component:d("/docs/general/dune-analytics/astar-dashboards","278"),exact:!0},{path:"/docs/general/dune-analytics/bifrost-dashboards",component:d("/docs/general/dune-analytics/bifrost-dashboards","dde"),exact:!0},{path:"/docs/general/dune-analytics/bridgehub-dashboards",component:d("/docs/general/dune-analytics/bridgehub-dashboards","58a"),exact:!0},{path:"/docs/general/dune-analytics/centrifuge-dashboards",component:d("/docs/general/dune-analytics/centrifuge-dashboards","f51"),exact:!0},{path:"/docs/general/dune-analytics/collectives-dashboards",component:d("/docs/general/dune-analytics/collectives-dashboards","73e"),exact:!0},{path:"/docs/general/dune-analytics/coretime-dashboards",component:d("/docs/general/dune-analytics/coretime-dashboards","49c"),exact:!0},{path:"/docs/general/dune-analytics/energywebx-dashboards",component:d("/docs/general/dune-analytics/energywebx-dashboards","249"),exact:!0},{path:"/docs/general/dune-analytics/frequency-dashboards",component:d("/docs/general/dune-analytics/frequency-dashboards","31a"),exact:!0},{path:"/docs/general/dune-analytics/hydration-dashboards",component:d("/docs/general/dune-analytics/hydration-dashboards","748"),exact:!0},{path:"/docs/general/dune-analytics/interlay-dashboards",component:d("/docs/general/dune-analytics/interlay-dashboards","5f6"),exact:!0},{path:"/docs/general/dune-analytics/invarch-dashboards",component:d("/docs/general/dune-analytics/invarch-dashboards","960"),exact:!0},{path:"/docs/general/dune-analytics/litentry-dashboards",component:d("/docs/general/dune-analytics/litentry-dashboards","b2f"),exact:!0},{path:"/docs/general/dune-analytics/manta-dashboards",component:d("/docs/general/dune-analytics/manta-dashboards","90a"),exact:!0},{path:"/docs/general/dune-analytics/moonbeam-dashboards",component:d("/docs/general/dune-analytics/moonbeam-dashboards","212"),exact:!0},{path:"/docs/general/dune-analytics/neuroweb-dashboards",component:d("/docs/general/dune-analytics/neuroweb-dashboards","7ae"),exact:!0},{path:"/docs/general/dune-analytics/nodle-dashboards",component:d("/docs/general/dune-analytics/nodle-dashboards","32d"),exact:!0},{path:"/docs/general/dune-analytics/pendulum-dashboards",component:d("/docs/general/dune-analytics/pendulum-dashboards","f49"),exact:!0},{path:"/docs/general/dune-analytics/people-dashboards",component:d("/docs/general/dune-analytics/people-dashboards","0d0"),exact:!0},{path:"/docs/general/dune-analytics/phala-dashboards",component:d("/docs/general/dune-analytics/phala-dashboards","547"),exact:!0},{path:"/docs/general/dune-analytics/polimec-dashboards",component:d("/docs/general/dune-analytics/polimec-dashboards","d65"),exact:!0},{path:"/docs/general/dune-analytics/polkadex-dashboards",component:d("/docs/general/dune-analytics/polkadex-dashboards","5d2"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards-governance",component:d("/docs/general/dune-analytics/polkadot-dashboards-governance","464"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards-network",component:d("/docs/general/dune-analytics/polkadot-dashboards-network","bac"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards-overview",component:d("/docs/general/dune-analytics/polkadot-dashboards-overview","b3c"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards-staking",component:d("/docs/general/dune-analytics/polkadot-dashboards-staking","4c2"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-dot-ordinals",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-dot-ordinals","2ad"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-governance-dashboard",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-governance-dashboard","bf1"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-opengov-referenda-home",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-opengov-referenda-home","b4b"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-opengov-referendum-voting-analysis",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-opengov-referendum-voting-analysis","cfb"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard","856"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-nomination-pool",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-nomination-pool","613"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-nominators",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-nominators","a03"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-pool-member",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-pool-member","ddb"),exact:!0},{path:"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-validators",component:d("/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-validators","d6d"),exact:!0},{path:"/docs/general/dune-analytics/snowbridge-dashboards",component:d("/docs/general/dune-analytics/snowbridge-dashboards","09e"),exact:!0},{path:"/docs/general/dune-analytics/stellaswap-dashboards",component:d("/docs/general/dune-analytics/stellaswap-dashboards","a01"),exact:!0},{path:"/docs/general/dune-analytics/unique-dashboards",component:d("/docs/general/dune-analytics/unique-dashboards","18e"),exact:!0},{path:"/docs/general/dunesql-cheatsheet",component:d("/docs/general/dunesql-cheatsheet","5fe"),exact:!0},{path:"/docs/general/onboarding-status-and-key-dashboards",component:d("/docs/general/onboarding-status-and-key-dashboards","46f"),exact:!0},{path:"/docs/general/polkadot-ecosystem-overview",component:d("/docs/general/polkadot-ecosystem-overview","4a3"),exact:!0},{path:"/docs/general/project-dashboards",component:d("/docs/general/project-dashboards","524"),exact:!0},{path:"/docs/getting-started",component:d("/docs/getting-started","0ce"),exact:!0},{path:"/docs/glossary",component:d("/docs/glossary","233"),exact:!0,sidebar:"docs"},{path:"/docs/governance-apps",component:d("/docs/governance-apps","dbc"),exact:!0,sidebar:"docs"},{path:"/docs/grants",component:d("/docs/grants","586"),exact:!0,sidebar:"docs"},{path:"/docs/how-to-dyor",component:d("/docs/how-to-dyor","9ea"),exact:!0,sidebar:"docs"},{path:"/docs/kusama-adversarial-cheatsheet",component:d("/docs/kusama-adversarial-cheatsheet","7ad"),exact:!0,sidebar:"docs"},{path:"/docs/kusama-bug-bounty",component:d("/docs/kusama-bug-bounty","5ce"),exact:!0,sidebar:"docs"},{path:"/docs/kusama-coc",component:d("/docs/kusama-coc","fee"),exact:!0,sidebar:"docs"},{path:"/docs/kusama-getting-started",component:d("/docs/kusama-getting-started","d5d"),exact:!0,sidebar:"docs"},{path:"/docs/kusama-social-recovery",component:d("/docs/kusama-social-recovery","f3d"),exact:!0,sidebar:"docs"},{path:"/docs/kusama-timeline",component:d("/docs/kusama-timeline","d67"),exact:!0,sidebar:"docs"},{path:"/docs/learn-account-abstraction",component:d("/docs/learn-account-abstraction","670"),exact:!0,sidebar:"docs"},{path:"/docs/learn-account-advanced",component:d("/docs/learn-account-advanced","652"),exact:!0,sidebar:"docs"},{path:"/docs/learn-account-balances",component:d("/docs/learn-account-balances","8e6"),exact:!0,sidebar:"docs"},{path:"/docs/learn-account-multisig",component:d("/docs/learn-account-multisig","f13"),exact:!0,sidebar:"docs"},{path:"/docs/learn-accounts",component:d("/docs/learn-accounts","42e"),exact:!0,sidebar:"docs"},{path:"/docs/learn-advanced-index",component:d("/docs/learn-advanced-index","63e"),exact:!0,sidebar:"docs"},{path:"/docs/learn-agile-coretime",component:d("/docs/learn-agile-coretime","224"),exact:!0,sidebar:"docs"},{path:"/docs/learn-agile-coretime-getting-started",component:d("/docs/learn-agile-coretime-getting-started","db7"),exact:!0,sidebar:"docs"},{path:"/docs/learn-agile-coretime-index",component:d("/docs/learn-agile-coretime-index","fa7"),exact:!0,sidebar:"docs"},{path:"/docs/learn-architecture",component:d("/docs/learn-architecture","908"),exact:!0,sidebar:"docs"},{path:"/docs/learn-archive",component:d("/docs/learn-archive","ca8"),exact:!0,sidebar:"docs"},{path:"/docs/learn-asset-conversion-assethub",component:d("/docs/learn-asset-conversion-assethub","853"),exact:!0},{path:"/docs/learn-assets",component:d("/docs/learn-assets","479"),exact:!0,sidebar:"docs"},{path:"/docs/learn-assets-index",component:d("/docs/learn-assets-index","506"),exact:!0,sidebar:"docs"},{path:"/docs/learn-async-backing",component:d("/docs/learn-async-backing","203"),exact:!0,sidebar:"docs"},{path:"/docs/learn-basics-index",component:d("/docs/learn-basics-index","2ab"),exact:!0,sidebar:"docs"},{path:"/docs/learn-bridges",component:d("/docs/learn-bridges","c95"),exact:!0,sidebar:"docs"},{path:"/docs/learn-collator",component:d("/docs/learn-collator","58b"),exact:!0,sidebar:"docs"},{path:"/docs/learn-comparisons",component:d("/docs/learn-comparisons","722"),exact:!0},{path:"/docs/learn-comparisons-avalanche",component:d("/docs/learn-comparisons-avalanche","c0c"),exact:!0},{path:"/docs/learn-comparisons-cosmos",component:d("/docs/learn-comparisons-cosmos","bd1"),exact:!0},{path:"/docs/learn-comparisons-ethereum-2",component:d("/docs/learn-comparisons-ethereum-2","227"),exact:!0},{path:"/docs/learn-comparisons-kusama",component:d("/docs/learn-comparisons-kusama","5fb"),exact:!0},{path:"/docs/learn-comparisons-rollups",component:d("/docs/learn-comparisons-rollups","6c5"),exact:!0},{path:"/docs/learn-components-index",component:d("/docs/learn-components-index","ba1"),exact:!0,sidebar:"docs"},{path:"/docs/learn-consensus",component:d("/docs/learn-consensus","83d"),exact:!0,sidebar:"docs"},{path:"/docs/learn-cryptography",component:d("/docs/learn-cryptography","ed0"),exact:!0,sidebar:"docs"},{path:"/docs/learn-DOT",component:d("/docs/learn-DOT","829"),exact:!0,sidebar:"docs"},{path:"/docs/learn-dot-ksm-bridge",component:d("/docs/learn-dot-ksm-bridge","cac"),exact:!0,sidebar:"docs"},{path:"/docs/learn-elastic-scaling",component:d("/docs/learn-elastic-scaling","44a"),exact:!0,sidebar:"docs"},{path:"/docs/learn-future-implementations-index",component:d("/docs/learn-future-implementations-index","e25"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-accounts",component:d("/docs/learn-guides-accounts","39f"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-accounts-multisig",component:d("/docs/learn-guides-accounts-multisig","53f"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-accounts-proxy",component:d("/docs/learn-guides-accounts-proxy","d1c"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-accounts-proxy-pure",component:d("/docs/learn-guides-accounts-proxy-pure","bbc"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-asset-conversion",component:d("/docs/learn-guides-asset-conversion","ef4"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-assets",component:d("/docs/learn-guides-assets","8f4"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-assets-create",component:d("/docs/learn-guides-assets-create","5a5"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-bounties",component:d("/docs/learn-guides-bounties","43b"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-bridges",component:d("/docs/learn-guides-bridges","7e1"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-claims",component:d("/docs/learn-guides-claims","aa7"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-coretime-marketplaces",component:d("/docs/learn-guides-coretime-marketplaces","515"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-coretime-parachains",component:d("/docs/learn-guides-coretime-parachains","8e6"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-coretime-swap",component:d("/docs/learn-guides-coretime-swap","2e6"),exact:!0},{path:"/docs/learn-guides-dot-ksm-bridge",component:d("/docs/learn-guides-dot-ksm-bridge","03a"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-identity",component:d("/docs/learn-guides-identity","259"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-ledger",component:d("/docs/learn-guides-ledger","4d2"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-nominator",component:d("/docs/learn-guides-nominator","d01"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-polkadot-opengov",component:d("/docs/learn-guides-polkadot-opengov","e43"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-staking",component:d("/docs/learn-guides-staking","c84"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-staking-pools",component:d("/docs/learn-guides-staking-pools","599"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-test-opengov-proposals",component:d("/docs/learn-guides-test-opengov-proposals","f25"),exact:!0},{path:"/docs/learn-guides-transfers",component:d("/docs/learn-guides-transfers","d9a"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-treasury",component:d("/docs/learn-guides-treasury","378"),exact:!0,sidebar:"docs"},{path:"/docs/learn-guides-vault",component:d("/docs/learn-guides-vault","c39"),exact:!0,sidebar:"docs"},{path:"/docs/learn-hyperbridge",component:d("/docs/learn-hyperbridge","646"),exact:!0,sidebar:"docs"},{path:"/docs/learn-identity",component:d("/docs/learn-identity","2c1"),exact:!0,sidebar:"docs"},{path:"/docs/learn-implementations",component:d("/docs/learn-implementations","9b0"),exact:!0},{path:"/docs/learn-index",component:d("/docs/learn-index","0b7"),exact:!0,sidebar:"docs"},{path:"/docs/learn-inflation",component:d("/docs/learn-inflation","649"),exact:!0,sidebar:"docs"},{path:"/docs/learn-jam-chain",component:d("/docs/learn-jam-chain","24b"),exact:!0},{path:"/docs/learn-jam-faq",component:d("/docs/learn-jam-faq","b6d"),exact:!0},{path:"/docs/learn-kusama-inflation",component:d("/docs/learn-kusama-inflation","d12"),exact:!0},{path:"/docs/learn-nft",component:d("/docs/learn-nft","078"),exact:!0,sidebar:"docs"},{path:"/docs/learn-nft-pallets",component:d("/docs/learn-nft-pallets","665"),exact:!0,sidebar:"docs"},{path:"/docs/learn-nft-projects",component:d("/docs/learn-nft-projects","226"),exact:!0,sidebar:"docs"},{path:"/docs/learn-nomination-pools",component:d("/docs/learn-nomination-pools","328"),exact:!0,sidebar:"docs"},{path:"/docs/learn-nominator",component:d("/docs/learn-nominator","043"),exact:!0,sidebar:"docs"},{path:"/docs/learn-offenses",component:d("/docs/learn-offenses","be7"),exact:!0,sidebar:"docs"},{path:"/docs/learn-parachains",component:d("/docs/learn-parachains","b9e"),exact:!0,sidebar:"docs"},{path:"/docs/learn-parachains-faq",component:d("/docs/learn-parachains-faq","357"),exact:!0,sidebar:"docs"},{path:"/docs/learn-parachains-index",component:d("/docs/learn-parachains-index","e80"),exact:!0,sidebar:"docs"},{path:"/docs/learn-parachains-protocol",component:d("/docs/learn-parachains-protocol","0a7"),exact:!0,sidebar:"docs"},{path:"/docs/learn-participants-index",component:d("/docs/learn-participants-index","426"),exact:!0,sidebar:"docs"},{path:"/docs/learn-phragmen",component:d("/docs/learn-phragmen","773"),exact:!0,sidebar:"docs"},{path:"/docs/learn-polkadot-host",component:d("/docs/learn-polkadot-host","92a"),exact:!0,sidebar:"docs"},{path:"/docs/learn-polkadot-js-guides",component:d("/docs/learn-polkadot-js-guides","347"),exact:!0,sidebar:"docs"},{path:"/docs/learn-polkadot-opengov",component:d("/docs/learn-polkadot-opengov","3b3"),exact:!0,sidebar:"docs"},{path:"/docs/learn-polkadot-opengov-index",component:d("/docs/learn-polkadot-opengov-index","922"),exact:!0,sidebar:"docs"},{path:"/docs/learn-polkadot-opengov-origins",component:d("/docs/learn-polkadot-opengov-origins","9d6"),exact:!0,sidebar:"docs"},{path:"/docs/learn-polkadot-opengov-treasury",component:d("/docs/learn-polkadot-opengov-treasury","140"),exact:!0,sidebar:"docs"},{path:"/docs/learn-polkadot-technical-fellowship",component:d("/docs/learn-polkadot-technical-fellowship","456"),exact:!0},{path:"/docs/learn-polkadotjs",component:d("/docs/learn-polkadotjs","089"),exact:!0,sidebar:"docs"},{path:"/docs/learn-proxies",component:d("/docs/learn-proxies","a18"),exact:!0,sidebar:"docs"},{path:"/docs/learn-proxies-pure",component:d("/docs/learn-proxies-pure","8be"),exact:!0,sidebar:"docs"},{path:"/docs/learn-runtime-upgrades",component:d("/docs/learn-runtime-upgrades","582"),exact:!0,sidebar:"docs"},{path:"/docs/learn-safrole",component:d("/docs/learn-safrole","213"),exact:!0,sidebar:"docs"},{path:"/docs/learn-scams",component:d("/docs/learn-scams","a7e"),exact:!0,sidebar:"docs"},{path:"/docs/learn-snowbridge",component:d("/docs/learn-snowbridge","639"),exact:!0},{path:"/docs/learn-spree",component:d("/docs/learn-spree","c79"),exact:!0,sidebar:"docs"},{path:"/docs/learn-staking",component:d("/docs/learn-staking","bf3"),exact:!0,sidebar:"docs"},{path:"/docs/learn-staking-advanced",component:d("/docs/learn-staking-advanced","33a"),exact:!0,sidebar:"docs"},{path:"/docs/learn-staking-index",component:d("/docs/learn-staking-index","cf9"),exact:!0,sidebar:"docs"},{path:"/docs/learn-system-chains",component:d("/docs/learn-system-chains","3b8"),exact:!0,sidebar:"docs"},{path:"/docs/learn-teleport",component:d("/docs/learn-teleport","18c"),exact:!0,sidebar:"docs"},{path:"/docs/learn-transactions",component:d("/docs/learn-transactions","340"),exact:!0,sidebar:"docs"},{path:"/docs/learn-validator",component:d("/docs/learn-validator","ef1"),exact:!0,sidebar:"docs"},{path:"/docs/learn-video-tutorials",component:d("/docs/learn-video-tutorials","64f"),exact:!0,sidebar:"docs"},{path:"/docs/learn-wasm",component:d("/docs/learn-wasm","0b7"),exact:!0,sidebar:"docs"},{path:"/docs/learn-xcm",component:d("/docs/learn-xcm","20d"),exact:!0,sidebar:"docs"},{path:"/docs/learn-xcm-index",component:d("/docs/learn-xcm-index","49c"),exact:!0,sidebar:"docs"},{path:"/docs/learn-xcm-instructions",component:d("/docs/learn-xcm-instructions","8ed"),exact:!0,sidebar:"docs"},{path:"/docs/learn-xcm-pallet",component:d("/docs/learn-xcm-pallet","3da"),exact:!0,sidebar:"docs"},{path:"/docs/learn-xcm-transport",component:d("/docs/learn-xcm-transport","5ef"),exact:!0,sidebar:"docs"},{path:"/docs/learn-xcm-usecases",component:d("/docs/learn-xcm-usecases","2ae"),exact:!0,sidebar:"docs"},{path:"/docs/learn-xcvm",component:d("/docs/learn-xcvm","d56"),exact:!0,sidebar:"docs"},{path:"/docs/learn/learn-auction",component:d("/docs/learn/learn-auction","9ae"),exact:!0,sidebar:"docs"},{path:"/docs/learn/learn-controller",component:d("/docs/learn/learn-controller","d30"),exact:!0,sidebar:"docs"},{path:"/docs/learn/learn-crowdloans",component:d("/docs/learn/learn-crowdloans","b27"),exact:!0,sidebar:"docs"},{path:"/docs/learn/learn-governance",component:d("/docs/learn/learn-governance","fde"),exact:!0,sidebar:"docs"},{path:"/docs/learn/learn-launch",component:d("/docs/learn/learn-launch","853"),exact:!0,sidebar:"docs"},{path:"/docs/learn/learn-redenomination",component:d("/docs/learn/learn-redenomination","6a6"),exact:!0,sidebar:"docs"},{path:"/docs/learn/learn-treasury",component:d("/docs/learn/learn-treasury","75c"),exact:!0,sidebar:"docs"},{path:"/docs/learn/thousand-validators",component:d("/docs/learn/thousand-validators","138"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm",component:d("/docs/learn/xcm","995"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/config-deep-dive",component:d("/docs/learn/xcm/config-deep-dive","b64"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals",component:d("/docs/learn/xcm/fundamentals","13d"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals-fees",component:d("/docs/learn/xcm/fundamentals-fees","6b3"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals-multiasset",component:d("/docs/learn/xcm/fundamentals-multiasset","001"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals-summary",component:d("/docs/learn/xcm/fundamentals-summary","a4b"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals-xcvm",component:d("/docs/learn/xcm/fundamentals-xcvm","086"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals/multilocation",component:d("/docs/learn/xcm/fundamentals/multilocation","e19"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals/multilocation-example",component:d("/docs/learn/xcm/fundamentals/multilocation-example","358"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals/multilocation-junctions",component:d("/docs/learn/xcm/fundamentals/multilocation-junctions","e64"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/fundamentals/multilocation-summary",component:d("/docs/learn/xcm/fundamentals/multilocation-summary","958"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/introduction",component:d("/docs/learn/xcm/introduction","813"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey",component:d("/docs/learn/xcm/journey","0b1"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-assets",component:d("/docs/learn/xcm/journey-assets","bf0"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-channels",component:d("/docs/learn/xcm/journey-channels","22c"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-expectations",component:d("/docs/learn/xcm/journey-expectations","c0f"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-fees",component:d("/docs/learn/xcm/journey-fees","193"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-holding",component:d("/docs/learn/xcm/journey-holding","b29"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-locks",component:d("/docs/learn/xcm/journey-locks","f3a"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-origin",component:d("/docs/learn/xcm/journey-origin","a4d"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-queries",component:d("/docs/learn/xcm/journey-queries","670"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-register",component:d("/docs/learn/xcm/journey-register","0fe"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-summary",component:d("/docs/learn/xcm/journey-summary","6a3"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-transact",component:d("/docs/learn/xcm/journey-transact","eae"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey-version",component:d("/docs/learn/xcm/journey-version","d38"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey/transfers",component:d("/docs/learn/xcm/journey/transfers","d74"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey/transfers-reserve",component:d("/docs/learn/xcm/journey/transfers-reserve","4a6"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey/transfers-summary",component:d("/docs/learn/xcm/journey/transfers-summary","2e8"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/journey/transfers-teleport",component:d("/docs/learn/xcm/journey/transfers-teleport","2a8"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/overview",component:d("/docs/learn/xcm/overview","376"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/overview-architecture",component:d("/docs/learn/xcm/overview-architecture","7ac"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/overview-format",component:d("/docs/learn/xcm/overview-format","bef"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/overview-intro",component:d("/docs/learn/xcm/overview-intro","32c"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/overview-summary",component:d("/docs/learn/xcm/overview-summary","daf"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/overview-xcvm",component:d("/docs/learn/xcm/overview-xcvm","238"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/quickstart",component:d("/docs/learn/xcm/quickstart","9db"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/quickstart-first-look",component:d("/docs/learn/xcm/quickstart-first-look","b8c"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/quickstart-simulator",component:d("/docs/learn/xcm/quickstart-simulator","de9"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/quickstart-summary",component:d("/docs/learn/xcm/quickstart-summary","30b"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/reference-glossary",component:d("/docs/learn/xcm/reference-glossary","aa6"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/reference-xcvm-registers",component:d("/docs/learn/xcm/reference-xcvm-registers","043"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/references",component:d("/docs/learn/xcm/references","61c"),exact:!0,sidebar:"docs"},{path:"/docs/learn/xcm/testing",component:d("/docs/learn/xcm/testing","81b"),exact:!0,sidebar:"docs"},{path:"/docs/ledger",component:d("/docs/ledger","780"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-archive",component:d("/docs/maintain-archive","17f"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-bootnode",component:d("/docs/maintain-bootnode","c8b"),exact:!0},{path:"/docs/maintain-endpoints",component:d("/docs/maintain-endpoints","cee"),exact:!0},{path:"/docs/maintain-errors",component:d("/docs/maintain-errors","57a"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-guides-async-backing",component:d("/docs/maintain-guides-async-backing","82f"),exact:!0},{path:"/docs/maintain-guides-how-to-chill",component:d("/docs/maintain-guides-how-to-chill","21d"),exact:!0},{path:"/docs/maintain-guides-how-to-monitor-your-node",component:d("/docs/maintain-guides-how-to-monitor-your-node","1b0"),exact:!0},{path:"/docs/maintain-guides-how-to-stop-validating",component:d("/docs/maintain-guides-how-to-stop-validating","67e"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-guides-how-to-systemd",component:d("/docs/maintain-guides-how-to-systemd","d67"),exact:!0},{path:"/docs/maintain-guides-how-to-upgrade",component:d("/docs/maintain-guides-how-to-upgrade","5a6"),exact:!0},{path:"/docs/maintain-guides-how-to-validate-kusama",component:d("/docs/maintain-guides-how-to-validate-kusama","3b0"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-guides-how-to-validate-polkadot",component:d("/docs/maintain-guides-how-to-validate-polkadot","07e"),exact:!0},{path:"/docs/maintain-guides-secure-validator",component:d("/docs/maintain-guides-secure-validator","e98"),exact:!0},{path:"/docs/maintain-guides-society-kusama",component:d("/docs/maintain-guides-society-kusama","059"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-guides-validator-community",component:d("/docs/maintain-guides-validator-community","699"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-guides-validator-payout",component:d("/docs/maintain-guides-validator-payout","605"),exact:!0},{path:"/docs/maintain-index",component:d("/docs/maintain-index","c57"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-networks",component:d("/docs/maintain-networks","5e9"),exact:!0},{path:"/docs/maintain-polkadot-parameters",component:d("/docs/maintain-polkadot-parameters","38b"),exact:!0,sidebar:"docs"},{path:"/docs/maintain-rpc",component:d("/docs/maintain-rpc","013"),exact:!0},{path:"/docs/maintain-sync",component:d("/docs/maintain-sync","580"),exact:!0},{path:"/docs/maintain-wss",component:d("/docs/maintain-wss","a8e"),exact:!0},{path:"/docs/maintain/maintain-guides-democracy",component:d("/docs/maintain/maintain-guides-democracy","0ce"),exact:!0,sidebar:"docs"},{path:"/docs/maintain/maintain-guides-how-to-join-council",component:d("/docs/maintain/maintain-guides-how-to-join-council","992"),exact:!0,sidebar:"docs"},{path:"/docs/maintain/maintain-guides-how-to-vote-councillor",component:d("/docs/maintain/maintain-guides-how-to-vote-councillor","817"),exact:!0,sidebar:"docs"},{path:"/docs/metadata",component:d("/docs/metadata","e9a"),exact:!0,sidebar:"docs"},{path:"/docs/multisig-apps",component:d("/docs/multisig-apps","4d5"),exact:!0,sidebar:"docs"},{path:"/docs/parachains-apps",component:d("/docs/parachains-apps","a17"),exact:!0,sidebar:"docs"},{path:"/docs/parity-data-dashboards",component:d("/docs/parity-data-dashboards","11c"),exact:!0,sidebar:"docs"},{path:"/docs/polkadot-community-foundation",component:d("/docs/polkadot-community-foundation","ca8"),exact:!0},{path:"/docs/polkadot-direction",component:d("/docs/polkadot-direction","40a"),exact:!0,sidebar:"docs"},{path:"/docs/polkadot-v1",component:d("/docs/polkadot-v1","db1"),exact:!0,sidebar:"docs"},{path:"/docs/polkadot-vault",component:d("/docs/polkadot-vault","e33"),exact:!0,sidebar:"docs"},{path:"/docs/polkadot-vision-index",component:d("/docs/polkadot-vision-index","641"),exact:!0,sidebar:"docs"},{path:"/docs/polkadotjs",component:d("/docs/polkadotjs","8d7"),exact:!0,sidebar:"docs"},{path:"/docs/polkadotjs-ui",component:d("/docs/polkadotjs-ui","4c2"),exact:!0,sidebar:"docs"},{path:"/docs/programs-index",component:d("/docs/programs-index","292"),exact:!0,sidebar:"docs"},{path:"/docs/staking-apps",component:d("/docs/staking-apps","c2d"),exact:!0,sidebar:"docs"},{path:"/docs/staking-dashboard",component:d("/docs/staking-dashboard","a19"),exact:!0,sidebar:"docs"},{path:"/docs/start-building",component:d("/docs/start-building","501"),exact:!0,sidebar:"docs"},{path:"/docs/stay-safe-index",component:d("/docs/stay-safe-index","e19"),exact:!0,sidebar:"docs"},{path:"/docs/thousand-contributors",component:d("/docs/thousand-contributors","b6c"),exact:!0,sidebar:"docs"},{path:"/docs/transaction-attacks",component:d("/docs/transaction-attacks","5b0"),exact:!0,sidebar:"docs"},{path:"/docs/wallets-and-extensions",component:d("/docs/wallets-and-extensions","be8"),exact:!0,sidebar:"docs"},{path:"/docs/wallets-index",component:d("/docs/wallets-index","d70"),exact:!0,sidebar:"docs"},{path:"/docs/web3-and-polkadot",component:d("/docs/web3-and-polkadot","a00"),exact:!0,sidebar:"docs"}]}]}]},{path:"/",component:d("/","2e1"),exact:!0},{path:"*",component:d("*")}]},6125:(e,t,n)=>{"use strict";n.d(t,{o:()=>o,x:()=>i});var r=n(96540),a=n(74848),o=r.createContext(!1);function i(e){var t=e.children,n=(0,r.useState)(!1),i=n[0],s=n[1];return(0,r.useEffect)((function(){s(!0)}),[]),(0,a.jsx)(o.Provider,{value:i,children:t})}},70588:(e,t,n)=>{"use strict";var r=n(96540),a=n(5338),o=n(80545),i=n(54625),s=n(84450),c=n(38193);const l=[n(10119),n(26134),n(76294),n(32507),n(40282)];var u=n(1459),d=n(56347),p=n(22831),f=n(74848);function m(e){var t=e.children;return(0,f.jsx)(f.Fragment,{children:t})}var h=n(5260),g=n(44586),b=n(86025),y=n(6342),v=n(69024),x=n(32131),w=n(14090),k=n(2967),_=n(70440),S=n(41463);function E(){var e=(0,g.A)().i18n,t=e.currentLocale,n=e.defaultLocale,r=e.localeConfigs,a=(0,x.o)(),o=r[t].htmlLang,i=function(e){return e.replace("-","_")};return(0,f.jsxs)(h.A,{children:[Object.entries(r).map((function(e){var t=e[0],n=e[1].htmlLang;return(0,f.jsx)("link",{rel:"alternate",href:a.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,f.jsx)("link",{rel:"alternate",href:a.createUrl({locale:n,fullyQualified:!0}),hrefLang:"x-default"}),(0,f.jsx)("meta",{property:"og:locale",content:i(o)}),Object.values(r).filter((function(e){return o!==e.htmlLang})).map((function(e){return(0,f.jsx)("meta",{property:"og:locale:alternate",content:i(e.htmlLang)},"meta-og-"+e.htmlLang)}))]})}function j(e){var t=e.permalink,n=(0,g.A)().siteConfig.url,r=function(){var e=(0,g.A)().siteConfig,t=e.url,n=e.baseUrl,r=e.trailingSlash,a=(0,d.zy)().pathname;return t+(0,_.Ks)((0,b.Ay)(a),{trailingSlash:r,baseUrl:n})}(),a=t?""+n+t:r;return(0,f.jsxs)(h.A,{children:[(0,f.jsx)("meta",{property:"og:url",content:a}),(0,f.jsx)("link",{rel:"canonical",href:a})]})}function O(){var e=(0,g.A)().i18n.currentLocale,t=(0,y.p)(),n=t.metadata,r=t.image;return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)(h.A,{children:[(0,f.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,f.jsx)("body",{className:w.w})]}),r&&(0,f.jsx)(v.be,{image:r}),(0,f.jsx)(j,{}),(0,f.jsx)(E,{}),(0,f.jsx)(S.A,{tag:k.C,locale:e}),(0,f.jsx)(h.A,{children:n.map((function(e,t){return(0,f.jsx)("meta",Object.assign({},e),t)}))})]})}var A=new Map;var C=n(6125),P=n(76202),T=n(77387),I=n(205);function N(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = '+e+" "+("/"===e?" (default value)":"")+'

\n

We suggest trying baseUrl =

\n\n'}(e)).replace(/{"use strict";n.d(t,{o:()=>d,l:()=>p});var r=n(96540),a=n(84450);const o=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs","mainDocId":"general/kusama/kusama-getting-started","docs":[{"id":"build/build-client-side","path":"/docs/build-client-side","sidebar":"docs"},{"id":"build/build-dapp","path":"/docs/build-dapp"},{"id":"build/build-data","path":"/docs/build-data","sidebar":"docs"},{"id":"build/build-guide","path":"/docs/build-guide","sidebar":"docs"},{"id":"build/build-guides-coretime-start","path":"/docs/build-guides-coretime-start","sidebar":"docs"},{"id":"build/build-guides-coretime-troubleshoot","path":"/docs/build-guides-coretime-troubleshoot","sidebar":"docs"},{"id":"build/build-guides-install-deps","path":"/docs/build-guides-install-deps","sidebar":"docs"},{"id":"build/build-guides-template-basic","path":"/docs/build-guides-template-basic","sidebar":"docs"},{"id":"build/build-hackathon","path":"/docs/build-hackathon","sidebar":"docs"},{"id":"build/build-hrmp-channels","path":"/docs/build-hrmp-channels","sidebar":"docs"},{"id":"build/build-index","path":"/docs/build-index"},{"id":"build/build-integrate-assets","path":"/docs/build-integrate-assets","sidebar":"docs"},{"id":"build/build-integration","path":"/docs/build-integration"},{"id":"build/build-light-clients","path":"/docs/build-light-clients","sidebar":"docs"},{"id":"build/build-network-overview","path":"/docs/build-network-overview","sidebar":"docs"},{"id":"build/build-node-interaction","path":"/docs/build-node-interaction","sidebar":"docs"},{"id":"build/build-node-management","path":"/docs/build-node-management"},{"id":"build/build-open-source","path":"/docs/build-open-source","sidebar":"docs"},{"id":"build/build-oracle","path":"/docs/build-oracle"},{"id":"build/build-parachains","path":"/docs/build-pdk"},{"id":"build/build-protocol-info","path":"/docs/build-protocol-info","sidebar":"docs"},{"id":"build/build-smart-contracts","path":"/docs/build-smart-contracts","sidebar":"docs"},{"id":"build/build-storage","path":"/docs/build-storage"},{"id":"build/build-tools-index","path":"/docs/build-tools-index","sidebar":"docs"},{"id":"build/build-transaction-construction","path":"/docs/build-transaction-construction"},{"id":"general/alpha-program","path":"/docs/alpha-program","sidebar":"docs"},{"id":"general/ambassadors","path":"/docs/ambassadors","sidebar":"docs"},{"id":"general/bug-bounty","path":"/docs/bug-bounty","sidebar":"docs"},{"id":"general/chain-state-values","path":"/docs/chain-state-values"},{"id":"general/community","path":"/docs/community","sidebar":"docs"},{"id":"general/contributing","path":"/docs/contributing","sidebar":"docs"},{"id":"general/contributors","path":"/docs/contributors","sidebar":"docs"},{"id":"general/decentralized-futures","path":"/docs/decentralized-futures","sidebar":"docs"},{"id":"general/decentralized-voices","path":"/docs/decentralized-voices","sidebar":"docs"},{"id":"general/dev-heroes","path":"/docs/dev-heroes","sidebar":"docs"},{"id":"general/doc-thousand-contributors","path":"/docs/thousand-contributors","sidebar":"docs"},{"id":"general/dune-analytics/dunesql-cheatsheet","path":"/docs/general/dunesql-cheatsheet"},{"id":"general/dune-analytics/onboarding-status-and-key-dashboards","path":"/docs/general/onboarding-status-and-key-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/acala-dashboards","path":"/docs/general/dune-analytics/acala-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/assethub-dashboards","path":"/docs/general/dune-analytics/assethub-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/astar-dashboards","path":"/docs/general/dune-analytics/astar-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/bifrost-dashboards","path":"/docs/general/dune-analytics/bifrost-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/bridgehub-dashboards","path":"/docs/general/dune-analytics/bridgehub-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/centrifuge-dashboards","path":"/docs/general/dune-analytics/centrifuge-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/collectives-dashboards","path":"/docs/general/dune-analytics/collectives-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/coretime-dashboards","path":"/docs/general/dune-analytics/coretime-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/energywebx-dashboards","path":"/docs/general/dune-analytics/energywebx-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/frequency-dashboards","path":"/docs/general/dune-analytics/frequency-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/hydration-dashboards","path":"/docs/general/dune-analytics/hydration-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/interlay-dashboards","path":"/docs/general/dune-analytics/interlay-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/invarch-dashboards","path":"/docs/general/dune-analytics/invarch-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/litentry-dashboards","path":"/docs/general/dune-analytics/litentry-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/manta-dashboards","path":"/docs/general/dune-analytics/manta-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/moonbeam-dashboards","path":"/docs/general/dune-analytics/moonbeam-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/neuroweb-dashboards","path":"/docs/general/dune-analytics/neuroweb-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/nodle-dashboards","path":"/docs/general/dune-analytics/nodle-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/pendulum-dashboards","path":"/docs/general/dune-analytics/pendulum-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/people-dashboards","path":"/docs/general/dune-analytics/people-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/phala-dashboards","path":"/docs/general/dune-analytics/phala-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/polimec-dashboards","path":"/docs/general/dune-analytics/polimec-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/polkadex-dashboards","path":"/docs/general/dune-analytics/polkadex-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/snowbridge-dashboards","path":"/docs/general/dune-analytics/snowbridge-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/stellaswap-dashboards","path":"/docs/general/dune-analytics/stellaswap-dashboards"},{"id":"general/dune-analytics/parachain-dashboards/unique-dashboards","path":"/docs/general/dune-analytics/unique-dashboards"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-dot-ordinals","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-dot-ordinals"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-governance-dashboard","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-governance-dashboard"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-opengov-referenda-home","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-opengov-referenda-home"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-opengov-referendum-voting-analysis","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-opengov-referendum-voting-analysis"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-nomination-pool","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-nomination-pool"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-nominators","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-nominators"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-pool-member","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-pool-member"},{"id":"general/dune-analytics/polkadot-dashboards/legacy/polkadot-staking-dashboard-validators","path":"/docs/general/dune-analytics/polkadot-dashboards/polkadot-staking-dashboard-validators"},{"id":"general/dune-analytics/polkadot-dashboards/polkadot-dashboards-governance","path":"/docs/general/dune-analytics/polkadot-dashboards-governance"},{"id":"general/dune-analytics/polkadot-dashboards/polkadot-dashboards-network","path":"/docs/general/dune-analytics/polkadot-dashboards-network"},{"id":"general/dune-analytics/polkadot-dashboards/polkadot-dashboards-overview","path":"/docs/general/dune-analytics/polkadot-dashboards-overview"},{"id":"general/dune-analytics/polkadot-dashboards/polkadot-dashboards-staking","path":"/docs/general/dune-analytics/polkadot-dashboards-staking"},{"id":"general/dune-analytics/polkadot-ecosystem-overview","path":"/docs/general/polkadot-ecosystem-overview"},{"id":"general/dune-analytics/project-dashboards","path":"/docs/general/project-dashboards"},{"id":"general/ecosystem-funds","path":"/docs/ecosystem-funds"},{"id":"general/faq","path":"/docs/faq","sidebar":"docs"},{"id":"general/funding","path":"/docs/funding","sidebar":"docs"},{"id":"general/getting-started","path":"/docs/getting-started"},{"id":"general/glossary","path":"/docs/glossary","sidebar":"docs"},{"id":"general/governance-apps","path":"/docs/governance-apps","sidebar":"docs"},{"id":"general/grants","path":"/docs/grants","sidebar":"docs"},{"id":"general/how-to-dyor","path":"/docs/how-to-dyor","sidebar":"docs"},{"id":"general/kusama/kusama-adversarial-cheatsheet","path":"/docs/kusama-adversarial-cheatsheet","sidebar":"docs"},{"id":"general/kusama/kusama-bug-bounty","path":"/docs/kusama-bug-bounty","sidebar":"docs"},{"id":"general/kusama/kusama-coc","path":"/docs/kusama-coc","sidebar":"docs"},{"id":"general/kusama/kusama-getting-started","path":"/docs/kusama-getting-started","sidebar":"docs"},{"id":"general/kusama/kusama-social-recovery","path":"/docs/kusama-social-recovery","sidebar":"docs"},{"id":"general/kusama/kusama-timeline","path":"/docs/kusama-timeline","sidebar":"docs"},{"id":"general/ledger","path":"/docs/ledger","sidebar":"docs"},{"id":"general/metadata","path":"/docs/metadata","sidebar":"docs"},{"id":"general/multisig-apps","path":"/docs/multisig-apps","sidebar":"docs"},{"id":"general/parachains-apps","path":"/docs/parachains-apps","sidebar":"docs"},{"id":"general/parity-data-dashboards","path":"/docs/parity-data-dashboards","sidebar":"docs"},{"id":"general/polkadot-community-foundation","path":"/docs/polkadot-community-foundation"},{"id":"general/polkadot-direction","path":"/docs/polkadot-direction","sidebar":"docs"},{"id":"general/polkadot-v1","path":"/docs/polkadot-v1","sidebar":"docs"},{"id":"general/polkadot-vault","path":"/docs/polkadot-vault","sidebar":"docs"},{"id":"general/polkadotjs","path":"/docs/polkadotjs","sidebar":"docs"},{"id":"general/polkadotjs-ui","path":"/docs/polkadotjs-ui","sidebar":"docs"},{"id":"general/scams","path":"/docs/learn-scams","sidebar":"docs"},{"id":"general/staking-apps","path":"/docs/staking-apps","sidebar":"docs"},{"id":"general/staking-dashboard","path":"/docs/staking-dashboard","sidebar":"docs"},{"id":"general/start-building","path":"/docs/start-building","sidebar":"docs"},{"id":"general/transaction-attacks","path":"/docs/transaction-attacks","sidebar":"docs"},{"id":"general/wallets-and-extensions","path":"/docs/wallets-and-extensions","sidebar":"docs"},{"id":"general/web3-and-polkadot","path":"/docs/web3-and-polkadot","sidebar":"docs"},{"id":"learn/archive/learn-auction","path":"/docs/learn/learn-auction","sidebar":"docs"},{"id":"learn/archive/learn-controller","path":"/docs/learn/learn-controller","sidebar":"docs"},{"id":"learn/archive/learn-crowdloans","path":"/docs/learn/learn-crowdloans","sidebar":"docs"},{"id":"learn/archive/learn-governance","path":"/docs/learn/learn-governance","sidebar":"docs"},{"id":"learn/archive/learn-launch","path":"/docs/learn/learn-launch","sidebar":"docs"},{"id":"learn/archive/learn-redenomination","path":"/docs/learn/learn-redenomination","sidebar":"docs"},{"id":"learn/archive/learn-treasury","path":"/docs/learn/learn-treasury","sidebar":"docs"},{"id":"learn/archive/thousand-validators","path":"/docs/learn/thousand-validators","sidebar":"docs"},{"id":"learn/learn-account-abstraction","path":"/docs/learn-account-abstraction","sidebar":"docs"},{"id":"learn/learn-account-advanced","path":"/docs/learn-account-advanced","sidebar":"docs"},{"id":"learn/learn-account-balances","path":"/docs/learn-account-balances","sidebar":"docs"},{"id":"learn/learn-account-multisig","path":"/docs/learn-account-multisig","sidebar":"docs"},{"id":"learn/learn-accounts","path":"/docs/learn-accounts","sidebar":"docs"},{"id":"learn/learn-agile-coretime","path":"/docs/learn-agile-coretime","sidebar":"docs"},{"id":"learn/learn-architecture","path":"/docs/learn-architecture","sidebar":"docs"},{"id":"learn/learn-archive","path":"/docs/learn-archive","sidebar":"docs"},{"id":"learn/learn-asset-conversion-assethub","path":"/docs/learn-asset-conversion-assethub"},{"id":"learn/learn-assets","path":"/docs/learn-assets","sidebar":"docs"},{"id":"learn/learn-async-backing","path":"/docs/learn-async-backing","sidebar":"docs"},{"id":"learn/learn-bridges","path":"/docs/learn-bridges","sidebar":"docs"},{"id":"learn/learn-collator","path":"/docs/learn-collator","sidebar":"docs"},{"id":"learn/learn-comparisons","path":"/docs/learn-comparisons"},{"id":"learn/learn-comparisons-avalanche","path":"/docs/learn-comparisons-avalanche"},{"id":"learn/learn-comparisons-cosmos","path":"/docs/learn-comparisons-cosmos"},{"id":"learn/learn-comparisons-ethereum-2","path":"/docs/learn-comparisons-ethereum-2"},{"id":"learn/learn-comparisons-kusama","path":"/docs/learn-comparisons-kusama"},{"id":"learn/learn-comparisons-rollups","path":"/docs/learn-comparisons-rollups"},{"id":"learn/learn-consensus","path":"/docs/learn-consensus","sidebar":"docs"},{"id":"learn/learn-cryptography","path":"/docs/learn-cryptography","sidebar":"docs"},{"id":"learn/learn-DOT","path":"/docs/learn-DOT","sidebar":"docs"},{"id":"learn/learn-dot-ksm-bridge","path":"/docs/learn-dot-ksm-bridge","sidebar":"docs"},{"id":"learn/learn-elastic-scaling","path":"/docs/learn-elastic-scaling","sidebar":"docs"},{"id":"learn/learn-guides-accounts","path":"/docs/learn-guides-accounts","sidebar":"docs"},{"id":"learn/learn-guides-accounts-multisig","path":"/docs/learn-guides-accounts-multisig","sidebar":"docs"},{"id":"learn/learn-guides-accounts-proxy","path":"/docs/learn-guides-accounts-proxy","sidebar":"docs"},{"id":"learn/learn-guides-accounts-proxy-pure","path":"/docs/learn-guides-accounts-proxy-pure","sidebar":"docs"},{"id":"learn/learn-guides-asset-conversion","path":"/docs/learn-guides-asset-conversion","sidebar":"docs"},{"id":"learn/learn-guides-assets","path":"/docs/learn-guides-assets","sidebar":"docs"},{"id":"learn/learn-guides-assets-create","path":"/docs/learn-guides-assets-create","sidebar":"docs"},{"id":"learn/learn-guides-bounties","path":"/docs/learn-guides-bounties","sidebar":"docs"},{"id":"learn/learn-guides-bridges","path":"/docs/learn-guides-bridges","sidebar":"docs"},{"id":"learn/learn-guides-claims","path":"/docs/learn-guides-claims","sidebar":"docs"},{"id":"learn/learn-guides-coretime-marketplaces","path":"/docs/learn-guides-coretime-marketplaces","sidebar":"docs"},{"id":"learn/learn-guides-coretime-parachains","path":"/docs/learn-guides-coretime-parachains","sidebar":"docs"},{"id":"learn/learn-guides-coretime-swap","path":"/docs/learn-guides-coretime-swap"},{"id":"learn/learn-guides-dot-ksm-bridge","path":"/docs/learn-guides-dot-ksm-bridge","sidebar":"docs"},{"id":"learn/learn-guides-identity","path":"/docs/learn-guides-identity","sidebar":"docs"},{"id":"learn/learn-guides-ledger","path":"/docs/learn-guides-ledger","sidebar":"docs"},{"id":"learn/learn-guides-nominator","path":"/docs/learn-guides-nominator","sidebar":"docs"},{"id":"learn/learn-guides-polkadot-opengov","path":"/docs/learn-guides-polkadot-opengov","sidebar":"docs"},{"id":"learn/learn-guides-staking","path":"/docs/learn-guides-staking","sidebar":"docs"},{"id":"learn/learn-guides-staking-pools","path":"/docs/learn-guides-staking-pools","sidebar":"docs"},{"id":"learn/learn-guides-test-opengov-proposals","path":"/docs/learn-guides-test-opengov-proposals"},{"id":"learn/learn-guides-transfers","path":"/docs/learn-guides-transfers","sidebar":"docs"},{"id":"learn/learn-guides-treasury","path":"/docs/learn-guides-treasury","sidebar":"docs"},{"id":"learn/learn-guides-vault","path":"/docs/learn-guides-vault","sidebar":"docs"},{"id":"learn/learn-hyperbridge","path":"/docs/learn-hyperbridge","sidebar":"docs"},{"id":"learn/learn-identity","path":"/docs/learn-identity","sidebar":"docs"},{"id":"learn/learn-implementations","path":"/docs/learn-implementations"},{"id":"learn/learn-inflation","path":"/docs/learn-inflation","sidebar":"docs"},{"id":"learn/learn-jam-chain","path":"/docs/learn-jam-chain"},{"id":"learn/learn-jam-faq","path":"/docs/learn-jam-faq"},{"id":"learn/learn-kusama-inflation","path":"/docs/learn-kusama-inflation"},{"id":"learn/learn-nft","path":"/docs/learn-nft","sidebar":"docs"},{"id":"learn/learn-nft-pallets","path":"/docs/learn-nft-pallets","sidebar":"docs"},{"id":"learn/learn-nft-projects","path":"/docs/learn-nft-projects","sidebar":"docs"},{"id":"learn/learn-nomination-pools","path":"/docs/learn-nomination-pools","sidebar":"docs"},{"id":"learn/learn-nominator","path":"/docs/learn-nominator","sidebar":"docs"},{"id":"learn/learn-offenses","path":"/docs/learn-offenses","sidebar":"docs"},{"id":"learn/learn-parachains","path":"/docs/learn-parachains","sidebar":"docs"},{"id":"learn/learn-parachains-faq","path":"/docs/learn-parachains-faq","sidebar":"docs"},{"id":"learn/learn-parachains-protocol","path":"/docs/learn-parachains-protocol","sidebar":"docs"},{"id":"learn/learn-phragmen","path":"/docs/learn-phragmen","sidebar":"docs"},{"id":"learn/learn-polkadot-host","path":"/docs/learn-polkadot-host","sidebar":"docs"},{"id":"learn/learn-polkadot-js-guides","path":"/docs/learn-polkadot-js-guides","sidebar":"docs"},{"id":"learn/learn-polkadot-opengov","path":"/docs/learn-polkadot-opengov","sidebar":"docs"},{"id":"learn/learn-polkadot-opengov-origins","path":"/docs/learn-polkadot-opengov-origins","sidebar":"docs"},{"id":"learn/learn-polkadot-opengov-treasury","path":"/docs/learn-polkadot-opengov-treasury","sidebar":"docs"},{"id":"learn/learn-polkadot-technical-fellowship","path":"/docs/learn-polkadot-technical-fellowship"},{"id":"learn/learn-polkadotjs","path":"/docs/learn-polkadotjs","sidebar":"docs"},{"id":"learn/learn-proxies","path":"/docs/learn-proxies","sidebar":"docs"},{"id":"learn/learn-proxies-pure","path":"/docs/learn-proxies-pure","sidebar":"docs"},{"id":"learn/learn-runtime-upgrades","path":"/docs/learn-runtime-upgrades","sidebar":"docs"},{"id":"learn/learn-safrole","path":"/docs/learn-safrole","sidebar":"docs"},{"id":"learn/learn-snowbridge","path":"/docs/learn-snowbridge"},{"id":"learn/learn-spree","path":"/docs/learn-spree","sidebar":"docs"},{"id":"learn/learn-staking","path":"/docs/learn-staking","sidebar":"docs"},{"id":"learn/learn-staking-advanced","path":"/docs/learn-staking-advanced","sidebar":"docs"},{"id":"learn/learn-system-chains","path":"/docs/learn-system-chains","sidebar":"docs"},{"id":"learn/learn-teleport","path":"/docs/learn-teleport","sidebar":"docs"},{"id":"learn/learn-transactions","path":"/docs/learn-transactions","sidebar":"docs"},{"id":"learn/learn-validator","path":"/docs/learn-validator","sidebar":"docs"},{"id":"learn/learn-video-tutorials","path":"/docs/learn-video-tutorials","sidebar":"docs"},{"id":"learn/learn-wasm","path":"/docs/learn-wasm","sidebar":"docs"},{"id":"learn/learn-xcm","path":"/docs/learn-xcm","sidebar":"docs"},{"id":"learn/learn-xcm-instructions","path":"/docs/learn-xcm-instructions","sidebar":"docs"},{"id":"learn/learn-xcm-pallet","path":"/docs/learn-xcm-pallet","sidebar":"docs"},{"id":"learn/learn-xcm-transport","path":"/docs/learn-xcm-transport","sidebar":"docs"},{"id":"learn/learn-xcm-usecases","path":"/docs/learn-xcm-usecases","sidebar":"docs"},{"id":"learn/learn-xcvm","path":"/docs/learn-xcvm","sidebar":"docs"},{"id":"learn/xcm/executor_config/learn-xcm-docs-config-deep-dive","path":"/docs/learn/xcm/config-deep-dive","sidebar":"docs"},{"id":"learn/xcm/fundamentals/learn-xcm-docs-fundamentals-fees","path":"/docs/learn/xcm/fundamentals-fees","sidebar":"docs"},{"id":"learn/xcm/fundamentals/learn-xcm-docs-fundamentals-multiasset","path":"/docs/learn/xcm/fundamentals-multiasset","sidebar":"docs"},{"id":"learn/xcm/fundamentals/learn-xcm-docs-fundamentals-summary","path":"/docs/learn/xcm/fundamentals-summary","sidebar":"docs"},{"id":"learn/xcm/fundamentals/learn-xcm-docs-fundamentals-xcvm","path":"/docs/learn/xcm/fundamentals-xcvm","sidebar":"docs"},{"id":"learn/xcm/fundamentals/multilocation/learn-xcm-docs-multilocation-example","path":"/docs/learn/xcm/fundamentals/multilocation-example","sidebar":"docs"},{"id":"learn/xcm/fundamentals/multilocation/learn-xcm-docs-multilocation-junctions","path":"/docs/learn/xcm/fundamentals/multilocation-junctions","sidebar":"docs"},{"id":"learn/xcm/fundamentals/multilocation/learn-xcm-docs-multilocation-summary","path":"/docs/learn/xcm/fundamentals/multilocation-summary","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-assets","path":"/docs/learn/xcm/journey-assets","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-channels","path":"/docs/learn/xcm/journey-channels","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-expectations","path":"/docs/learn/xcm/journey-expectations","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-fees","path":"/docs/learn/xcm/journey-fees","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-holding","path":"/docs/learn/xcm/journey-holding","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-origin","path":"/docs/learn/xcm/journey-origin","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-queries","path":"/docs/learn/xcm/journey-queries","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-register","path":"/docs/learn/xcm/journey-register","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-summary","path":"/docs/learn/xcm/journey-summary","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-transact","path":"/docs/learn/xcm/journey-transact","sidebar":"docs"},{"id":"learn/xcm/journey/learn-xcm-docs-journey-version","path":"/docs/learn/xcm/journey-version","sidebar":"docs"},{"id":"learn/xcm/journey/locks/learn-xcm-docs-journey-locks","path":"/docs/learn/xcm/journey-locks","sidebar":"docs"},{"id":"learn/xcm/journey/transfers/learn-xcm-docs-transfers-reserve","path":"/docs/learn/xcm/journey/transfers-reserve","sidebar":"docs"},{"id":"learn/xcm/journey/transfers/learn-xcm-docs-transfers-summary","path":"/docs/learn/xcm/journey/transfers-summary","sidebar":"docs"},{"id":"learn/xcm/journey/transfers/learn-xcm-docs-transfers-teleport","path":"/docs/learn/xcm/journey/transfers-teleport","sidebar":"docs"},{"id":"learn/xcm/learn-xcm-docs-intro","path":"/docs/learn/xcm/introduction","sidebar":"docs"},{"id":"learn/xcm/learn-xcm-docs-testing","path":"/docs/learn/xcm/testing","sidebar":"docs"},{"id":"learn/xcm/overview/learn-xcm-docs-overview-architecture","path":"/docs/learn/xcm/overview-architecture","sidebar":"docs"},{"id":"learn/xcm/overview/learn-xcm-docs-overview-format","path":"/docs/learn/xcm/overview-format","sidebar":"docs"},{"id":"learn/xcm/overview/learn-xcm-docs-overview-intro","path":"/docs/learn/xcm/overview-intro","sidebar":"docs"},{"id":"learn/xcm/overview/learn-xcm-docs-overview-summary","path":"/docs/learn/xcm/overview-summary","sidebar":"docs"},{"id":"learn/xcm/overview/learn-xcm-docs-overview-xcvm","path":"/docs/learn/xcm/overview-xcvm","sidebar":"docs"},{"id":"learn/xcm/quickstart/learn-xcm-docs-quickstart-first-look","path":"/docs/learn/xcm/quickstart-first-look","sidebar":"docs"},{"id":"learn/xcm/quickstart/learn-xcm-docs-quickstart-simulator","path":"/docs/learn/xcm/quickstart-simulator","sidebar":"docs"},{"id":"learn/xcm/quickstart/learn-xcm-docs-quickstart-summary","path":"/docs/learn/xcm/quickstart-summary","sidebar":"docs"},{"id":"learn/xcm/reference/learn-xcm-docs-reference-glossary","path":"/docs/learn/xcm/reference-glossary","sidebar":"docs"},{"id":"learn/xcm/reference/learn-xcm-docs-reference-xcvm-registers","path":"/docs/learn/xcm/reference-xcvm-registers","sidebar":"docs"},{"id":"maintain/archive/maintain-guides-democracy","path":"/docs/maintain/maintain-guides-democracy","sidebar":"docs"},{"id":"maintain/archive/maintain-guides-how-to-join-council","path":"/docs/maintain/maintain-guides-how-to-join-council","sidebar":"docs"},{"id":"maintain/archive/maintain-guides-how-to-vote-councillor","path":"/docs/maintain/maintain-guides-how-to-vote-councillor","sidebar":"docs"},{"id":"maintain/doc-maintain-guides-validator-community","path":"/docs/maintain-guides-validator-community","sidebar":"docs"},{"id":"maintain/kusama/maintain-guides-how-to-validate-kusama","path":"/docs/maintain-guides-how-to-validate-kusama","sidebar":"docs"},{"id":"maintain/kusama/maintain-guides-society-kusama","path":"/docs/maintain-guides-society-kusama","sidebar":"docs"},{"id":"maintain/maintain-archive","path":"/docs/maintain-archive","sidebar":"docs"},{"id":"maintain/maintain-bootnode","path":"/docs/maintain-bootnode"},{"id":"maintain/maintain-endpoints","path":"/docs/maintain-endpoints"},{"id":"maintain/maintain-errors","path":"/docs/maintain-errors","sidebar":"docs"},{"id":"maintain/maintain-guides-async-backing","path":"/docs/maintain-guides-async-backing"},{"id":"maintain/maintain-guides-how-to-chill","path":"/docs/maintain-guides-how-to-chill"},{"id":"maintain/maintain-guides-how-to-monitor-your-node","path":"/docs/maintain-guides-how-to-monitor-your-node"},{"id":"maintain/maintain-guides-how-to-stop-validating","path":"/docs/maintain-guides-how-to-stop-validating","sidebar":"docs"},{"id":"maintain/maintain-guides-how-to-systemd","path":"/docs/maintain-guides-how-to-systemd"},{"id":"maintain/maintain-guides-how-to-upgrade","path":"/docs/maintain-guides-how-to-upgrade"},{"id":"maintain/maintain-guides-how-to-validate-polkadot","path":"/docs/maintain-guides-how-to-validate-polkadot"},{"id":"maintain/maintain-guides-secure-validator","path":"/docs/maintain-guides-secure-validator"},{"id":"maintain/maintain-guides-validator-payout","path":"/docs/maintain-guides-validator-payout"},{"id":"maintain/maintain-index","path":"/docs/maintain-index","sidebar":"docs"},{"id":"maintain/maintain-networks","path":"/docs/maintain-networks"},{"id":"maintain/maintain-polkadot-parameters","path":"/docs/maintain-polkadot-parameters","sidebar":"docs"},{"id":"maintain/maintain-rpc","path":"/docs/maintain-rpc"},{"id":"maintain/maintain-sync","path":"/docs/maintain-sync"},{"id":"maintain/maintain-wss","path":"/docs/maintain-wss"},{"id":"/explore-index","path":"/docs/explore-index","sidebar":"docs"},{"id":"/wallets-index","path":"/docs/wallets-index","sidebar":"docs"},{"id":"/apps-index","path":"/docs/apps-index","sidebar":"docs"},{"id":"/dashboards-index","path":"/docs/dashboards-index","sidebar":"docs"},{"id":"/community-index","path":"/docs/community-index","sidebar":"docs"},{"id":"/programs-index","path":"/docs/programs-index","sidebar":"docs"},{"id":"/learn-index","path":"/docs/learn-index","sidebar":"docs"},{"id":"/general-index","path":"/docs/general-index","sidebar":"docs"},{"id":"/polkadot-vision-index","path":"/docs/polkadot-vision-index","sidebar":"docs"},{"id":"/stay-safe-index","path":"/docs/stay-safe-index","sidebar":"docs"},{"id":"/learn-basics-index","path":"/docs/learn-basics-index","sidebar":"docs"},{"id":"/learn-staking-index","path":"/docs/learn-staking-index","sidebar":"docs"},{"id":"/learn-polkadot-opengov-index","path":"/docs/learn-polkadot-opengov-index","sidebar":"docs"},{"id":"/learn-assets-index","path":"/docs/learn-assets-index","sidebar":"docs"},{"id":"/learn-participants-index","path":"/docs/learn-participants-index","sidebar":"docs"},{"id":"/learn-components-index","path":"/docs/learn-components-index","sidebar":"docs"},{"id":"/learn-advanced-index","path":"/docs/learn-advanced-index","sidebar":"docs"},{"id":"/learn-parachains-index","path":"/docs/learn-parachains-index","sidebar":"docs"},{"id":"/learn-agile-coretime-index","path":"/docs/learn-agile-coretime-index","sidebar":"docs"},{"id":"/learn-agile-coretime-getting-started","path":"/docs/learn-agile-coretime-getting-started","sidebar":"docs"},{"id":"/learn-xcm-index","path":"/docs/learn-xcm-index","sidebar":"docs"},{"id":"learn/xcm","path":"/docs/learn/xcm","sidebar":"docs"},{"id":"/learn/xcm/overview","path":"/docs/learn/xcm/overview","sidebar":"docs"},{"id":"/learn/xcm/quickstart","path":"/docs/learn/xcm/quickstart","sidebar":"docs"},{"id":"/learn/xcm/fundamentals","path":"/docs/learn/xcm/fundamentals","sidebar":"docs"},{"id":"/learn/xcm/fundamentals/multilocation","path":"/docs/learn/xcm/fundamentals/multilocation","sidebar":"docs"},{"id":"/learn/xcm/journey","path":"/docs/learn/xcm/journey","sidebar":"docs"},{"id":"/learn/xcm/journey/transfers","path":"/docs/learn/xcm/journey/transfers","sidebar":"docs"},{"id":"/learn/xcm/references","path":"/docs/learn/xcm/references","sidebar":"docs"},{"id":"/learn-future-implementations-index","path":"/docs/learn-future-implementations-index","sidebar":"docs"},{"id":"/build-client-index","path":"/docs/build-client-index","sidebar":"docs"},{"id":"/build-protocol-index","path":"/docs/build-protocol-index","sidebar":"docs"}],"draftIds":[],"sidebars":{"docs":{"link":{"path":"/docs/explore-index","label":"Explore"}}}}],"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 s=n(22906);const c=JSON.parse('{"docusaurusVersion":"3.6.3","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.6.3"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"3.6.3"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.6.3"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.6.3"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.6.3"},"docusaurus-theme-search-algolia":{"type":"package","name":"@docusaurus/theme-search-algolia","version":"3.6.3"},"docusaurus-plugin-client-redirects":{"type":"package","name":"@docusaurus/plugin-client-redirects","version":"3.6.3"},"docusaurus-theme-mermaid":{"type":"package","name":"@docusaurus/theme-mermaid","version":"3.6.3"}}}');var l=n(74848),u={siteConfig:a.default,siteMetadata:c,globalData:o,i18n:i,codeTranslations:s},d=r.createContext(u);function p(e){var t=e.children;return(0,l.jsx)(d.Provider,{value:u,children:t})}},67489:(e,t,n)=>{"use strict";n.d(t,{A:()=>g});var r=n(77387),a=n(96540),o=n(38193),i=n(5260),s=n(70440),c=n(51960),l=n(53102),u=n(74848);function d(e){var t=e.error,n=e.tryAgain;return(0,u.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,u.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,u.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,u.jsx)(p,{error:t})]})}function p(e){var t=e.error,n=(0,s.rA)(t).map((function(e){return e.message})).join("\n\nCause:\n");return(0,u.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function f(e){var t=e.children;return(0,u.jsx)(l.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function m(e){var t=e.error,n=e.tryAgain;return(0,u.jsx)(f,{children:(0,u.jsxs)(g,{fallback:function(){return(0,u.jsx)(d,{error:t,tryAgain:n})},children:[(0,u.jsx)(i.A,{children:(0,u.jsx)("title",{children:"Page Error"})}),(0,u.jsx)(c.A,{children:(0,u.jsx)(d,{error:t,tryAgain:n})})]})})}var h=function(e){return(0,u.jsx)(m,Object.assign({},e))},g=function(e){function t(t){var n;return(n=e.call(this,t)||this).state={error:null},n}(0,r.A)(t,e);var n=t.prototype;return n.componentDidCatch=function(e){o.A.canUseDOM&&this.setState({error:e})},n.render=function(){var e=this,t=this.props.children,n=this.state.error;if(n){var r,a={error:n,tryAgain:function(){return e.setState({error:null})}};return(null!=(r=this.props.fallback)?r:h)(a)}return null!=t?t:null},t}(a.Component)},38193:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document;const a={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},5260:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(96540);var r=n(80545),a=n(74848);function o(e){return(0,a.jsx)(r.mg,Object.assign({},e))}},28774:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var r=n(98587),a=n(96540),o=n(54625),i=n(70440),s=n(44586),c=n(16654),l=n(38193),u=n(63427),d=n(86025),p=n(74848),f=["isNavLink","to","href","activeClassName","isActive","data-noBrokenLinkCheck","autoAddBaseUrl"];function m(e,t){var n,m,h,g=e.isNavLink,b=e.to,y=e.href,v=e.activeClassName,x=e.isActive,w=e["data-noBrokenLinkCheck"],k=e.autoAddBaseUrl,_=void 0===k||k,S=(0,r.A)(e,f),E=(0,s.A)().siteConfig,j=E.trailingSlash,O=E.baseUrl,A=E.future.experimental_router,C=(0,d.hH)().withBaseUrl,P=(0,u.A)(),T=(0,a.useRef)(null);(0,a.useImperativeHandle)(t,(function(){return T.current}));var I=b||y;var N,L,R=(0,c.A)(I),D=null==I?void 0:I.replace("pathname://",""),M=void 0!==D?(N=D,_&&function(e){return e.startsWith("/")}(N)?C(N):N):void 0;"hash"===A&&null!=(n=M)&&n.startsWith("./")&&(M=null==(L=M)?void 0:L.slice(1));M&&R&&(M=(0,i.Ks)(M,{trailingSlash:j,baseUrl:O}));var F=(0,a.useRef)(!1),B=g?o.k2:o.N_,z=l.A.canUseIntersectionObserver,U=(0,a.useRef)(),q=function(){F.current||null==M||(window.docusaurus.preload(M),F.current=!0)};(0,a.useEffect)((function(){return!z&&R&&l.A.canUseDOM&&null!=M&&window.docusaurus.prefetch(M),function(){z&&U.current&&U.current.disconnect()}}),[U,M,z,R]);var $=null!=(m=null==(h=M)?void 0:h.startsWith("#"))&&m,H=!S.target||"_self"===S.target,V=!M||!R||!H||$&&"hash"!==A;w||!$&&V||P.collectLink(M),S.id&&P.collectAnchor(S.id);var W={};return V?(0,p.jsx)("a",Object.assign({ref:T,href:M},I&&!R&&{target:"_blank",rel:"noopener noreferrer"},S,W)):(0,p.jsx)(B,Object.assign({},S,{onMouseEnter:q,onTouchStart:q,innerRef:function(e){T.current=e,z&&e&&R&&(U.current=new window.IntersectionObserver((function(t){t.forEach((function(t){e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(U.current.unobserve(e),U.current.disconnect(),null!=M&&window.docusaurus.prefetch(M))}))})),U.current.observe(e))},to:M},g&&{isActive:x,activeClassName:v},W))}const h=a.forwardRef(m)},21312:(e,t,n)=>{"use strict";n.d(t,{A:()=>l,T:()=>c});var r=n(96540),a=n(74848);function o(e,t){var n=e.split(/(\{\w+\})/).map((function(e,n){if(n%2==1){var r=null==t?void 0:t[e.slice(1,-1)];if(void 0!==r)return r}return e}));return n.some((function(e){return(0,r.isValidElement)(e)}))?n.map((function(e,t){return(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e})).filter((function(e){return""!==e})):n.join("")}var i=n(22906);function s(e){var t,n,r=e.id,a=e.message;if(void 0===r&&void 0===a)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return null!=(t=null!=(n=i[null!=r?r:a])?n:a)?t:r}function c(e,t){return o(s({message:e.message,id:e.id}),t)}function l(e){var t=e.children,n=e.id,r=e.values;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");var i=s({message:t,id:n});return(0,a.jsx)(a.Fragment,{children:o(i,r)})}},17065:(e,t,n)=>{"use strict";n.d(t,{W:()=>r});var r="default"},16654:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function a(e){return void 0!==e&&!r(e)}n.d(t,{A:()=>a,z:()=>r})},86025:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>s,hH:()=>i});var r=n(96540),a=n(44586),o=n(16654);function i(){var e=(0,a.A)().siteConfig,t=e.baseUrl,n=e.url,i=e.future.experimental_router,s=(0,r.useCallback)((function(e,r){return function(e){var t=e.siteUrl,n=e.baseUrl,r=e.url,a=e.options,i=void 0===a?{}:a,s=i.forcePrependBaseUrl,c=void 0!==s&&s,l=i.absolute,u=void 0!==l&&l,d=e.router;if(!r||r.startsWith("#")||(0,o.z)(r))return r;if("hash"===d)return r.startsWith("/")?"."+r:"./"+r;if(c)return n+r.replace(/^\//,"");if(r===n.replace(/\/$/,""))return n;var p=r.startsWith(n)?r:n+r.replace(/^\//,"");return u?t+p:p}({siteUrl:n,baseUrl:t,url:e,options:r,router:i})}),[n,t,i]);return{withBaseUrl:s}}function s(e,t){return void 0===t&&(t={}),(0,i().withBaseUrl)(e,t)}},63427:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(96540),a=(n(74848),r.createContext({collectAnchor:function(){},collectLink:function(){}})),o=function(){return(0,r.useContext)(a)};function i(){return o()}},44586:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(96540),a=n(76202);function o(){return(0,r.useContext)(a.o)}},92303:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(96540),a=n(6125);function o(){return(0,r.useContext)(a.o)}},205:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(96540);const a=n(38193).A.canUseDOM?r.useLayoutEffect:r.useEffect},86921:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=function(e){return"object"==typeof e&&!!e&&Object.keys(e).length>0};function a(e){var t={};return function e(n,a){Object.entries(n).forEach((function(n){var o=n[0],i=n[1],s=a?a+"."+o:o;r(i)?e(i,s):t[s]=i}))}(e),t}},53102:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,o:()=>o});var r=n(96540),a=n(74848),o=r.createContext(null);function i(e){var t=e.children,n=e.value,i=r.useContext(o),s=(0,r.useMemo)((function(){return function(e){var t=e.parent,n=e.value;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}var r=Object.assign({},t.data,null==n?void 0:n.data);return{plugin:t.plugin,data:r}}({parent:i,value:n})}),[i,n]);return(0,a.jsx)(o.Provider,{value:s,children:t})}},53886:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>g,XK:()=>v,g1:()=>y});var r=n(96540),a=n(44070),o=n(17065),i=n(6342),s=n(42349),c=n(43807),l=n(74848),u=function(e){return"docs-preferred-version-"+e},d={save:function(e,t,n){(0,s.Wf)(u(e),{persistence:t}).set(n)},read:function(e,t){return(0,s.Wf)(u(e),{persistence:t}).get()},clear:function(e,t){(0,s.Wf)(u(e),{persistence:t}).del()}},p=function(e){return Object.fromEntries(e.map((function(e){return[e,{preferredVersionName:null}]})))};var f=r.createContext(null);function m(){var e=(0,a.Gy)(),t=(0,i.p)().docs.versionPersistence,n=(0,r.useMemo)((function(){return Object.keys(e)}),[e]),o=(0,r.useState)((function(){return p(n)})),s=o[0],c=o[1];return(0,r.useEffect)((function(){c(function(e){var t=e.pluginIds,n=e.versionPersistence,r=e.allDocsData;return Object.fromEntries(t.map((function(e){return[e,(t=e,a=d.read(t,n),r[t].versions.some((function(e){return e.name===a}))?{preferredVersionName:a}:(d.clear(t,n),{preferredVersionName:null}))];var t,a})))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]),[s,(0,r.useMemo)((function(){return{savePreferredVersion:function(e,n){d.save(e,t,n),c((function(t){var r;return Object.assign({},t,((r={})[e]={preferredVersionName:n},r))}))}}}),[t])]}function h(e){var t=e.children,n=m();return(0,l.jsx)(f.Provider,{value:n,children:t})}function g(e){var t=e.children;return(0,l.jsx)(h,{children:t})}function b(){var e=(0,r.useContext)(f);if(!e)throw new c.dV("DocsPreferredVersionContextProvider");return e}function y(e){var t;void 0===e&&(e=o.W);var n=(0,a.ht)(e),i=b(),s=i[0],c=i[1],l=s[e].preferredVersionName;return{preferredVersion:null!=(t=n.versions.find((function(e){return e.name===l})))?t:null,savePreferredVersionName:(0,r.useCallback)((function(t){c.savePreferredVersion(e,t)}),[c,e])}}function v(){var e=(0,a.Gy)(),t=b()[0];var n=Object.keys(e);return Object.fromEntries(n.map((function(n){return[n,(r=n,o=e[r],i=t[r].preferredVersionName,null!=(a=o.versions.find((function(e){return e.name===i})))?a:null)];var r,a,o,i})))}},82565:(e,t,n)=>{"use strict";n.d(t,{k:()=>o,v:()=>i});var r=n(44070),a=n(53886);function o(e,t){return"docs-"+e+"-"+t}function i(){var e=(0,r.Gy)(),t=(0,r.gk)(),n=(0,a.XK)();return[].concat(Object.keys(e).map((function(r){var a,i=(null==t?void 0:t.activePlugin.pluginId)===r?t.activeVersion:void 0,s=n[r],c=e[r].versions.find((function(e){return e.isLast}));return o(r,(null!=(a=null!=i?i:s)?a:c).name)})))}},60609:(e,t,n)=>{"use strict";n.d(t,{V:()=>c,t:()=>l});var r=n(96540),a=n(43807),o=n(74848),i=Symbol("EmptyContext"),s=r.createContext(i);function c(e){var t=e.children,n=e.name,a=e.items,i=(0,r.useMemo)((function(){return n&&a?{name:n,items:a}:null}),[n,a]);return(0,o.jsx)(s.Provider,{value:i,children:t})}function l(){var e=(0,r.useContext)(s);if(e===i)throw new a.dV("DocsSidebarProvider");return e}},26972:(e,t,n)=>{"use strict";n.d(t,{$S:()=>h,B5:()=>j,Nr:()=>m,OF:()=>k,QB:()=>E,Vd:()=>_,Y:()=>x,cC:()=>f,d1:()=>O,fW:()=>S,w8:()=>y});var r=n(43845),a=n(96540),o=n(56347),i=n(22831),s=n(44070),c=n(99169),l=n(31682),u=n(53886),d=n(23025),p=n(60609);function f(e){var t=(0,d.r)();if(e){var n=t.docs[e];if(!n)throw new Error("no version doc found by id="+e);return n}}function m(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(var t,n=(0,r.A)(e.items);!(t=n()).done;){var a=m(t.value);if(a)return a}}(e):void 0:e.href}function h(){var e=(0,o.zy)().pathname,t=(0,p.t)();if(!t)throw new Error("Unexpected: cant find current sidebar in context");var n=w({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(e+" is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.");return n}var g=function(e,t){return void 0!==e&&(0,c.ys)(e,t)},b=function(e,t){return e.some((function(e){return y(e,t)}))};function y(e,t){return"link"===e.type?g(e.href,t):"category"===e.type&&(g(e.href,t)||b(e.items,t))}function v(e,t){switch(e.type){case"category":return y(e,t)||e.items.some((function(e){return v(e,t)}));case"link":return!e.unlisted||y(e,t);default:return!0}}function x(e,t){return(0,a.useMemo)((function(){return e.filter((function(e){return v(e,t)}))}),[e,t])}function w(e){var t=e.sidebarItems,n=e.pathname,a=e.onlyCategories,o=void 0!==a&&a,i=[];return function e(t){for(var a,s=(0,r.A)(t);!(a=s()).done;){var l=a.value;if("category"===l.type&&((0,c.ys)(l.href,n)||e(l.items))||"link"===l.type&&(0,c.ys)(l.href,n))return o&&"category"!==l.type||i.unshift(l),!0}return!1}(t),i}function k(){var e,t=(0,p.t)(),n=(0,o.zy)().pathname;return!1!==(null==(e=(0,s.vT)())?void 0:e.pluginData.breadcrumbs)&&t?w({sidebarItems:t.items,pathname:n}):null}function _(e){var t=(0,s.zK)(e).activeVersion,n=(0,u.g1)(e).preferredVersion,r=(0,s.r7)(e);return(0,a.useMemo)((function(){return(0,l.sb)([t,n,r].filter(Boolean))}),[t,n,r])}function S(e,t){var n=_(t);return(0,a.useMemo)((function(){var t=n.flatMap((function(e){return e.sidebars?Object.entries(e.sidebars):[]})),r=t.find((function(t){return t[0]===e}));if(!r)throw new Error("Can't find any sidebar with id \""+e+'" in version'+(n.length>1?"s":"")+" "+n.map((function(e){return e.name})).join(", ")+'".\nAvailable sidebar ids are:\n- '+t.map((function(e){return e[0]})).join("\n- "));return r[1]}),[e,n])}function E(e,t){var n=_(t);return(0,a.useMemo)((function(){var t=n.flatMap((function(e){return e.docs})),r=t.find((function(t){return t.id===e}));if(!r){if(n.flatMap((function(e){return 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((function(e){return e.name})).join(", ")+'".\nAvailable doc ids are:\n- '+(0,l.sb)(t.map((function(e){return e.id}))).join("\n- "))}return r}),[e,n])}function j(e){var t=e.route,n=(0,o.zy)(),r=(0,d.r)(),a=t.routes,s=a.find((function(e){return(0,o.B6)(n.pathname,e)}));if(!s)return null;var c=s.sidebar,l=c?r.docsSidebars[c]:void 0;return{docElement:(0,i.v)(a),sidebarName:c,sidebarItems:l}}function O(e){return e.filter((function(e){return!("category"===e.type||"link"===e.type)||!!m(e)}))}},23025:(e,t,n)=>{"use strict";n.d(t,{n:()=>s,r:()=>c});var r=n(96540),a=n(43807),o=n(74848),i=r.createContext(null);function s(e){var t=e.children,n=e.version;return(0,o.jsx)(i.Provider,{value:n,children:t})}function c(){var e=(0,r.useContext)(i);if(null===e)throw new a.dV("DocsVersionProvider");return e}},44070:(e,t,n)=>{"use strict";n.d(t,{zK:()=>b,vT:()=>f,gk:()=>m,Gy:()=>d,HW:()=>y,ht:()=>p,r7:()=>g,jh:()=>h});var r=n(56347),a=n(44586),o=n(17065);function i(e,t){void 0===t&&(t={});var n=(0,a.A)().globalData[e];if(!n&&t.failfast)throw new Error('Docusaurus plugin global data not found for "'+e+'" plugin.');return n}var s=function(e){return e.versions.find((function(e){return e.isLast}))};function c(e,t){return[].concat(e.versions).sort((function(e,t){return e.path===t.path?0:e.path.includes(t.path)?-1:t.path.includes(e.path)?1:0})).find((function(e){return!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})}))}function l(e,t){var n,a,o=c(e,t),i=null==o?void 0:o.docs.find((function(e){return!!(0,r.B6)(t,{path:e.path,exact:!0,strict:!1})}));return{activeVersion:o,activeDoc:i,alternateDocVersions:i?(n=i.id,a={},e.versions.forEach((function(e){e.docs.forEach((function(t){t.id===n&&(a[e.name]=t)}))})),a):{}}}var u={},d=function(){var e;return null!=(e=i("docusaurus-plugin-content-docs"))?e:u},p=function(e){try{return function(e,t,n){void 0===t&&(t=o.W),void 0===n&&(n={});var r=i(e),a=null==r?void 0:r[t];if(!a&&n.failfast)throw new Error('Docusaurus plugin global data not found for "'+e+'" plugin with id "'+t+'".');return a}("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 f(e){return void 0===e&&(e={}),function(e,t,n){void 0===n&&(n={});var a=Object.entries(e).sort((function(e,t){return t[1].path.localeCompare(e[1].path)})).find((function(e){var n=e[1];return!!(0,r.B6)(t,{path:n.path,exact:!1,strict:!1})})),o=a?{pluginId:a[0],pluginData:a[1]}:void 0;if(!o&&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((function(e){return e.path})).join(", "));return o}(d(),(0,r.zy)().pathname,e)}function m(e){void 0===e&&(e={});var t=f(e),n=(0,r.zy)().pathname;if(t)return{activePlugin:t,activeVersion:c(t.pluginData,n)}}function h(e){return p(e).versions}function g(e){var t=p(e);return s(t)}function b(e){return l(p(e),(0,r.zy)().pathname)}function y(e){return function(e,t){var n=s(e);return{latestDocSuggestion:l(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(p(e),(0,r.zy)().pathname)}},76294:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>o});var r=n(5947),a=n.n(r);a().configure({showSpinner:!1});const o={onRouteUpdate:function(e){var t=e.location,n=e.previousLocation;if(n&&t.pathname!==n.pathname){var r=window.setTimeout((function(){a().start()}),200);return function(){return window.clearTimeout(r)}}},onRouteDidUpdate:function(){a().done()}}},26134:(e,t,n)=>{"use strict";var r,a,o,i=n(71765),s=n(84450);r=i.My,a=s.default.themeConfig.prism.additionalLanguages,o=globalThis.Prism,globalThis.Prism=r,a.forEach((function(e){"php"===e&&n(19700),n(91830)("./prism-"+e)})),delete globalThis.Prism,void 0!==o&&(globalThis.Prism=r)},51107:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});var r=n(98587),a=(n(96540),n(34164)),o=n(21312),i=n(6342),s=n(28774),c=n(63427);const l={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var u=n(74848),d=["as","id"];function p(e){var t=e.as,n=e.id,p=(0,r.A)(e,d),f=(0,c.A)(),m=(0,i.p)().navbar.hideOnScroll;if("h1"===t||!n)return(0,u.jsx)(t,Object.assign({},p,{id:void 0}));f.collectAnchor(n);var h=(0,o.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof p.children?p.children:n});return(0,u.jsxs)(t,Object.assign({},p,{className:(0,a.A)("anchor",m?l.anchorWithHideOnScrollNavbar:l.anchorWithStickyNavbar,p.className),id:n,children:[p.children,(0,u.jsx)(s.A,{className:"hash-link",to:"#"+n,"aria-label":h,title:h,children:"\u200b"})]}))}},43186:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(96540);const r={iconExternalLink:"iconExternalLink_nPIU"};var a=n(74848);function o(e){var t=e.width,n=void 0===t?13.5:t,o=e.height,i=void 0===o?13.5:o;return(0,a.jsx)("svg",{width:n,height:i,"aria-hidden":"true",viewBox:"0 0 24 24",className:r.iconExternalLink,children:(0,a.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"})})}},51960:(e,t,n)=>{"use strict";n.d(t,{A:()=>Et});var r=n(96540),a=n(34164),o=n(67489),i=n(69024),s=n(56347),c=n(21312),l=n(75062),u=n(74848),d="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){var e=(0,r.useRef)(null),t=(0,s.W6)().action,n=(0,r.useCallback)((function(e){e.preventDefault();var t,n=null!=(t=document.querySelector("main:first-of-type"))?t:document.getElementById(d);n&&p(n)}),[]);return(0,l.$)((function(n){var r=n.location;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}var m=(0,c.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){var t,n=null!=(t=e.children)?t:m,r=f(),a=r.containerRef,o=r.onClick;return(0,u.jsx)("div",{ref:a,role:"region","aria-label":m,children:(0,u.jsx)("a",Object.assign({},e,{href:"#"+d,onClick:o,children:n}))})}var g=n(17559),b=n(14090);const y={skipToContent:"skipToContent_fXgn"};function v(){return(0,u.jsx)(h,{className:y.skipToContent})}var x=n(6342),w=n(65041),k=n(98587),_=["width","height","color","strokeWidth","className"];function S(e){var t=e.width,n=void 0===t?21:t,r=e.height,a=void 0===r?21:r,o=e.color,i=void 0===o?"currentColor":o,s=e.strokeWidth,c=void 0===s?1.2:s,l=(e.className,(0,k.A)(e,_));return(0,u.jsx)("svg",Object.assign({viewBox:"0 0 15 15",width:n,height:a},l,{children:(0,u.jsx)("g",{stroke:i,strokeWidth:c,children:(0,u.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})}))}const E={closeButton:"closeButton_CVFx"};function j(e){return(0,u.jsx)("button",Object.assign({type:"button","aria-label":(0,c.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"})},e,{className:(0,a.A)("clean-btn close",E.closeButton,e.className),children:(0,u.jsx)(S,{width:14,height:14,strokeWidth:3.1})}))}const O={content:"content_knG7"};function A(e){var t=(0,x.p)().announcementBar.content;return(0,u.jsx)("div",Object.assign({},e,{className:(0,a.A)(O.content,e.className),dangerouslySetInnerHTML:{__html:t}}))}const C={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function P(){var e=(0,x.p)().announcementBar,t=(0,w.M)(),n=t.isActive,r=t.close;if(!n)return null;var a=e.backgroundColor,o=e.textColor,i=e.isCloseable;return(0,u.jsxs)("div",{className:C.announcementBar,style:{backgroundColor:a,color:o},role:"banner",children:[i&&(0,u.jsx)("div",{className:C.announcementBarPlaceholder}),(0,u.jsx)(A,{className:C.announcementBarContent}),i&&(0,u.jsx)(j,{onClick:r,className:C.announcementBarClose})]})}var T=n(22069),I=n(23104);var N=n(43807),L=n(75600),R=r.createContext(null);function D(e){var t,n,a,o,i,s,c,l=e.children,d=(t=(0,T.M)(),n=(0,L.YL)(),a=(0,r.useState)(!1),o=a[0],i=a[1],s=null!==n.component,c=(0,N.ZC)(s),(0,r.useEffect)((function(){s&&!c&&i(!0)}),[s,c]),(0,r.useEffect)((function(){s?t.shown||i(!0):i(!1)}),[t.shown,s]),(0,r.useMemo)((function(){return[o,i]}),[o]));return(0,u.jsx)(R.Provider,{value:d,children:l})}function M(e){if(e.component){var t=e.component;return(0,u.jsx)(t,Object.assign({},e.props))}}function F(){var e=(0,r.useContext)(R);if(!e)throw new N.dV("NavbarSecondaryMenuDisplayProvider");var t=e[0],n=e[1],a=(0,r.useCallback)((function(){return n(!1)}),[n]),o=(0,L.YL)();return(0,r.useMemo)((function(){return{shown:t,hide:a,content:M(o)}}),[a,o,t])}function B(e){var t=e.header,n=e.primaryMenu,r=e.secondaryMenu,o=F().shown;return(0,u.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,u.jsxs)("div",{className:(0,a.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":o}),children:[(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:r})]})]})}var z=n(95293),U=n(92303);function q(e){return(0,u.jsx)("svg",Object.assign({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",Object.assign({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 H={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function V(e){var t=e.className,n=e.buttonClassName,r=e.value,o=e.onChange,i=(0,U.A)(),s=(0,c.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,c.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.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,a.A)(H.toggle,t),children:(0,u.jsxs)("button",{className:(0,a.A)("clean-btn",H.toggleButton,!i&&H.toggleButtonDisabled,n),type:"button",onClick:function(){return o("dark"===r?"light":"dark")},disabled:!i,title:s,"aria-label":s,"aria-live":"polite","aria-pressed":"dark"===r?"true":"false",children:[(0,u.jsx)(q,{className:(0,a.A)(H.toggleIcon,H.lightToggleIcon)}),(0,u.jsx)($,{className:(0,a.A)(H.toggleIcon,H.darkToggleIcon)})]})})}const W=r.memo(V),K={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function G(e){var t=e.className,n=(0,x.p)().navbar.style,r=(0,x.p)().colorMode.disableSwitch,a=(0,z.G)(),o=a.colorMode,i=a.setColorMode;return r?null:(0,u.jsx)(W,{className:t,buttonClassName:"dark"===n?K.darkNavbarColorModeToggle:void 0,value:o,onChange:i})}var Q=n(39529);function Y(){return(0,u.jsx)(Q.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Z(){var e=(0,T.M)();return(0,u.jsx)("button",{type:"button","aria-label":(0,c.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:function(){return e.toggle()},children:(0,u.jsx)(S,{color:"var(--ifm-color-emphasis-600)"})})}function X(){return(0,u.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,u.jsx)(Y,{}),(0,u.jsx)(G,{className:"margin-right--md"}),(0,u.jsx)(Z,{})]})}var J=n(28774),ee=n(86025),te=n(16654),ne=n(91252),re=n(43186),ae=["activeBasePath","activeBaseRegex","to","href","label","html","isDropdownLink","prependBaseUrlToHref"];function oe(e){var t=e.activeBasePath,n=e.activeBaseRegex,r=e.to,a=e.href,o=e.label,i=e.html,s=e.isDropdownLink,c=e.prependBaseUrlToHref,l=(0,k.A)(e,ae),d=(0,ee.Ay)(r),p=(0,ee.Ay)(t),f=(0,ee.Ay)(a,{forcePrependBaseUrl:!0}),m=o&&a&&!(0,te.A)(a),h=i?{dangerouslySetInnerHTML:{__html:i}}:{children:(0,u.jsxs)(u.Fragment,{children:[o,m&&(0,u.jsx)(re.A,Object.assign({},s&&{width:12,height:12}))]})};return a?(0,u.jsx)(J.A,Object.assign({href:c?f:a},l,h)):(0,u.jsx)(J.A,Object.assign({to:d,isNavLink:!0},(t||n)&&{isActive:function(e,t){return n?(0,ne.G)(n,t.pathname):t.pathname.startsWith(p)}},l,h))}var ie=["className","isDropdownItem"],se=["className","isDropdownItem"],ce=["mobile","position"];function le(e){var t=e.className,n=e.isDropdownItem,r=void 0!==n&&n,o=(0,k.A)(e,ie),i=(0,u.jsx)(oe,Object.assign({className:(0,a.A)(r?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:r},o));return r?(0,u.jsx)("li",{children:i}):i}function ue(e){var t=e.className,n=(e.isDropdownItem,(0,k.A)(e,se));return(0,u.jsx)("li",{className:"menu__list-item",children:(0,u.jsx)(oe,Object.assign({className:(0,a.A)("menu__link",t)},n))})}function de(e){var t,n=e.mobile,r=void 0!==n&&n,a=(e.position,(0,k.A)(e,ce)),o=r?ue:le;return(0,u.jsx)(o,Object.assign({},a,{activeClassName:null!=(t=a.activeClassName)?t:r?"menu__link--active":"navbar__link--active"}))}var pe=n(41422),fe=n(99169),me=n(44586);const he="dropdownNavbarItemMobile_S0Fm";var ge=["items","position","className","onClick"],be=["items","className","position","onClick"],ye=["mobile"];function ve(e,t){return e.some((function(e){return function(e,t){return!!(0,fe.ys)(e.to,t)||!!(0,ne.G)(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)}))}function xe(e){var t,n=e.items,o=e.position,i=e.className,s=(e.onClick,(0,k.A)(e,ge)),c=(0,r.useRef)(null),l=(0,r.useState)(!1),d=l[0],p=l[1];return(0,r.useEffect)((function(){var e=function(e){c.current&&!c.current.contains(e.target)&&p(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),function(){document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),(0,u.jsxs)("div",{ref:c,className:(0,a.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===o,"dropdown--show":d}),children:[(0,u.jsx)(oe,Object.assign({"aria-haspopup":"true","aria-expanded":d,role:"button",href:s.to?void 0:"#",className:(0,a.A)("navbar__link",i)},s,{onClick:s.to?void 0:function(e){return e.preventDefault()},onKeyDown:function(e){"Enter"===e.key&&(e.preventDefault(),p(!d))},children:null!=(t=s.children)?t:s.label})),(0,u.jsx)("ul",{className:"dropdown__menu",children:n.map((function(e,t){return(0,r.createElement)(tt,Object.assign({isDropdownItem:!0,activeClassName:"dropdown__link--active"},e,{key:t}))}))})]})}function we(e){var t,n,o=e.items,i=e.className,c=(e.position,e.onClick),l=(0,k.A)(e,be),d=(n=(0,me.A)().siteConfig.baseUrl,(0,s.zy)().pathname.replace(n,"/")),p=ve(o,d),f=(0,pe.u)({initialState:function(){return!p}}),m=f.collapsed,h=f.toggleCollapsed,g=f.setCollapsed;return(0,r.useEffect)((function(){p&&g(!p)}),[d,p,g]),(0,u.jsxs)("li",{className:(0,a.A)("menu__list-item",{"menu__list-item--collapsed":m}),children:[(0,u.jsx)(oe,Object.assign({role:"button",className:(0,a.A)(he,"menu__link menu__link--sublist menu__link--sublist-caret",i)},l,{onClick:function(e){e.preventDefault(),h()},children:null!=(t=l.children)?t:l.label})),(0,u.jsx)(pe.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:m,children:o.map((function(e,t){return(0,r.createElement)(tt,Object.assign({mobile:!0,isDropdownItem:!0,onClick:c,activeClassName:"menu__link--active"},e,{key:t}))}))})]})}function ke(e){var t=e.mobile,n=void 0!==t&&t,r=(0,k.A)(e,ye),a=n?we:xe;return(0,u.jsx)(a,Object.assign({},r))}var _e=n(32131),Se=["width","height"];function Ee(e){var t=e.width,n=void 0===t?20:t,r=e.height,a=void 0===r?20:r,o=(0,k.A)(e,Se);return(0,u.jsx)("svg",Object.assign({viewBox:"0 0 24 24",width:n,height:a,"aria-hidden":!0},o,{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 je="iconLanguage_nlXk";var Oe=["mobile","dropdownItemsBefore","dropdownItemsAfter","queryString"];var Ae=n(40961),Ce=n(55600),Pe=n(5260),Te=n(24255),Ie=n(51062),Ne=n(2967),Le=n(82565);function Re(){var e;return["language:"+(0,me.A)().i18n.currentLocale,(e=(0,Le.v)(),[Ne.C].concat(e)).map((function(e){return"docusaurus_tag:"+e}))]}const De={button:{buttonText:(0,c.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"}),buttonAriaLabel:(0,c.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"})},modal:{searchBox:{resetButtonTitle:(0,c.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),resetButtonAriaLabel:(0,c.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),cancelButtonText:(0,c.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"}),cancelButtonAriaLabel:(0,c.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"})},startScreen:{recentSearchesTitle:(0,c.T)({id:"theme.SearchModal.startScreen.recentSearchesTitle",message:"Recent",description:"The title for recent searches"}),noRecentSearchesText:(0,c.T)({id:"theme.SearchModal.startScreen.noRecentSearchesText",message:"No recent searches",description:"The text when no recent searches"}),saveRecentSearchButtonTitle:(0,c.T)({id:"theme.SearchModal.startScreen.saveRecentSearchButtonTitle",message:"Save this search",description:"The label for save recent search button"}),removeRecentSearchButtonTitle:(0,c.T)({id:"theme.SearchModal.startScreen.removeRecentSearchButtonTitle",message:"Remove this search from history",description:"The label for remove recent search button"}),favoriteSearchesTitle:(0,c.T)({id:"theme.SearchModal.startScreen.favoriteSearchesTitle",message:"Favorite",description:"The title for favorite searches"}),removeFavoriteSearchButtonTitle:(0,c.T)({id:"theme.SearchModal.startScreen.removeFavoriteSearchButtonTitle",message:"Remove this search from favorites",description:"The label for remove favorite search button"})},errorScreen:{titleText:(0,c.T)({id:"theme.SearchModal.errorScreen.titleText",message:"Unable to fetch results",description:"The title for error screen of search modal"}),helpText:(0,c.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,c.T)({id:"theme.SearchModal.footer.selectText",message:"to select",description:"The explanatory text of the action for the enter key"}),selectKeyAriaLabel:(0,c.T)({id:"theme.SearchModal.footer.selectKeyAriaLabel",message:"Enter key",description:"The ARIA label for the Enter key button that makes the selection"}),navigateText:(0,c.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,c.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,c.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,c.T)({id:"theme.SearchModal.footer.closeText",message:"to close",description:"The explanatory text of the action for Escape key"}),closeKeyAriaLabel:(0,c.T)({id:"theme.SearchModal.footer.closeKeyAriaLabel",message:"Escape key",description:"The ARIA label for the Escape key button that close the modal"}),searchByText:(0,c.T)({id:"theme.SearchModal.footer.searchByText",message:"Search by",description:"The text explain that the search is making by Algolia"})},noResultsScreen:{noResultsText:(0,c.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,c.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,c.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,c.T)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsLinkText",message:"Let us know.",description:"The text for the link to report missing results"})}},placeholder:(0,c.T)({id:"theme.SearchModal.placeholder",message:"Search docs",description:"The placeholder of the input of the DocSearch pop-up modal"})};var Me=["contextualSearch","externalUrlRegex"],Fe=null;function Be(e){var t=e.hit,n=e.children;return(0,u.jsx)(J.A,{to:t.url,children:n})}function ze(e){var t=e.state,n=e.onClose,r=(0,Te.w)();return(0,u.jsx)(J.A,{to:r(t.query),onClick:n,children:(0,u.jsx)(c.A,{id:"theme.SearchBar.seeAll",values:{count:t.context.nbHits},children:"See all {count} results"})})}function Ue(e){var t,a,o,i,c=e.contextualSearch,l=e.externalUrlRegex,d=(0,k.A)(e,Me),p=(0,me.A)().siteMetadata,f=(0,Ie.C)(),m=Re(),h=null!=(t=null==(a=d.searchParameters)?void 0:a.facetFilters)?t:[],g=c?(o=h,[].concat((i=function(e){return"string"==typeof e?[e]:e})(m),i(o))):h,b=Object.assign({},d.searchParameters,{facetFilters:g}),y=(0,s.W6)(),v=(0,r.useRef)(null),x=(0,r.useRef)(null),w=(0,r.useState)(!1),_=w[0],S=w[1],E=(0,r.useState)(void 0),j=E[0],O=E[1],A=(0,r.useCallback)((function(){return Fe?Promise.resolve():Promise.all([n.e(8158).then(n.bind(n,48158)),Promise.all([n.e(1869),n.e(8913)]).then(n.bind(n,58913)),Promise.all([n.e(1869),n.e(416)]).then(n.bind(n,90416))]).then((function(e){var t=e[0].DocSearchModal;Fe=t}))}),[]),C=(0,r.useCallback)((function(){if(!v.current){var e=document.createElement("div");v.current=e,document.body.insertBefore(e,document.body.firstChild)}}),[]),P=(0,r.useCallback)((function(){C(),A().then((function(){return S(!0)}))}),[A,C]),T=(0,r.useCallback)((function(){var e;S(!1),null==(e=x.current)||e.focus()}),[]),I=(0,r.useCallback)((function(e){"f"===e.key&&(e.metaKey||e.ctrlKey)||(e.preventDefault(),O(e.key),P())}),[P]),N=(0,r.useRef)({navigate:function(e){var t=e.itemUrl;(0,ne.G)(l,t)?window.location.href=t:y.push(t)}}).current,L=(0,r.useRef)((function(e){return d.transformItems?d.transformItems(e):e.map((function(e){return Object.assign({},e,{url:f(e.url)})}))})).current,R=(0,r.useMemo)((function(){return function(e){return(0,u.jsx)(ze,Object.assign({},e,{onClose:T}))}}),[T]),D=(0,r.useCallback)((function(e){return e.addAlgoliaAgent("docusaurus",p.docusaurusVersion),e}),[p.docusaurusVersion]);return(0,Ce.E8)({isOpen:_,onOpen:P,onClose:T,onInput:I,searchButtonRef:x}),(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(Pe.A,{children:(0,u.jsx)("link",{rel:"preconnect",href:"https://"+d.appId+"-dsn.algolia.net",crossOrigin:"anonymous"})}),(0,u.jsx)(Ce.Bc,{onTouchStart:A,onFocus:A,onMouseOver:A,onClick:P,ref:x,translations:De.button}),_&&Fe&&v.current&&(0,Ae.createPortal)((0,u.jsx)(Fe,Object.assign({onClose:T,initialScrollY:window.scrollY,initialQuery:j,navigator:N,transformItems:L,hitComponent:Be,transformSearchClient:D},d.searchPagePath&&{resultsFooterComponent:R},d,{searchParameters:b,placeholder:De.placeholder,translations:De.modal})),v.current)]})}function qe(){var e=(0,me.A)().siteConfig;return(0,u.jsx)(Ue,Object.assign({},e.themeConfig.algolia))}const $e={navbarSearchContainer:"navbarSearchContainer_Bca1"};function He(e){var t=e.children,n=e.className;return(0,u.jsx)("div",{className:(0,a.A)(n,$e.navbarSearchContainer),children:t})}var Ve=n(44070),We=n(26972),Ke=["docId","label","docsPluginId"];var Ge=["sidebarId","label","docsPluginId"];var Qe=["label","to","docsPluginId"];var Ye=n(53886),Ze=["mobile","docsPluginId","dropdownActiveClassDisabled","dropdownItemsBefore","dropdownItemsAfter"];function Xe(e,t){var n;return null!=(n=t.alternateDocVersions[e.name])?n:function(e){return e.docs.find((function(t){return t.id===e.mainDocId}))}(e)}const Je={default:de,localeDropdown:function(e){var t=e.mobile,n=e.dropdownItemsBefore,r=e.dropdownItemsAfter,a=e.queryString,o=void 0===a?"":a,i=(0,k.A)(e,Oe),l=(0,me.A)().i18n,d=l.currentLocale,p=l.locales,f=l.localeConfigs,m=(0,_e.o)(),h=(0,s.zy)(),g=h.search,b=h.hash,y=p.map((function(e){var n=""+("pathname://"+m.createUrl({locale:e,fullyQualified:!1}))+g+b+o;return{label:f[e].label,lang:f[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===d?t?"menu__link--active":"dropdown__link--active":""}})),v=[].concat(n,y,r),x=t?(0,c.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):f[d].label;return(0,u.jsx)(ke,Object.assign({},i,{mobile:t,label:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(Ee,{className:je}),x]}),items:v}))},search:function(e){var t=e.mobile,n=e.className;return t?null:(0,u.jsx)(He,{className:n,children:(0,u.jsx)(qe,{})})},dropdown:ke,html:function(e){var t=e.value,n=e.className,r=e.mobile,o=void 0!==r&&r,i=e.isDropdownItem,s=void 0!==i&&i,c=s?"li":"div";return(0,u.jsx)(c,{className:(0,a.A)({navbar__item:!o&&!s,"menu__list-item":o},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){var t=e.docId,n=e.label,r=e.docsPluginId,a=(0,k.A)(e,Ke),o=(0,Ve.zK)(r).activeDoc,i=(0,We.QB)(t,r),s=(null==o?void 0:o.path)===(null==i?void 0:i.path);return null===i||i.unlisted&&!s?null:(0,u.jsx)(de,Object.assign({exact:!0},a,{isActive:function(){return s||!(null==o||!o.sidebar)&&o.sidebar===i.sidebar},label:null!=n?n:i.id,to:i.path}))},docSidebar:function(e){var t=e.sidebarId,n=e.label,r=e.docsPluginId,a=(0,k.A)(e,Ge),o=(0,Ve.zK)(r).activeDoc,i=(0,We.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)(de,Object.assign({exact:!0},a,{isActive:function(){return(null==o?void 0:o.sidebar)===t},label:null!=n?n:i.label,to:i.path}))},docsVersion:function(e){var t=e.label,n=e.to,r=e.docsPluginId,a=(0,k.A)(e,Qe),o=(0,We.Vd)(r)[0],i=null!=t?t:o.label,s=null!=n?n:function(e){return e.docs.find((function(t){return t.id===e.mainDocId}))}(o).path;return(0,u.jsx)(de,Object.assign({},a,{label:i,to:s}))},docsVersionDropdown:function(e){var t=e.mobile,n=e.docsPluginId,r=e.dropdownActiveClassDisabled,a=e.dropdownItemsBefore,o=e.dropdownItemsAfter,i=(0,k.A)(e,Ze),l=(0,s.zy)(),d=l.search,p=l.hash,f=(0,Ve.zK)(n),m=(0,Ve.jh)(n),h=(0,Ye.g1)(n).savePreferredVersionName,g=[].concat(a,m.map((function(e){var t=Xe(e,f);return{label:e.label,to:""+t.path+d+p,isActive:function(){return e===f.activeVersion},onClick:function(){return h(e.name)}}})),o),b=(0,We.Vd)(n)[0],y=t&&g.length>1?(0,c.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):b.label,v=t&&g.length>1?void 0:Xe(b,f).path;return g.length<=1?(0,u.jsx)(de,Object.assign({},i,{mobile:t,label:y,to:v,isActive:r?function(){return!1}:void 0})):(0,u.jsx)(ke,Object.assign({},i,{mobile:t,label:y,to:v,items:g,isActive:r?function(){return!1}:void 0}))}};var et=["type"];function tt(e){var t=e.type,n=(0,k.A)(e,et),r=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),a=Je[r];if(!a)throw new Error('No NavbarItem component found for type "'+t+'".');return(0,u.jsx)(a,Object.assign({},n))}function nt(){var e=(0,T.M)(),t=(0,x.p)().navbar.items;return(0,u.jsx)("ul",{className:"menu__list",children:t.map((function(t,n){return(0,r.createElement)(tt,Object.assign({mobile:!0},t,{onClick:function(){return e.toggle()},key:n}))}))})}function rt(e){return(0,u.jsx)("button",Object.assign({},e,{type:"button",className:"clean-btn navbar-sidebar__back",children:(0,u.jsx)(c.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 at(){var e=0===(0,x.p)().navbar.items.length,t=F();return(0,u.jsxs)(u.Fragment,{children:[!e&&(0,u.jsx)(rt,{onClick:function(){return t.hide()}}),t.content]})}function ot(){var e,t=(0,T.M)();return void 0===(e=t.shown)&&(e=!0),(0,r.useEffect)((function(){return document.body.style.overflow=e?"hidden":"visible",function(){document.body.style.overflow="visible"}}),[e]),t.shouldRender?(0,u.jsx)(B,{header:(0,u.jsx)(X,{}),primaryMenu:(0,u.jsx)(nt,{}),secondaryMenu:(0,u.jsx)(at,{})}):null}const it={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function st(e){return(0,u.jsx)("div",Object.assign({role:"presentation"},e,{className:(0,a.A)("navbar-sidebar__backdrop",e.className)}))}function ct(e){var t=e.children,n=(0,x.p)().navbar,o=n.hideOnScroll,i=n.style,s=(0,T.M)(),d=function(e){var t=(0,r.useState)(e),n=t[0],a=t[1],o=(0,r.useRef)(!1),i=(0,r.useRef)(0),s=(0,r.useCallback)((function(e){null!==e&&(i.current=e.getBoundingClientRect().height)}),[]);return(0,I.Mq)((function(t,n){var r=t.scrollY;if(e)if(r=s?a(!1):r+l{"use strict";n.d(t,{A:()=>v});var r=n(98587),a=n(96540),o=n(28774),i=n(86025),s=n(44586),c=n(6342),l=n(34164),u=n(92303),d=n(95293);const p={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var f=n(74848);function m(e){var t=e.className,n=e.children,r=(0,u.A)(),o=(0,d.G)().colorMode;return(0,f.jsx)(f.Fragment,{children:(r?"dark"===o?["dark"]:["light"]:["light","dark"]).map((function(e){var r=n({theme:e,className:(0,l.A)(t,p.themedComponent,p["themedComponent--"+e])});return(0,f.jsx)(a.Fragment,{children:r},e)}))})}var h=["sources","className","alt"];function g(e){var t=e.sources,n=e.className,a=e.alt,o=(0,r.A)(e,h);return(0,f.jsx)(m,{className:n,children:function(e){var n=e.theme,r=e.className;return(0,f.jsx)("img",Object.assign({src:t[n],alt:a,className:r},o))}})}var b=["imageClassName","titleClassName"];function y(e){var t=e.logo,n=e.alt,r=e.imageClassName,a={light:(0,i.Ay)(t.src),dark:(0,i.Ay)(t.srcDark||t.src)},o=(0,f.jsx)(g,{className:t.className,sources:a,height:t.height,width:t.width,alt:n,style:t.style});return r?(0,f.jsx)("div",{className:r,children:o}):o}function v(e){var t,n=(0,s.A)().siteConfig.title,a=(0,c.p)().navbar,l=a.title,u=a.logo,d=e.imageClassName,p=e.titleClassName,m=(0,r.A)(e,b),h=(0,i.Ay)((null==u?void 0:u.href)||"/"),g=l?"":n,v=null!=(t=null==u?void 0:u.alt)?t:g;return(0,f.jsxs)(o.A,Object.assign({to:h},m,(null==u?void 0:u.target)&&{target:u.target},{children:[u&&(0,f.jsx)(y,{logo:u,alt:v,imageClassName:d}),null!=l&&(0,f.jsx)("b",{className:p,children:l})]}))}},41463:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(96540);var r=n(5260),a=n(74848);function o(e){var t=e.locale,n=e.version,o=e.tag,i=t;return(0,a.jsxs)(r.A,{children:[t&&(0,a.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,a.jsx)("meta",{name:"docusaurus_version",content:n}),o&&(0,a.jsx)("meta",{name:"docusaurus_tag",content:o}),i&&(0,a.jsx)("meta",{name:"docsearch:language",content:i}),n&&(0,a.jsx)("meta",{name:"docsearch:version",content:n}),o&&(0,a.jsx)("meta",{name:"docsearch:docusaurus_tag",content:o})]})}},41422:(e,t,n)=>{"use strict";n.d(t,{N:()=>x,u:()=>p});var r=n(98587),a=n(96540),o=n(38193),i=n(205),s=n(53109),c=n(74848),l=["collapsed"],u=["lazy"],d="ease-in-out";function p(e){var t=e.initialState,n=(0,a.useState)(null!=t&&t),r=n[0],o=n[1],i=(0,a.useCallback)((function(){o((function(e){return!e}))}),[]);return{collapsed:r,setCollapsed:o,toggleCollapsed:i}}var f={display:"none",overflow:"hidden",height:"0px"},m={display:"block",overflow:"visible",height:"auto"};function h(e,t){var n=t?f:m;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function g(e){var t=e.collapsibleRef,n=e.collapsed,r=e.animation,o=(0,a.useRef)(!1);(0,a.useEffect)((function(){var e,a=t.current;function i(){var e,t,n=a.scrollHeight,o=null!=(e=null==r?void 0:r.duration)?e:function(e){if((0,s.O)())return 1;var t=e/36;return Math.round(10*(4+15*Math.pow(t,.25)+t/5))}(n);return{transition:"height "+o+"ms "+(null!=(t=null==r?void 0:r.easing)?t:d),height:n+"px"}}function c(){var e=i();a.style.transition=e.transition,a.style.height=e.height}if(!o.current)return h(a,n),void(o.current=!0);return a.style.willChange="height",e=requestAnimationFrame((function(){n?(c(),requestAnimationFrame((function(){a.style.height=f.height,a.style.overflow=f.overflow}))):(a.style.display="block",requestAnimationFrame((function(){c()})))})),function(){return cancelAnimationFrame(e)}}),[t,n,r])}function b(e){if(!o.A.canUseDOM)return e?f:m}function y(e){var t=e.as,n=void 0===t?"div":t,r=e.collapsed,o=e.children,i=e.animation,s=e.onCollapseTransitionEnd,l=e.className,u=e.disableSSRStyle,d=(0,a.useRef)(null);return g({collapsibleRef:d,collapsed:r,animation:i}),(0,c.jsx)(n,{ref:d,style:u?void 0:b(r),onTransitionEnd:function(e){"height"===e.propertyName&&(h(d.current,r),null==s||s(r))},className:l,children:o})}function v(e){var t=e.collapsed,n=(0,r.A)(e,l),o=(0,a.useState)(!t),s=o[0],u=o[1],d=(0,a.useState)(t),p=d[0],f=d[1];return(0,i.A)((function(){t||u(!0)}),[t]),(0,i.A)((function(){s&&f(t)}),[s,t]),s?(0,c.jsx)(y,Object.assign({},n,{collapsed:p})):null}function x(e){var t=e.lazy,n=(0,r.A)(e,u),a=t?v:y;return(0,c.jsx)(a,Object.assign({},n))}},65041:(e,t,n)=>{"use strict";n.d(t,{M:()=>h,o:()=>m});var r=n(96540),a=n(92303),o=n(42349),i=n(43807),s=n(6342),c=n(74848),l=(0,o.Wf)("docusaurus.announcement.dismiss"),u=(0,o.Wf)("docusaurus.announcement.id"),d=function(){return"true"===l.get()},p=function(e){return l.set(String(e))},f=r.createContext(null);function m(e){var t=e.children,n=function(){var e=(0,s.p)().announcementBar,t=(0,a.A)(),n=(0,r.useState)((function(){return!!t&&d()})),o=n[0],i=n[1];(0,r.useEffect)((function(){i(d())}),[]);var c=(0,r.useCallback)((function(){p(!0),i(!0)}),[]);return(0,r.useEffect)((function(){if(e){var t=e.id,n=u.get();"annoucement-bar"===n&&(n="announcement-bar");var r=t!==n;u.set(t),r&&p(!1),!r&&d()||i(!1)}}),[e]),(0,r.useMemo)((function(){return{isActive:!!e&&!o,close:c}}),[e,o,c])}();return(0,c.jsx)(f.Provider,{value:n,children:t})}function h(){var e=(0,r.useContext)(f);if(!e)throw new i.dV("AnnouncementBarProvider");return e}},95293:(e,t,n)=>{"use strict";n.d(t,{G:()=>b,a:()=>g});var r=n(96540),a=n(38193),o=n(43807),i=n(42349),s=n(6342),c=n(74848),l=r.createContext(void 0),u="theme",d=(0,i.Wf)(u),p={light:"light",dark:"dark"},f=function(e){return e===p.dark?p.dark:p.light},m=function(e){return a.A.canUseDOM?f(document.documentElement.getAttribute("data-theme")):f(e)},h=function(e){d.set(f(e))};function g(e){var t=e.children,n=function(){var e=(0,s.p)().colorMode,t=e.defaultMode,n=e.disableSwitch,a=e.respectPrefersColorScheme,o=(0,r.useState)(m(t)),i=o[0],c=o[1];(0,r.useEffect)((function(){n&&d.del()}),[n]);var l=(0,r.useCallback)((function(e,n){void 0===n&&(n={});var r=n.persist,o=void 0===r||r;e?(c(e),o&&h(e)):(c(a?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:t),d.del())}),[a,t]);(0,r.useEffect)((function(){document.documentElement.setAttribute("data-theme",f(i))}),[i]),(0,r.useEffect)((function(){if(!n){var e=function(e){if(e.key===u){var t=d.get();null!==t&&l(f(t))}};return window.addEventListener("storage",e),function(){return window.removeEventListener("storage",e)}}}),[n,l]);var g=(0,r.useRef)(!1);return(0,r.useEffect)((function(){if(!n||a){var e=window.matchMedia("(prefers-color-scheme: dark)"),t=function(){window.matchMedia("print").matches||g.current?g.current=window.matchMedia("print").matches:l(null)};return e.addListener(t),function(){return e.removeListener(t)}}}),[l,n,a]),(0,r.useMemo)((function(){return{colorMode:i,setColorMode:l,get isDarkTheme(){return i===p.dark},setLightTheme:function(){l(p.light)},setDarkTheme:function(){l(p.dark)}}}),[i,l])}();return(0,c.jsx)(l.Provider,{value:n,children:t})}function b(){var e=(0,r.useContext)(l);if(null==e)throw new o.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},22069:(e,t,n)=>{"use strict";n.d(t,{M:()=>f,e:()=>p});var r=n(96540),a=n(75600),o=n(24581),i=n(57485),s=n(6342),c=n(43807),l=n(74848),u=r.createContext(void 0);function d(){var e,t=(e=(0,a.YL)(),0===(0,s.p)().navbar.items.length&&!e.component),n=(0,o.l)(),c=!t&&"mobile"===n,l=(0,r.useState)(!1),u=l[0],d=l[1];(0,i.$Z)((function(){if(u)return d(!1),!1}));var p=(0,r.useCallback)((function(){d((function(e){return!e}))}),[]);return(0,r.useEffect)((function(){"desktop"===n&&d(!1)}),[n]),(0,r.useMemo)((function(){return{disabled:t,shouldRender:c,toggle:p,shown:u}}),[t,c,p,u])}function p(e){var t=e.children,n=d();return(0,l.jsx)(u.Provider,{value:n,children:t})}function f(){var e=r.useContext(u);if(void 0===e)throw new c.dV("NavbarMobileSidebarProvider");return e}},75600:(e,t,n)=>{"use strict";n.d(t,{GX:()=>l,YL:()=>c,y_:()=>s});var r=n(96540),a=n(43807),o=n(74848),i=r.createContext(null);function s(e){var t=e.children,n=(0,r.useState)({component:null,props:null});return(0,o.jsx)(i.Provider,{value:n,children:t})}function c(){var e=(0,r.useContext)(i);if(!e)throw new a.dV("NavbarSecondaryMenuContentProvider");return e[0]}function l(e){var t=e.component,n=e.props,o=(0,r.useContext)(i);if(!o)throw new a.dV("NavbarSecondaryMenuContentProvider");var s=o[1],c=(0,a.Be)(n);return(0,r.useEffect)((function(){s({component:t,props:c})}),[s,t,c]),(0,r.useEffect)((function(){return function(){return s({component:null,props:null})}}),[s]),null}},14090:(e,t,n)=>{"use strict";n.d(t,{w:()=>a,J:()=>o});var r=n(96540),a="navigation-with-keyboard";function o(){(0,r.useEffect)((function(){function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(a),"mousedown"===e.type&&document.body.classList.remove(a)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),function(){document.body.classList.remove(a),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},24255:(e,t,n)=>{"use strict";n.d(t,{b:()=>s,w:()=>c});var r=n(96540),a=n(44586),o=n(57485),i="q";function s(){return(0,o.l)(i)}function c(){var e=(0,a.A)().siteConfig,t=e.baseUrl,n=e.themeConfig.algolia.searchPagePath;return(0,r.useCallback)((function(e){return""+t+n+"?"+i+"="+encodeURIComponent(e)}),[t,n])}},24581:(e,t,n)=>{"use strict";n.d(t,{l:()=>s});var r=n(96540),a=n(38193),o={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function s(e){var t=(void 0===e?{}:e).desktopBreakpoint,n=void 0===t?i:t,s=(0,r.useState)((function(){return"ssr"})),c=s[0],l=s[1];return(0,r.useEffect)((function(){function e(){l(function(e){if(!a.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?o.desktop:o.mobile}(n))}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[n]),c}},17559:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});var 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:function(e){return"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:function(e){return"theme-doc-sidebar-item-category-level-"+e},docSidebarItemLinkLevel:function(e){return"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"}}},53109:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>r})},12181:(e,t,n)=>{"use strict";n.d(t,{bq:()=>d,MN:()=>u,a2:()=>l,k2:()=>p});var r=n(77387),a=n(96540),o=n(21312),i=n(70440);const s={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};var c=n(74848);function l(e){return(0,c.jsx)("button",Object.assign({type:"button"},e,{children:(0,c.jsx)(o.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 u(e){var t=e.error,n=e.tryAgain;return(0,c.jsxs)("div",{className:s.errorBoundaryFallback,children:[(0,c.jsx)("p",{children:t.message}),(0,c.jsx)(l,{onClick:n})]})}function d(e){var t=e.error,n=(0,i.rA)(t).map((function(e){return e.message})).join("\n\nCause:\n");return(0,c.jsx)("p",{className:s.errorBoundaryError,children:n})}var p=function(e){function t(){return e.apply(this,arguments)||this}(0,r.A)(t,e);var n=t.prototype;return n.componentDidCatch=function(e,t){throw this.props.onError(e,t)},n.render=function(){return this.props.children},t}(a.Component)},20481:(e,t,n)=>{"use strict";n.d(t,{s:()=>a});var r=n(44586);function a(e){var t=(0,r.A)().siteConfig,n=t.title,a=t.titleDelimiter;return null!=e&&e.trim().length?e.trim()+" "+a+" "+n:n}},57485:(e,t,n)=>{"use strict";n.d(t,{$Z:()=>i,aZ:()=>c,l:()=>l});var r=n(96540),a=n(56347),o=n(43807);function i(e){!function(e){var t=(0,a.W6)(),n=(0,o._q)(e);(0,r.useEffect)((function(){return t.block((function(e,t){return n(e,t)}))}),[t,n])}((function(t,n){if("POP"===n)return e(t,n)}))}function s(e){var t=(0,a.W6)();return(0,r.useSyncExternalStore)(t.listen,(function(){return e(t)}),(function(){return e(t)}))}function c(e){return s((function(t){return null===e?null:new URLSearchParams(t.location.search).get(e)}))}function l(e){var t,n=null!=(t=c(e))?t:"",o=function(e){var t=(0,a.W6)();return(0,r.useCallback)((function(n,r){var a=new URLSearchParams(t.location.search);n?a.set(e,n):a.delete(e),(null!=r&&r.push?t.push:t.replace)({search:a.toString()})}),[e,t])}(e);return[n,o]}},31682:(e,t,n)=>{"use strict";function r(e,t){return void 0===t&&(t=function(e,t){return e===t}),e.filter((function(n,r){return e.findIndex((function(e){return t(e,n)}))!==r}))}function a(e){return Array.from(new Set(e))}n.d(t,{XI:()=>r,sb:()=>a})},69024:(e,t,n)=>{"use strict";n.d(t,{e3:()=>f,be:()=>d,Jx:()=>m});var r=n(96540),a=n(34164),o=n(5260),i=n(53102);function s(){var e=r.useContext(i.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var c=n(86025),l=n(20481),u=n(74848);function d(e){var t=e.title,n=e.description,r=e.keywords,a=e.image,i=e.children,s=(0,l.s)(t),d=(0,c.hH)().withBaseUrl,p=a?d(a,{absolute:!0}):void 0;return(0,u.jsxs)(o.A,{children:[t&&(0,u.jsx)("title",{children:s}),t&&(0,u.jsx)("meta",{property:"og:title",content:s}),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}),p&&(0,u.jsx)("meta",{property:"og:image",content:p}),p&&(0,u.jsx)("meta",{name:"twitter:image",content:p}),i]})}var p=r.createContext(void 0);function f(e){var t=e.className,n=e.children,i=r.useContext(p),s=(0,a.A)(i,t);return(0,u.jsxs)(p.Provider,{value:s,children:[(0,u.jsx)(o.A,{children:(0,u.jsx)("html",{className:s})}),n]})}function m(e){var t=e.children,n=s(),r="plugin-"+n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,""),o="plugin-id-"+n.plugin.id;return(0,u.jsx)(f,{className:(0,a.A)(r,o),children:t})}},43807:(e,t,n)=>{"use strict";n.d(t,{dV:()=>m,fM:()=>g,_q:()=>p,ZC:()=>f,Be:()=>h});var r=n(3909),a=n(77387);function o(e){return o=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},o(e)}var i=n(63662);function s(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(s=function(){return!!e})()}function c(e){var t="function"==typeof Map?new Map:void 0;return c=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return function(e,t,n){if(s())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var a=new(e.bind.apply(e,r));return n&&(0,i.A)(a,n.prototype),a}(e,arguments,o(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),(0,i.A)(n,e)},c(e)}var l=n(96540),u=n(205),d=n(74848);function p(e){var t=(0,l.useRef)(e);return(0,u.A)((function(){t.current=e}),[e]),(0,l.useCallback)((function(){return t.current.apply(t,arguments)}),[])}function f(e){var t=(0,l.useRef)();return(0,u.A)((function(){t.current=e})),t.current}var m=function(e){function t(t,n){var a,o,i;return(i=e.call(this)||this).name="ReactContextError",i.message="Hook "+(null!=(a=null==(o=i.stack)||null==(o=o.split("\n")[1])||null==(o=o.match((0,r.A)(/at (?:\w+\.)?(\w+)/,{name:1})))?void 0:o.groups.name)?a:"")+" is called outside the <"+t+">. "+(null!=n?n:""),i}return(0,a.A)(t,e),t}(c(Error));function h(e){var t=Object.entries(e);return t.sort((function(e,t){return e[0].localeCompare(t[0])})),(0,l.useMemo)((function(){return e}),t.flat())}function g(e){return function(t){var n=t.children;return(0,d.jsx)(d.Fragment,{children:e.reduceRight((function(e,t){return(0,d.jsx)(t,{children:e})}),n)})}}},91252:(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})},99169:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>s,ys:()=>i});var r=n(96540),a=n(1459),o=n(44586);function i(e,t){var n=function(e){var t;return null==(t=!e||e.endsWith("/")?e:e+"/")?void 0:t.toLowerCase()};return n(e)===n(t)}function s(){var e=(0,o.A)().siteConfig.baseUrl;return(0,r.useMemo)((function(){return function(e){var t=e.baseUrl;function n(e){return e.path===t&&!0===e.exact}function r(e){return e.path===t&&!e.exact}return function e(t){if(0!==t.length)return t.find(n)||e(t.filter(r).flatMap((function(e){var t;return null!=(t=e.routes)?t:[]})))}(e.routes)}({routes:a.A,baseUrl:e})}),[e])}},23104:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>f,Tv:()=>u,a_:()=>m,gk:()=>h});var r=n(96540),a=n(38193),o=n(92303),i=n(205),s=n(43807),c=n(74848);var l=r.createContext(void 0);function u(e){var t,n=e.children,a=(t=(0,r.useRef)(!0),(0,r.useMemo)((function(){return{scrollEventsEnabledRef:t,enableScrollEvents:function(){t.current=!0},disableScrollEvents:function(){t.current=!1}}}),[]));return(0,c.jsx)(l.Provider,{value:a,children:n})}function d(){var e=(0,r.useContext)(l);if(null==e)throw new s.dV("ScrollControllerProvider");return e}var p=function(){return a.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null};function f(e,t){void 0===t&&(t=[]);var n=d().scrollEventsEnabledRef,a=(0,r.useRef)(p()),o=(0,s._q)(e);(0,r.useEffect)((function(){var e=function(){if(n.current){var e=p();o(e,a.current),a.current=e}},t={passive:!0};return e(),window.addEventListener("scroll",e,t),function(){return window.removeEventListener("scroll",e,t)}}),[o,n].concat(t))}function m(){var e,t,n,a=d(),o=(e=(0,r.useRef)({elem:null,top:0}),t=(0,r.useCallback)((function(t){e.current={elem:t,top:t.getBoundingClientRect().top}}),[]),n=(0,r.useCallback)((function(){var t=e.current,n=t.elem,r=t.top;if(!n)return{restored:!1};var a=n.getBoundingClientRect().top-r;return a&&window.scrollBy({left:0,top:a}),e.current={elem:null,top:0},{restored:0!==a}}),[]),(0,r.useMemo)((function(){return{save:t,restore:n}}),[n,t])),s=(0,r.useRef)(void 0),c=(0,r.useCallback)((function(e){o.save(e),a.disableScrollEvents(),s.current=function(){var e=o.restore().restored;if(s.current=void 0,e){var t=function(){a.enableScrollEvents(),window.removeEventListener("scroll",t)};window.addEventListener("scroll",t)}else a.enableScrollEvents()}}),[a,o]);return(0,i.A)((function(){queueMicrotask((function(){return null==s.current?void 0:s.current()}))})),{blockElementScrollPositionUntilNextRender:c}}function h(){var e=(0,r.useRef)(null),t=(0,o.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:function(n){e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),function(){}}(n):function(e){var t=null,n=document.documentElement.scrollTop>e;return function r(){var a=document.documentElement.scrollTop;(n&&a>e||!n&&a{"use strict";n.d(t,{C:()=>r});var r="default"},42349:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>u,Dv:()=>d});var r=n(96540);const a=JSON.parse('{"N":"localStorage","M":""}');var o=a.N;function i(e){var t=e.key,n=e.oldValue,r=e.newValue,a=e.storage;if(n!==r){var o=document.createEvent("StorageEvent");o.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,a),window.dispatchEvent(o)}}function s(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,c||(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),c=!0),null}var t}var c=!1;var l={get:function(){return null},set:function(){},del:function(){},listen:function(){return function(){}}};function u(e,t){var n=""+e+a.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);var r=s(null==t?void 0:t.persistence);return null===r?l:{get:function(){try{return r.getItem(n)}catch(e){return console.error("Docusaurus storage error, can't get key="+n,e),null}},set:function(e){try{var t=r.getItem(n);r.setItem(n,e),i({key:n,oldValue:t,newValue:e,storage:r})}catch(a){console.error("Docusaurus storage error, can't set "+n+"="+e,a)}},del:function(){try{var e=r.getItem(n);r.removeItem(n),i({key:n,oldValue:e,newValue:null,storage:r})}catch(t){console.error("Docusaurus storage error, can't delete key="+n,t)}},listen:function(e){try{var t=function(t){t.storageArea===r&&t.key===n&&e(t)};return window.addEventListener("storage",t),function(){return window.removeEventListener("storage",t)}}catch(a){return console.error("Docusaurus storage error, can't listen for changes of key="+n,a),function(){}}}}}function d(e,t){var n=(0,r.useRef)((function(){return null===e?l:u(e,t)})).current(),a=(0,r.useCallback)((function(e){return"undefined"==typeof window?function(){}:n.listen(e)}),[n]);return[(0,r.useSyncExternalStore)(a,(function(){return"undefined"==typeof window?null:n.get()}),(function(){return null})),n]}},32131:(e,t,n)=>{"use strict";n.d(t,{o:()=>i});var r=n(44586),a=n(56347),o=n(70440);function i(){var e=(0,r.A)(),t=e.siteConfig,n=t.baseUrl,i=t.url,s=t.trailingSlash,c=e.i18n,l=c.defaultLocale,u=c.currentLocale,d=(0,a.zy)().pathname,p=(0,o.Ks)(d,{trailingSlash:s,baseUrl:n}),f=u===l?n:n.replace("/"+u+"/","/"),m=p.replace(n,"");return{createUrl:function(e){var t=e.locale;return""+(e.fullyQualified?i:"")+function(e){return e===l?""+f:""+f+e+"/"}(t)+m}}}},75062:(e,t,n)=>{"use strict";n.d(t,{$:()=>i});var r=n(96540),a=n(56347),o=n(43807);function i(e){var t=(0,a.zy)(),n=(0,o.ZC)(t),i=(0,o._q)(e);(0,r.useEffect)((function(){n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6342:(e,t,n)=>{"use strict";n.d(t,{p:()=>a});var r=n(44586);function a(){return(0,r.A)().siteConfig.themeConfig}},38126:(e,t,n)=>{"use strict";n.d(t,{c:()=>a});var r=n(44586);function a(){return(0,r.A)().siteConfig.themeConfig}},51062:(e,t,n)=>{"use strict";n.d(t,{C:()=>s});var r=n(96540),a=n(91252),o=n(86025),i=n(38126);function s(){var e=(0,o.hH)().withBaseUrl,t=(0,i.c)().algolia,n=t.externalUrlRegex,s=t.replaceSearchResultPathname;return(0,r.useCallback)((function(t){var r=new URL(t);if((0,a.G)(n,r.href))return t;var o=""+(r.pathname+r.hash);return e(function(e,t){return t?e.replaceAll(new RegExp(t.from,"g"),t.to):e}(o,s))}),[e,n,s])}},12983:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addTrailingSlash=a,t.default=function(e,t){var n=t.trailingSlash,r=t.baseUrl;if(e.startsWith("#"))return e;if(void 0===n)return e;var i=e.split(/[#?]/)[0],s="/"===i||i===r?i:(c=i,l=n,l?a(c):o(c));var c,l;return e.replace(i,s)},t.addLeadingSlash=function(e){return(0,r.addPrefix)(e,"/")},t.removeTrailingSlash=o;var r=n(42566);function a(e){return e.endsWith("/")?e:e+"/"}function o(e){return(0,r.removeSuffix)(e,"/")}},80253:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=function e(t){if(t.cause)return[t].concat(e(t.cause));return[t]}},70440:(e,t,n)=>{"use strict";t.rA=t.Ks=void 0;var r=n(31635);var a=n(12983);Object.defineProperty(t,"Ks",{enumerable:!0,get:function(){return r.__importDefault(a).default}});var o=n(42566);var i=n(80253);Object.defineProperty(t,"rA",{enumerable:!0,get:function(){return i.getErrorCausalChain}})},42566:(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}},31513:(e,t,n)=>{"use strict";n.d(t,{zR:()=>x,TM:()=>j,yJ:()=>f,sC:()=>A,AO:()=>p});var r=n(58168);function a(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,a=e.length;r=0;p--){var f=i[p];"."===f?o(i,p):".."===f?(o(i,p),d++):d&&(o(i,p),d--)}if(!l)for(;d--;d)i.unshift("..");!l||""===i[0]||i[0]&&a(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var s=n(11561);function c(e){return"/"===e.charAt(0)?e:"/"+e}function l(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 p(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function f(e,t,n,a){var o;"string"==typeof e?(o=function(e){var t=e||"/",n="",r="",a=t.indexOf("#");-1!==a&&(r=t.substr(a),t=t.substr(0,a));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),o.state=t):(void 0===(o=(0,r.A)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(o.key=n),a?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=i(o.pathname,a.pathname)):o.pathname=a.pathname:o.pathname||(o.pathname="/"),o}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,a){if(null!=e){var o="function"==typeof e?e(t,n):e;"string"==typeof o?"function"==typeof r?r(o,a):a(!0):a(!1!==o)}else a(!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;rt?n.splice(t,n.length-t,a):n.push(a),d({action:r,location:a,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",a=f(e,t,h(),x.location);u.confirmTransitionTo(a,r,n,(function(e){e&&(x.entries[x.index]=a,d({action:r,location:a}))}))},go:v,goBack:function(){v(-1)},goForward:function(){v(1)},canGo:function(e){var t=x.index+e;return t>=0&&t{"use strict";var r=n(44363),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={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},s={};function c(e){return r.isMemo(e)?i:s[e.$$typeof]||a}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var l=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=f(n);a&&a!==m&&e(t,a,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var s=c(t),h=c(n),g=0;g{"use strict";e.exports=function(e,t,n,r,a,o,i,s){if(!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,a,o,i,s],u=0;(c=new Error(t.replace(/%s/g,(function(){return l[u++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},40282:(e,t,n)=>{"use strict";n.r(t)},32507:(e,t,n)=>{"use strict";n.r(t)},10119:(e,t,n)=>{"use strict";n.r(t)},5947:function(e,t,n){var r,a;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:'
'};function a(e,t,n){return en?n:e}function o(e){return 100*(-1+e)}function i(e,t,n){var a;return(a="translate3d"===r.positionUsing?{transform:"translate3d("+o(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+o(e)+"%,0)"}:{"margin-left":o(e)+"%"}).transition="all "+t+"ms "+n,a}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=a(e,r.minimum,1),n.status=1===e?null:e;var o=n.render(!t),l=o.querySelector(r.barSelector),u=r.speed,d=r.easing;return o.offsetWidth,s((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),c(l,i(e,u,d)),1===e?(c(o,{transition:"none",opacity:1}),o.offsetWidth,setTimeout((function(){c(o,{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)*a(Math.random()*t,.1,.95)),t=a(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 a,i=t.querySelector(r.barSelector),s=e?"-100":o(n.status||0),l=document.querySelector(r.parent);return c(i,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),r.showSpinner||(a=t.querySelector(r.spinnerSelector))&&f(a),l!=document.body&&u(l,"nprogress-custom-parent"),l.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&&f(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 s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),c=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,a=e.length,o=t.charAt(0).toUpperCase()+t.slice(1);a--;)if((r=e[a]+o)in n)return r;return t}function a(e){return e=n(e),t[e]||(t[e]=r(e))}function o(e,t,n){t=a(t),e.style[t]=n}return function(e,t){var n,r,a=arguments;if(2==a.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&o(e,n,r);else o(e,a[1],a[2])}}();function l(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;l(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);l(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(a="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=a)},19700:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,a,o){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(a,(function(e){if("function"==typeof o&&!o(e))return e;for(var a,s=i.length;-1!==n.code.indexOf(a=t(r,s));)++s;return i[s]=e,a})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var a=0,o=Object.keys(n.tokenStack);!function i(s){for(var c=0;c=o.length);c++){var l=s[c];if("string"==typeof l||l.content&&"string"==typeof l.content){var u=o[a],d=n.tokenStack[u],p="string"==typeof l?l:l.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++a;var h=p.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),b=p.substring(m+f.length),y=[];h&&y.push.apply(y,i([h])),y.push(g),b&&y.push.apply(y,i([b])),"string"==typeof l?s.splice.apply(s,[c,1].concat(y)):l.content=y}}else l.content&&i(l.content)}return s}(n.tokens)}}}})}(Prism)},75342:()=>{!function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|)*\*\//.source,n=0;n<2;n++)t=t.replace(//g,(function(){return t}));t=t.replace(//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}(Prism)},91830:(e,t,n)=>{var r={"./prism-rust":75342};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=91830},2694:(e,t,n)=>{"use strict";var r=n(6925);function a(){}function o(){}o.resetWarningCache=a,e.exports=function(){function e(e,t,n,a,o,i){if(i!==r){var s=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 s.name="Invariant Violation",s}}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:o,resetWarningCache:a};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},22551:(e,t,n)=>{"use strict";var r=n(96540),a=n(69982);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n