[{"data":1,"prerenderedAt":421},["ShallowReactive",2],{"navigation_docs":3,"-chains-cardano":180,"-chains-cardano-surround":416},[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":179},"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],{"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","i-lucide-link",{"id":181,"title":120,"body":182,"description":409,"extension":410,"links":411,"meta":412,"navigation":289,"path":121,"seo":414,"stem":122,"__hash__":415},"docs\u002F2.chains\u002F18.cardano.md",{"type":183,"value":184,"toc":405},"minimark",[185,189,194,221,237,381,385,401],[186,187],"chain-facts",{"chain":188},"cardano",[190,191,193],"h2",{"id":192},"address-format","Address format",[195,196,197,201,202,206,207,201,210,213,214,217,218,220],"p",{},[198,199,200],"strong",{},"Shelley"," ",[203,204,205],"code",{},"addr1…"," and ",[198,208,209],{},"stake",[203,211,212],{},"stake1…"," addresses are read the same way: the Bech32 checksum under ",[203,215,216],{},"addr"," or ",[203,219,209],{},", 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.",[195,222,223,201,226,206,229,232,233,236],{},[198,224,225],{},"Byron",[203,227,228],{},"Ae2…",[203,230,231],{},"DdzFF…"," addresses are read the way the Byron ledger's ",[203,234,235],{},"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.",[238,239,244],"pre",{"className":240,"code":241,"language":242,"meta":243,"style":243},"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","",[203,245,246,284,291,321,350,366],{"__ignoreMap":243},[247,248,251,255,259,263,266,270,274,278,281],"span",{"class":249,"line":250},"line",1,[247,252,254],{"class":253},"sP0CR","import",[247,256,258],{"class":257},"sKlNE"," {",[247,260,262],{"class":261},"snHMy"," getChain",[247,264,265],{"class":257}," }",[247,267,269],{"class":268},"stCPd"," from",[247,271,273],{"class":272},"scVjq"," \"",[247,275,277],{"class":276},"sQ7BG","@agntn\u002Fchains",[247,279,280],{"class":272},"\"",[247,282,283],{"class":257},";\n",[247,285,287],{"class":249,"line":286},2,[247,288,290],{"emptyLinePlaceholder":289},true,"\n",[247,292,294,298,302,305,308,311,313,316,318],{"class":249,"line":293},3,[247,295,297],{"class":296},"s1TYA","const",[247,299,301],{"class":300},"saoiD"," chain",[247,303,304],{"class":296}," =",[247,306,262],{"class":307},"sULi6",[247,309,310],{"class":257},"(",[247,312,280],{"class":272},[247,314,315],{"class":276},"ada",[247,317,280],{"class":272},[247,319,320],{"class":257},");\n",[247,322,324,328,331,334,336,338,341,343,346],{"class":249,"line":323},4,[247,325,327],{"class":326},"spVlQ","chain",[247,329,330],{"class":257},".",[247,332,333],{"class":307},"assertAddress",[247,335,310],{"class":257},[247,337,280],{"class":272},[247,339,340],{"class":276},"addr1qx2fxv2umyhttkxyxp8x0dlpdt3k6cwng5pxj3jhsydzer3n0d3vllmyqwsx5wktcd8cc3sq835lu7drv2xwl2wywfgse35a3x",[247,342,280],{"class":272},[247,344,345],{"class":257},"); ",[247,347,349],{"class":348},"sjhu3","\u002F\u002F returned unchanged\n",[247,351,353,355,357,360,363],{"class":249,"line":352},5,[247,354,327],{"class":326},[247,356,330],{"class":257},[247,358,359],{"class":326},"type",[247,361,362],{"class":257},"; ",[247,364,365],{"class":348},"\u002F\u002F \"utxo\"\n",[247,367,369,371,373,376,378],{"class":249,"line":368},6,[247,370,327],{"class":326},[247,372,330],{"class":257},[247,374,375],{"class":326},"caip2",[247,377,362],{"class":257},[247,379,380],{"class":348},"\u002F\u002F \"cip34:1-764824073\"\n",[190,382,384],{"id":383},"spellings","Spellings",[195,386,387,389,390,389,392,394,395,397,398,330],{},[203,388,188],{},", ",[203,391,315],{},[203,393,120],{},". The key is ",[203,396,188],{},", the rest resolve through ",[203,399,400],{},"getChain",[402,403,404],"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":243,"searchDepth":286,"depth":286,"links":406},[407,408],{"id":192,"depth":286,"text":193},{"id":383,"depth":286,"text":384},"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":413},"i-token-ada",{"title":120,"description":409},"o6sK71Vu0lzGKMarA_K3XCDsNRiZyUVzDswy0RmTzbk",[417,419],{"title":116,"path":117,"stem":118,"description":418,"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":420,"children":-1},"Base58 decoded to exactly 32 bytes. Character length cannot separate an account from a Bitcoin or TRON address, decoding can.",1790261454463]