[{"data":1,"prerenderedAt":437},["ShallowReactive",2],{"navigation_docs":3,"-chains-cardano":196,"-chains-cardano-surround":432},[4,44],{"title":5,"path":6,"stem":7,"children":8,"icon":43},"Guide","\u002Fguide","1.guide\u002F01.index",[9,11,15,19,23,27,31,35,39],{"title":10,"path":6,"stem":7},"Getting Started",{"title":12,"path":13,"stem":14},"Registry and aliases","\u002Fguide\u002Fregistry","1.guide\u002F02.registry",{"title":16,"path":17,"stem":18},"Address validation","\u002Fguide\u002Fvalidation","1.guide\u002F03.validation",{"title":20,"path":21,"stem":22},"Identify","\u002Fguide\u002Fidentify","1.guide\u002F04.identify",{"title":24,"path":25,"stem":26},"Metadata","\u002Fguide\u002Fmetadata","1.guide\u002F05.metadata",{"title":28,"path":29,"stem":30},"CLI","\u002Fguide\u002Fcli","1.guide\u002F06.cli",{"title":32,"path":33,"stem":34},"Agents","\u002Fguide\u002Fagents","1.guide\u002F07.agents",{"title":36,"path":37,"stem":38},"Custom chains","\u002Fguide\u002Fcustom","1.guide\u002F08.custom",{"title":40,"path":41,"stem":42},"Playground","\u002Fguide\u002Fplayground","1.guide\u002F09.playground","i-lucide-book-open",{"title":45,"path":46,"stem":47,"children":48,"icon":195},"Chains","\u002Fchains","2.chains\u002F00.index",[49,51,55,59,63,67,71,75,79,83,87,91,95,99,103,107,111,115,119,123,127,131,135,139,143,147,151,155,159,163,167,171,175,179,183,187,191],{"title":50,"path":46,"stem":47},"Overview",{"title":52,"path":53,"stem":54},"Ethereum","\u002Fchains\u002Fethereum","2.chains\u002F01.ethereum",{"title":56,"path":57,"stem":58},"Base","\u002Fchains\u002Fbase","2.chains\u002F02.base",{"title":60,"path":61,"stem":62},"Arbitrum One","\u002Fchains\u002Farbitrum","2.chains\u002F03.arbitrum",{"title":64,"path":65,"stem":66},"Optimism","\u002Fchains\u002Foptimism","2.chains\u002F04.optimism",{"title":68,"path":69,"stem":70},"Polygon PoS","\u002Fchains\u002Fpolygon","2.chains\u002F05.polygon",{"title":72,"path":73,"stem":74},"BNB Chain","\u002Fchains\u002Fbsc","2.chains\u002F06.bsc",{"title":76,"path":77,"stem":78},"Avalanche C-Chain","\u002Fchains\u002Favalanche","2.chains\u002F07.avalanche",{"title":80,"path":81,"stem":82},"Fantom Opera","\u002Fchains\u002Ffantom","2.chains\u002F08.fantom",{"title":84,"path":85,"stem":86},"Gnosis Chain","\u002Fchains\u002Fgnosis","2.chains\u002F09.gnosis",{"title":88,"path":89,"stem":90},"Linea","\u002Fchains\u002Flinea","2.chains\u002F10.linea",{"title":92,"path":93,"stem":94},"zkSync Era","\u002Fchains\u002Fzksync","2.chains\u002F11.zksync",{"title":96,"path":97,"stem":98},"Scroll","\u002Fchains\u002Fscroll","2.chains\u002F12.scroll",{"title":100,"path":101,"stem":102},"Berachain","\u002Fchains\u002Fberachain","2.chains\u002F13.berachain",{"title":104,"path":105,"stem":106},"Bitcoin","\u002Fchains\u002Fbitcoin","2.chains\u002F14.bitcoin",{"title":108,"path":109,"stem":110},"Litecoin","\u002Fchains\u002Flitecoin","2.chains\u002F15.litecoin",{"title":112,"path":113,"stem":114},"Pepecoin","\u002Fchains\u002Fpepecoin","2.chains\u002F16.pepecoin",{"title":116,"path":117,"stem":118},"eCash","\u002Fchains\u002Fecash","2.chains\u002F17.ecash",{"title":120,"path":121,"stem":122},"Cardano","\u002Fchains\u002Fcardano","2.chains\u002F18.cardano",{"title":124,"path":125,"stem":126},"Solana","\u002Fchains\u002Fsolana","2.chains\u002F19.solana",{"title":128,"path":129,"stem":130},"Stellar","\u002Fchains\u002Fstellar","2.chains\u002F20.stellar",{"title":132,"path":133,"stem":134},"XRP Ledger","\u002Fchains\u002Fxrpl","2.chains\u002F21.xrpl",{"title":136,"path":137,"stem":138},"Aptos","\u002Fchains\u002Faptos","2.chains\u002F22.aptos",{"title":140,"path":141,"stem":142},"Sui","\u002Fchains\u002Fsui","2.chains\u002F23.sui",{"title":144,"path":145,"stem":146},"TON (The Open Network)","\u002Fchains\u002Fton","2.chains\u002F24.ton",{"title":148,"path":149,"stem":150},"TRON","\u002Fchains\u002Ftron","2.chains\u002F25.tron",{"title":152,"path":153,"stem":154},"Octra","\u002Fchains\u002Foctra","2.chains\u002F26.octra",{"title":156,"path":157,"stem":158},"Arweave","\u002Fchains\u002Farweave","2.chains\u002F27.arweave",{"title":160,"path":161,"stem":162},"Monero","\u002Fchains\u002Fmonero","2.chains\u002F28.monero",{"title":164,"path":165,"stem":166},"Decred","\u002Fchains\u002Fdecred","2.chains\u002F29.decred",{"title":168,"path":169,"stem":170},"Arc","\u002Fchains\u002Farc","2.chains\u002F30.arc",{"title":172,"path":173,"stem":174},"Dogecoin","\u002Fchains\u002Fdogecoin","2.chains\u002F31.dogecoin",{"title":176,"path":177,"stem":178},"Bitcoin Cash","\u002Fchains\u002Fbitcoincash","2.chains\u002F32.bitcoincash",{"title":180,"path":181,"stem":182},"Bitcoin SV","\u002Fchains\u002Fbitcoinsv","2.chains\u002F33.bitcoinsv",{"title":184,"path":185,"stem":186},"Bitcoin Gold","\u002Fchains\u002Fbitcoingold","2.chains\u002F34.bitcoingold",{"title":188,"path":189,"stem":190},"Dash","\u002Fchains\u002Fdash","2.chains\u002F35.dash",{"title":192,"path":193,"stem":194},"Zcash","\u002Fchains\u002Fzcash","2.chains\u002F36.zcash","i-lucide-link",{"id":197,"title":120,"body":198,"description":425,"extension":426,"links":427,"meta":428,"navigation":305,"path":121,"seo":430,"stem":122,"__hash__":431},"docs\u002F2.chains\u002F18.cardano.md",{"type":199,"value":200,"toc":421},"minimark",[201,205,210,237,253,397,401,417],[202,203],"chain-facts",{"chain":204},"cardano",[206,207,209],"h2",{"id":208},"address-format","Address format",[211,212,213,217,218,222,223,217,226,229,230,233,234,236],"p",{},[214,215,216],"strong",{},"Shelley"," ",[219,220,221],"code",{},"addr1…"," and ",[214,224,225],{},"stake",[219,227,228],{},"stake1…"," addresses are read the same way: the Bech32 checksum under ",[219,231,232],{},"addr"," or ",[219,235,225],{},", past the 90 characters BIP-173 allows because a base address is 103, then CIP-19's header. The network tag has to be mainnet's, the type has to fit the prefix, and the payload has to be what the type carries: two 28-byte credentials for a base address, one for an enterprise or reward address, one plus a pointer for a pointer address. A pointer has to carry the three coordinates the ledger reads, seven bits a byte, within their widths, with nothing left over.",[211,238,239,217,242,222,245,248,249,252],{},[214,240,241],{},"Byron",[219,243,244],{},"Ae2…",[219,246,247],{},"DdzFF…"," addresses are read the way the Byron ledger's ",[219,250,251],{},"decodeCrcProtected"," reads them: an array of two, tag 24 over the payload's byte string, then a CRC-32 that has to be the payload's. The payload has to be the array of three the ledger decodes, a 28-byte root, the attribute map and a type it knows, 0 for a verification key and 2 for a redeem key, with nothing after. The attributes are byte strings under small keys the ledger keeps unparsed unless it knows them, and key 2 is the network magic, which only a test network writes: the mainnet ledger reads any value there as a testnet address, so the address fails. That includes the Byron example in CIP-19, which carries the legacy testnet magic.",[254,255,260],"pre",{"className":256,"code":257,"language":258,"meta":259,"style":259},"language-ts shiki shiki-themes github-light github-light poimandres","import { getChain } from \"@agntn\u002Fchains\";\n\nconst chain = getChain(\"ada\");\nchain.assertAddress(\"addr1qx2fxv2umyhttkxyxp8x0dlpdt3k6cwng5pxj3jhsydzer3n0d3vllmyqwsx5wktcd8cc3sq835lu7drv2xwl2wywfgse35a3x\"); \u002F\u002F returned unchanged\nchain.type; \u002F\u002F \"utxo\"\nchain.caip2; \u002F\u002F \"cip34:1-764824073\"\n","ts","",[219,261,262,300,307,337,366,382],{"__ignoreMap":259},[263,264,267,271,275,279,282,286,290,294,297],"span",{"class":265,"line":266},"line",1,[263,268,270],{"class":269},"sP0CR","import",[263,272,274],{"class":273},"sKlNE"," {",[263,276,278],{"class":277},"snHMy"," getChain",[263,280,281],{"class":273}," }",[263,283,285],{"class":284},"stCPd"," from",[263,287,289],{"class":288},"scVjq"," \"",[263,291,293],{"class":292},"sQ7BG","@agntn\u002Fchains",[263,295,296],{"class":288},"\"",[263,298,299],{"class":273},";\n",[263,301,303],{"class":265,"line":302},2,[263,304,306],{"emptyLinePlaceholder":305},true,"\n",[263,308,310,314,318,321,324,327,329,332,334],{"class":265,"line":309},3,[263,311,313],{"class":312},"s1TYA","const",[263,315,317],{"class":316},"saoiD"," chain",[263,319,320],{"class":312}," =",[263,322,278],{"class":323},"sULi6",[263,325,326],{"class":273},"(",[263,328,296],{"class":288},[263,330,331],{"class":292},"ada",[263,333,296],{"class":288},[263,335,336],{"class":273},");\n",[263,338,340,344,347,350,352,354,357,359,362],{"class":265,"line":339},4,[263,341,343],{"class":342},"spVlQ","chain",[263,345,346],{"class":273},".",[263,348,349],{"class":323},"assertAddress",[263,351,326],{"class":273},[263,353,296],{"class":288},[263,355,356],{"class":292},"addr1qx2fxv2umyhttkxyxp8x0dlpdt3k6cwng5pxj3jhsydzer3n0d3vllmyqwsx5wktcd8cc3sq835lu7drv2xwl2wywfgse35a3x",[263,358,296],{"class":288},[263,360,361],{"class":273},"); ",[263,363,365],{"class":364},"sjhu3","\u002F\u002F returned unchanged\n",[263,367,369,371,373,376,379],{"class":265,"line":368},5,[263,370,343],{"class":342},[263,372,346],{"class":273},[263,374,375],{"class":342},"type",[263,377,378],{"class":273},"; ",[263,380,381],{"class":364},"\u002F\u002F \"utxo\"\n",[263,383,385,387,389,392,394],{"class":265,"line":384},6,[263,386,343],{"class":342},[263,388,346],{"class":273},[263,390,391],{"class":342},"caip2",[263,393,378],{"class":273},[263,395,396],{"class":364},"\u002F\u002F \"cip34:1-764824073\"\n",[206,398,400],{"id":399},"spellings","Spellings",[211,402,403,405,406,405,408,410,411,413,414,346],{},[219,404,204],{},", ",[219,407,331],{},[219,409,120],{},". The key is ",[219,412,204],{},", the rest resolve through ",[219,415,416],{},"getChain",[418,419,420],"style",{},"html pre.shiki code .sP0CR, html code.shiki .sP0CR{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#5DE4C7}html pre.shiki code .sKlNE, html code.shiki .sKlNE{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#A6ACCD}html pre.shiki code .snHMy, html code.shiki .snHMy{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#ADD7FF}html pre.shiki code .stCPd, html code.shiki .stCPd{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#A6ACCD}html pre.shiki code .scVjq, html code.shiki .scVjq{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#A6ACCD}html pre.shiki code .sQ7BG, html code.shiki .sQ7BG{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#5DE4C7}html pre.shiki code .s1TYA, html code.shiki .s1TYA{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#91B4D5}html pre.shiki code .saoiD, html code.shiki .saoiD{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#E4F0FB}html pre.shiki code .sULi6, html code.shiki .sULi6{--shiki-light:#6F42C1;--shiki-default:#6F42C1;--shiki-dark:#E4F0FBD0}html pre.shiki code .spVlQ, html code.shiki .spVlQ{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E4F0FB}html pre.shiki code .sjhu3, html code.shiki .sjhu3{--shiki-light:#6A737D;--shiki-light-font-style:inherit;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#767C9DB0;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":259,"searchDepth":302,"depth":302,"links":422},[423,424],{"id":208,"depth":302,"text":209},{"id":399,"depth":302,"text":400},"Shelley and stake addresses decoded under CIP-19 with their Bech32 checksum verified. Byron addresses decoded the way the ledger reads them, CRC-32 verified.","md",null,{"icon":429},"i-token-ada",{"title":120,"description":425},"o6sK71Vu0lzGKMarA_K3XCDsNRiZyUVzDswy0RmTzbk",[433,435],{"title":116,"path":117,"stem":118,"description":434,"children":-1},"CashAddr with the checksum verified under the ecash prefix, written or not. Two decimals, which is the fact most likely to bite.",{"title":124,"path":125,"stem":126,"description":436,"children":-1},"Base58 decoded to exactly 32 bytes. Character length cannot separate an account from a Bitcoin or TRON address, decoding can.",1790447832454]