[{"data":1,"prerenderedAt":1725},["ShallowReactive",2],{"navigation":3,"/zksync-network/zksync-era/custom-tooling":588,"/zksync-network/zksync-era/custom-tooling-surround":1281,"content-query-hNspmz2trj":1286},[4,151,266],{"title":5,"_path":6,"children":7},"ZKsync Network","/zksync-network",[8,10,25,37,74,107,121,142],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12,"children":13},"Quickstart","/zksync-network/quick-start",[14,16,19,22],{"title":15,"_path":12},"Setup",{"title":17,"_path":18},"Deploy your first contract","/zksync-network/quick-start/deploy-your-first-contract",{"title":20,"_path":21},"Interact with your contract","/zksync-network/quick-start/interact-with-your-contract",{"title":23,"_path":24},"Build a Frontend","/zksync-network/quick-start/build-a-frontend",{"title":26,"_path":27,"children":28},"Environment","/zksync-network/environment",[29,31,34],{"title":30,"_path":27},"Elastic Network Chains",{"title":32,"_path":33},"L1 contracts","/zksync-network/environment/l1-contracts",{"title":35,"_path":36},"System contracts","/zksync-network/environment/l2-contracts",{"title":38,"_path":39,"children":40},"Unique features","/zksync-network/unique-features",[41],{"title":42,"_path":43,"children":44},"ZKsync SSO","/zksync-network/unique-features/zksync-sso",[45,47,50,53,56,59,62,65,68,71],{"title":46,"_path":43},"SSO Intro",{"title":48,"_path":49},"Getting Started","/zksync-network/unique-features/zksync-sso/getting-started",{"title":51,"_path":52},"Architecture","/zksync-network/unique-features/zksync-sso/architecture",{"title":54,"_path":55},"Auth Server","/zksync-network/unique-features/zksync-sso/auth-server",{"title":57,"_path":58},"Sessions","/zksync-network/unique-features/zksync-sso/sessions",{"title":60,"_path":61},"Passkeys","/zksync-network/unique-features/zksync-sso/passkeys",{"title":63,"_path":64},"Accounts","/zksync-network/unique-features/zksync-sso/accounts",{"title":66,"_path":67},"Account Recovery","/zksync-network/unique-features/zksync-sso/account-recovery",{"title":69,"_path":70},"Transaction Flow","/zksync-network/unique-features/zksync-sso/transaction-flow",{"title":72,"_path":73},"FAQs","/zksync-network/unique-features/zksync-sso/faqs",{"title":75,"_path":76,"children":77},"ZKsync Connect","/zksync-network/zksync-connect",[78,80,96,98,101,104],{"title":79,"_path":76},"Overview",{"title":81,"_path":82,"children":83},"Guides","/zksync-network/zksync-connect/guides",[84,87,90,93],{"title":85,"_path":86},"Local Setup","/zksync-network/zksync-connect/guides/local-setup",{"title":88,"_path":89},"Transaction Bundles","/zksync-network/zksync-connect/guides/transaction-bundles",{"title":91,"_path":92},"Asset Transfers","/zksync-network/zksync-connect/guides/asset-transfers",{"title":94,"_path":95},"Interop Messages","/zksync-network/zksync-connect/guides/interop-messages",{"title":88,"_path":97},"/zksync-network/zksync-connect/transaction-bundles",{"title":99,"_path":100},"Crosschain Asset Transfers","/zksync-network/zksync-connect/crosschain-asset-transfers",{"title":102,"_path":103},"Messaging","/zksync-network/zksync-connect/messaging",{"title":105,"_path":106},"Interop Fees","/zksync-network/zksync-connect/interop-fees",{"title":108,"_path":109,"children":110},"ZKsync OS Developer Preview","/zksync-network/zksync-os",[111,113,116,119],{"title":112,"_path":109},"ZKsync OS Overview",{"title":114,"_path":115},"Network Details","/zksync-network/zksync-os/network-details",{"title":117,"_path":118},"Developer Quickstart","/zksync-network/zksync-os/quickstart",{"title":72,"_path":120},"/zksync-network/zksync-os/faqs",{"title":122,"_path":123,"children":124},"ZKsync Era (EraVM chains)","/zksync-network/zksync-era",[125,127,130,133,136,139],{"title":126,"_path":123},"About ZKsync Era",{"title":128,"_path":129},"ZKsync Era RPC","/zksync-network/zksync-era/network-details",{"title":131,"_path":132},"Features","/zksync-network/zksync-era/unique-features",{"title":134,"_path":135},"Custom Tooling","/zksync-network/zksync-era/custom-tooling",{"title":137,"_path":138},"Ecosystem","/zksync-network/zksync-era/ecosystem",{"title":140,"_path":141},"Security and best practices","/zksync-network/zksync-era/security-best-practices",{"title":143,"_path":144,"children":145},"Contributing","/zksync-network/contributing",[146,148],{"title":147,"_path":144},"Contributing to Documentation",{"title":149,"_path":150},"Protocol Contributions","/zksync-network/contributing/protocol-contributions",{"title":152,"_path":153,"children":154},"ZK Stack","/zk-stack",[155,157,160,190,212,228,263],{"title":156,"_path":153},"ZK Stack Overview",{"title":158,"_path":159},"ZKsync Chains","/zk-stack/zk-chains",{"title":161,"_path":162,"children":163},"Components","/zk-stack/components",[164,166,169,172,181,184,187],{"title":165,"_path":162},"ZK Stack Components Overview",{"title":167,"_path":168},"ZKsync OS","/zk-stack/components/zksync-os",{"title":170,"_path":171},"ZKsync OS Server","/zk-stack/components/server",{"title":173,"_path":174,"children":175},"ZKsync Airbender","/zk-stack/components/zksync-airbender",[176,178],{"title":177,"_path":174},"Airbender Overview",{"title":179,"_path":180},"Airbender Deep Dive","/zk-stack/components/zksync-airbender/deepdive",{"title":182,"_path":183},"Block explorer","/zk-stack/components/block-explorer",{"title":185,"_path":186},"Portal","/zk-stack/components/portal",{"title":188,"_path":189},"Fee withdrawer","/zk-stack/components/fee-withdrawer",{"title":191,"_path":192,"children":193},"Run a ZKsync Chain","/zk-stack/running",[194,197,200,203,206,209],{"title":195,"_path":196},"Launch a ZKsync chain","/zk-stack/running/quickstart",{"title":198,"_path":199},"Interact with your chain","/zk-stack/running/using-a-local-zk-chain",{"title":201,"_path":202},"ZKsync Gateway","/zk-stack/running/gateway-settlement-layer",{"title":204,"_path":205},"Prover setup","/zk-stack/running/proving",{"title":207,"_path":208},"Ownership Model","/zk-stack/running/ownership-model",{"title":210,"_path":211},"Rollup as a Service","/zk-stack/running/raas",{"title":213,"_path":214,"children":215},"Customizations","/zk-stack/customizations",[216,219,222,225],{"title":217,"_path":218},"Custom base tokens","/zk-stack/customizations/custom-base-tokens",{"title":220,"_path":221},"Validium in ZK Stack","/zk-stack/customizations/validium",{"title":223,"_path":224},"Configurations","/zk-stack/customizations/configurations",{"title":226,"_path":227},"Transaction filtering","/zk-stack/customizations/transaction-filtering",{"title":229,"_path":230,"children":231},"Prividium™","/zk-stack/prividium",[232,235,237,239,242,245,248,251,254,257,260],{"title":233,"_path":234},"Prividium™ Overview","/zk-stack/prividium/overview",{"title":131,"_path":236},"/zk-stack/prividium/features",{"title":51,"_path":238},"/zk-stack/prividium/architecture",{"title":240,"_path":241},"Deployment Model","/zk-stack/prividium/deployment",{"title":243,"_path":244},"Proxy RPC API","/zk-stack/prividium/proxy",{"title":246,"_path":247},"Administration and User Management","/zk-stack/prividium/administration-user-management",{"title":249,"_path":250},"Permissions and Access Control","/zk-stack/prividium/permissions-overview",{"title":252,"_path":253},"Prividium™ SDK","/zk-stack/prividium/sdk",{"title":255,"_path":256},"Private Block Explorer","/zk-stack/prividium/explorer",{"title":258,"_path":259},"Developer Considerations","/zk-stack/prividium/developer-considerations",{"title":261,"_path":262},"Prividium™ License Model","/zk-stack/prividium/license",{"title":264,"_path":265},"Open Source License","/zk-stack/license",{"title":267,"_path":268,"children":269},"ZKsync Protocol","/zksync-protocol",[270,272,289,314,327,348,367,380,585],{"title":271,"_path":268},"Getting started with ZKsync protocol",{"title":273,"_path":274,"children":275},"ZKsync protocol overview","/zksync-protocol/rollup",[276,277,280,283,286],{"title":273,"_path":274},{"title":278,"_path":279},"Bridging assets","/zksync-protocol/rollup/bridging-assets",{"title":281,"_path":282},"Finality","/zksync-protocol/rollup/finality",{"title":284,"_path":285},"Data availability","/zksync-protocol/rollup/data-availability",{"title":287,"_path":288},"Pubdata compression","/zksync-protocol/rollup/pubdata-compression",{"title":167,"_path":290,"children":291},"/zksync-protocol/zksyncos",[292,293,296,299,302,305,308,311],{"title":112,"_path":290},{"title":294,"_path":295},"Double Resource Accounting","/zksync-protocol/zksyncos/double-accounting",{"title":297,"_path":298},"Bootloader","/zksync-protocol/zksyncos/bootloader",{"title":300,"_path":301},"Execution Environments","/zksync-protocol/zksyncos/execution-environment",{"title":303,"_path":304},"System","/zksync-protocol/zksyncos/system",{"title":306,"_path":307},"Processing of Transactions","/zksync-protocol/zksyncos/tx-processing",{"title":309,"_path":310},"System Hooks","/zksync-protocol/zksyncos/system-hooks",{"title":312,"_path":313},"Runner Flow","/zksync-protocol/zksyncos/runner-flow",{"title":201,"_path":315,"children":316},"/zksync-protocol/gateway",[317,319,321,324],{"title":318,"_path":315},"Gateway Overview",{"title":131,"_path":320},"/zksync-protocol/gateway/features",{"title":322,"_path":323},"Data Availability Considerations","/zksync-protocol/gateway/da-considerations",{"title":325,"_path":326},"Frequently Asked Questions","/zksync-protocol/gateway/gateway-faq",{"title":328,"_path":329,"children":330},"Web3 API","/zksync-protocol/api",[331,333,336,339,342,345],{"title":332,"_path":329},"API Overview",{"title":334,"_path":335},"Conventions","/zksync-protocol/api/conventions",{"title":337,"_path":338},"Ethereum JSON-RPC API","/zksync-protocol/api/ethereum-rpc",{"title":340,"_path":341},"Debug JSON-RPC API","/zksync-protocol/api/debug-rpc",{"title":343,"_path":344},"ZKsync JSON-RPC API","/zksync-protocol/api/zks-rpc",{"title":346,"_path":347},"PubSub JSON-RPC API","/zksync-protocol/api/pub-sub-rpc",{"title":349,"_path":350,"children":351},"Contracts","/zksync-protocol/contracts",[352,354],{"title":353,"_path":350},"ZKsync contracts",{"title":32,"_path":355,"children":356},"/zksync-protocol/contracts/l1-contracts",[357,358,361,364],{"title":32,"_path":355},{"title":359,"_path":360},"L1 ecosystem contracts","/zksync-protocol/contracts/l1-contracts/l1-ecosystem-contracts",{"title":362,"_path":363},"Shared bridges","/zksync-protocol/contracts/l1-contracts/shared-bridges",{"title":365,"_path":366},"ZKsync Chain addresses","/zksync-protocol/contracts/l1-contracts/zk-chain-addresses",{"title":368,"_path":369,"children":370},"Protocol security","/zksync-protocol/security",[371,374,377],{"title":372,"_path":373},"Audits","/zksync-protocol/security/audits",{"title":375,"_path":376},"Bug bounty","/zksync-protocol/security/bug-bounty",{"title":378,"_path":379},"Withdrawal delay","/zksync-protocol/security/withdrawal-delay",{"title":381,"_path":382,"children":383},"EraVM Chains","/zksync-protocol/era-vm",[384,386,413,422,439,504,516,538,565],{"title":385,"_path":382},"EraVM Overview",{"title":387,"_path":388,"children":389},"Transactions","/zksync-protocol/era-vm/transactions",[390,393,396,399],{"title":391,"_path":392},"Transaction lifecycle","/zksync-protocol/era-vm/transactions/transaction-lifecycle",{"title":394,"_path":395},"Blocks and batches","/zksync-protocol/era-vm/transactions/blocks",{"title":397,"_path":398},"L1 \u003C-> L2 communication","/zksync-protocol/era-vm/transactions/l1_l2_communication",{"title":400,"_path":401,"children":402},"Fee model","/zksync-protocol/era-vm/transactions/fee-model",[403,404,407,410],{"title":400,"_path":401},{"title":405,"_path":406},"How L2 gas price works","/zksync-protocol/era-vm/transactions/fee-model/how-l2-gas-price-works",{"title":408,"_path":409},"How ZKsync Chains charges for pubdata","/zksync-protocol/era-vm/transactions/fee-model/how-we-charge-for-pubdata",{"title":411,"_path":412},"ZKsync fee structure","/zksync-protocol/era-vm/transactions/fee-model/fee-structure",{"title":414,"_path":415,"children":416},"EraVM","/zksync-protocol/era-vm/vm",[417,419],{"title":418,"_path":415},"ZKsync Virtual Machine primer",{"title":420,"_path":421},"VM formal specification","/zksync-protocol/era-vm/vm/formal-spec",{"title":349,"_path":423,"children":424},"/zksync-protocol/era-vm/contracts",[425,426,428,430,433,436],{"title":353,"_path":423},{"title":297,"_path":427},"/zksync-protocol/era-vm/contracts/bootloader",{"title":35,"_path":429},"/zksync-protocol/era-vm/contracts/system-contracts",{"title":431,"_path":432},"Handling L1->L2 ops on ZKsync","/zksync-protocol/era-vm/contracts/handling-l1-l2-ops",{"title":434,"_path":435},"Handling pubdata","/zksync-protocol/era-vm/contracts/handling-pubdata",{"title":437,"_path":438},"Pubdata post 4844","/zksync-protocol/era-vm/contracts/pubdata-post-4844",{"title":440,"_path":441,"children":442},"Circuits","/zksync-protocol/era-vm/circuits",[443,444,447,498,501],{"title":79,"_path":441},{"title":445,"_path":446},"ZK terminology","/zksync-protocol/era-vm/circuits/zk-terminology",{"title":448,"_path":449,"children":450},"Concrete circuits","/zksync-protocol/era-vm/circuits/circuits",[451,452,455,458,461,464,467,470,473,476,479,482,485],{"title":79,"_path":449},{"title":453,"_path":454},"Circuit testing","/zksync-protocol/era-vm/circuits/circuits/circuit-testing",{"title":456,"_path":457},"CodeDecommitter","/zksync-protocol/era-vm/circuits/circuits/code-decommitter",{"title":459,"_path":460},"DemuxLogQueue","/zksync-protocol/era-vm/circuits/circuits/demux-log-queue",{"title":462,"_path":463},"ECRecover","/zksync-protocol/era-vm/circuits/circuits/ecrecover",{"title":465,"_path":466},"KeccakRoundFunction","/zksync-protocol/era-vm/circuits/circuits/keccak-round-function",{"title":468,"_path":469},"L1MessagesHasher","/zksync-protocol/era-vm/circuits/circuits/l1-messages-hasher",{"title":471,"_path":472},"LogSorter","/zksync-protocol/era-vm/circuits/circuits/log-sorter",{"title":474,"_path":475},"Main VM","/zksync-protocol/era-vm/circuits/circuits/main-vm",{"title":477,"_path":478},"RAMPermutation","/zksync-protocol/era-vm/circuits/circuits/ram-permutation",{"title":480,"_path":481},"Sha256RoundFunction","/zksync-protocol/era-vm/circuits/circuits/sha256-round-function",{"title":483,"_path":484},"StorageApplication","/zksync-protocol/era-vm/circuits/circuits/storage-application",{"title":486,"_path":487,"children":488},"Sorting and deduplicating","/zksync-protocol/era-vm/circuits/circuits/sorting",[489,490,493,496],{"title":79,"_path":487},{"title":491,"_path":492},"SortDecommitments","/zksync-protocol/era-vm/circuits/circuits/sorting/sort-decommitments",{"title":494,"_path":495},"StorageSorter","/zksync-protocol/era-vm/circuits/circuits/sorting/storage-sorter",{"title":471,"_path":497},"/zksync-protocol/era-vm/circuits/circuits/sorting/log-sorter",{"title":499,"_path":500},"Boojum gadgets","/zksync-protocol/era-vm/circuits/boojum-gadgets",{"title":502,"_path":503},"Boojum function - `check_if_satisfied`","/zksync-protocol/era-vm/circuits/boojum-function-check-if-satisfied",{"title":505,"_path":506,"children":507},"Compilers","/zksync-protocol/era-vm/compiler",[508],{"title":509,"_path":510,"children":511},"Compiler toolchain overview","/zksync-protocol/era-vm/compiler/toolchain",[512,513],{"title":509,"_path":510},{"title":514,"_path":515},"LLVM framework","/zksync-protocol/era-vm/compiler/toolchain/llvm",{"title":517,"_path":518,"children":519},"Differences from L1","/zksync-protocol/era-vm/differences",[520,523,526,529,532,535],{"title":521,"_path":522},"EVM instructions","/zksync-protocol/era-vm/differences/evm-instructions",{"title":524,"_path":525},"Nonces","/zksync-protocol/era-vm/differences/nonces",{"title":527,"_path":528},"Libraries","/zksync-protocol/era-vm/differences/libraries",{"title":530,"_path":531},"Precompiles","/zksync-protocol/era-vm/differences/pre-compiles",{"title":533,"_path":534},"Native AA vs EIP 4337","/zksync-protocol/era-vm/differences/native-vs-eip4337",{"title":536,"_path":537},"Contract deployment","/zksync-protocol/era-vm/differences/contract-deployment",{"title":539,"_path":540,"children":541},"EVM Bytecode Interpreter","/zksync-protocol/era-vm/evm-interpreter",[542,544,547,550,553,556,559,562],{"title":79,"_path":543},"/zksync-protocol/era-vm/evm-interpreter/overview",{"title":545,"_path":546},"EVM bytecode deployment and execution","/zksync-protocol/era-vm/evm-interpreter/deployment-execution",{"title":548,"_path":549},"EraVM ↔ EVM Contract Interactions","/zksync-protocol/era-vm/evm-interpreter/era-evm-interactions",{"title":551,"_path":552},"Differences Between the EVM Bytecode Interpreter and Ethereum","/zksync-protocol/era-vm/evm-interpreter/evm-differences",{"title":554,"_path":555},"Technical Architecture of the EVM Interpreter","/zksync-protocol/era-vm/evm-interpreter/technical-details",{"title":557,"_path":558},"EVM Gas Interpretation","/zksync-protocol/era-vm/evm-interpreter/evm-gas-interpretation",{"title":560,"_path":561},"Pre Deployed Contracts","/zksync-protocol/era-vm/evm-interpreter/pre-deployed-contracts",{"title":563,"_path":564},"EVM Bytecode Interpreter FAQ","/zksync-protocol/era-vm/evm-interpreter/faq",{"title":566,"_path":567,"children":568},"Account Abstraction","/zksync-protocol/era-vm/account-abstraction",[569,570,573,576,579,582],{"title":9,"_path":567},{"title":571,"_path":572},"Design","/zksync-protocol/era-vm/account-abstraction/design",{"title":574,"_path":575},"Paymasters","/zksync-protocol/era-vm/account-abstraction/paymasters",{"title":577,"_path":578},"Building smart accounts","/zksync-protocol/era-vm/account-abstraction/building-smart-accounts",{"title":580,"_path":581},"Signature validation","/zksync-protocol/era-vm/account-abstraction/signature-validation",{"title":583,"_path":584},"Extending EIP-4337","/zksync-protocol/era-vm/account-abstraction/extending-4337",{"title":586,"_path":587},"Upgrades and migrations","/zksync-protocol/upgrades-and-migrations",{"_path":135,"_dir":589,"_draft":590,"_partial":590,"_locale":591,"title":134,"description":592,"body":593,"_type":1274,"_id":1275,"_source":1276,"_file":1277,"_stem":1278,"_extension":1279,"sitemap":1280},"zksync-era",false,"","Reference page for legacy tooling used on ZKsync Era and other ZKsync chains powered by EraVM that older guides and search results may still mention.",{"type":594,"children":595,"toc":1258},"root",[596,618,628,635,646,651,664,735,748,766,775,811,853,880,888,893,898,933,938,965,971,983,995,1010,1016,1026,1031,1037,1042,1047,1061,1070,1088,1101,1107,1112,1163,1172,1177,1233,1247,1253],{"type":597,"tag":598,"props":599,"children":600},"element","p",{},[601,604,610,612,616],{"type":602,"value":603},"text","Before the ",{"type":597,"tag":605,"props":606,"children":608},"a",{"href":607},"/zksync-network/zksync-era/unique-features#evm-bytecode-interpreter",[609],{"type":602,"value":539},{"type":602,"value":611},"\nmade standard Ethereum toolchains work directly on ZKsync Era and other ZKsync\nchains powered by EraVM, several tools were built specifically for native EraVM\nworkflows. This page keeps a high-level reference to those tools so older\ndocumentation, repositories, and search results remain understandable.\nFor most new development on ZKsync Era and other ZKsync chains powered by\nEraVM, standard Ethereum tooling can now be used directly through the\n",{"type":597,"tag":605,"props":613,"children":614},{"href":607},[615],{"type":602,"value":539},{"type":602,"value":617},".",{"type":597,"tag":619,"props":620,"children":622},"callout",{"icon":621},"i-heroicons-information-circle",[623],{"type":597,"tag":598,"props":624,"children":625},{},[626],{"type":602,"value":627},"New ZKsync chains powered by ZKsync OS are not compatible with any of the tools below.",{"type":597,"tag":629,"props":630,"children":632},"h2",{"id":631},"eravm-specific-tools",[633],{"type":602,"value":634},"EraVM-specific tools",{"type":597,"tag":636,"props":637,"children":639},"h3",{"id":638},"hardhat-zksync",[640],{"type":597,"tag":641,"props":642,"children":644},"code",{"className":643},[],[645],{"type":602,"value":638},{"type":597,"tag":598,"props":647,"children":648},{},[649],{"type":602,"value":650},"The official Hardhat plugin suite for ZKsync Era and\nEraVM-powered ZKsync chains.\nIt was used to compile, deploy, verify, and upgrade contracts targeting native\nEraVM bytecode from Hardhat projects.",{"type":597,"tag":598,"props":652,"children":653},{},[654,656,662],{"type":602,"value":655},"The main entrypoint was ",{"type":597,"tag":641,"props":657,"children":659},{"className":658},[],[660],{"type":602,"value":661},"@matterlabs/hardhat-zksync",{"type":602,"value":663},", which bundled the plugin\nsuite for compilation, deployment, testing, and verification.",{"type":597,"tag":598,"props":665,"children":666},{},[667,669,674,676,682,684,690,692,698,699,705,706,712,713,719,720,726,728,734],{"type":602,"value":668},"The tooling included ",{"type":597,"tag":641,"props":670,"children":672},{"className":671},[],[673],{"type":602,"value":661},{"type":602,"value":675}," together with plugins such as\n",{"type":597,"tag":641,"props":677,"children":679},{"className":678},[],[680],{"type":602,"value":681},"@matterlabs/hardhat-zksync-solc",{"type":602,"value":683},", ",{"type":597,"tag":641,"props":685,"children":687},{"className":686},[],[688],{"type":602,"value":689},"@matterlabs/hardhat-zksync-vyper",{"type":602,"value":691},",\n",{"type":597,"tag":641,"props":693,"children":695},{"className":694},[],[696],{"type":602,"value":697},"@matterlabs/hardhat-zksync-deploy",{"type":602,"value":683},{"type":597,"tag":641,"props":700,"children":702},{"className":701},[],[703],{"type":602,"value":704},"@matterlabs/hardhat-zksync-verify",{"type":602,"value":691},{"type":597,"tag":641,"props":707,"children":709},{"className":708},[],[710],{"type":602,"value":711},"@matterlabs/hardhat-zksync-verify-vyper",{"type":602,"value":683},{"type":597,"tag":641,"props":714,"children":716},{"className":715},[],[717],{"type":602,"value":718},"@matterlabs/hardhat-zksync-upgradable",{"type":602,"value":691},{"type":597,"tag":641,"props":721,"children":723},{"className":722},[],[724],{"type":602,"value":725},"@matterlabs/hardhat-zksync-ethers",{"type":602,"value":727},", and ",{"type":597,"tag":641,"props":729,"children":731},{"className":730},[],[732],{"type":602,"value":733},"@matterlabs/hardhat-zksync-node",{"type":602,"value":617},{"type":597,"tag":598,"props":736,"children":737},{},[738,740,746],{"type":602,"value":739},"Because the suite extended standard Hardhat behavior, it could also replace or\nconflict with common plugins such as ",{"type":597,"tag":641,"props":741,"children":743},{"className":742},[],[744],{"type":602,"value":745},"@nomicfoundation/hardhat-ethers",{"type":602,"value":747},".\nMultichain projects could require additional care when combining it with\nOpenZeppelin upgrades tooling.",{"type":597,"tag":749,"props":750,"children":751},"ul",{},[752],{"type":597,"tag":753,"props":754,"children":755},"li",{},[756,758,765],{"type":602,"value":757},"Repository: ",{"type":597,"tag":605,"props":759,"children":763},{"href":760,"rel":761},"https://github.com/matter-labs/hardhat-zksync",[762],"nofollow",[764],{"type":602,"value":638},{"type":602,"value":617},{"type":597,"tag":636,"props":767,"children":769},{"id":768},"foundry-zksync",[770],{"type":597,"tag":641,"props":771,"children":773},{"className":772},[],[774],{"type":602,"value":768},{"type":597,"tag":598,"props":776,"children":777},{},[778,780,786,788,794,796,802,803,809],{"type":602,"value":779},"A specialized fork of Foundry for ZKsync Era and\nEraVM-powered ZKsync chains.\nIt extended ",{"type":597,"tag":641,"props":781,"children":783},{"className":782},[],[784],{"type":602,"value":785},"forge",{"type":602,"value":787}," and ",{"type":597,"tag":641,"props":789,"children":791},{"className":790},[],[792],{"type":602,"value":793},"cast",{"type":602,"value":795}," with ZKsync-aware compilation, deployment, and\ntesting workflows, including support for ",{"type":597,"tag":641,"props":797,"children":799},{"className":798},[],[800],{"type":602,"value":801},"zksolc",{"type":602,"value":683},{"type":597,"tag":641,"props":804,"children":806},{"className":805},[],[807],{"type":602,"value":808},"--zksync",{"type":602,"value":810}," execution, and\nother EraVM-specific behavior.",{"type":597,"tag":598,"props":812,"children":813},{},[814,816,822,824,830,832,838,839,845,846,852],{"type":602,"value":815},"The toolchain was typically installed with ",{"type":597,"tag":641,"props":817,"children":819},{"className":818},[],[820],{"type":602,"value":821},"foundryup-zksync",{"type":602,"value":823},".\nIt also shipped ",{"type":597,"tag":641,"props":825,"children":827},{"className":826},[],[828],{"type":602,"value":829},"anvil-zksync",{"type":602,"value":831}," for local development and debugging.\nTypical workflows used commands such as ",{"type":597,"tag":641,"props":833,"children":835},{"className":834},[],[836],{"type":602,"value":837},"forge build --zksync",{"type":602,"value":691},{"type":597,"tag":641,"props":840,"children":842},{"className":841},[],[843],{"type":602,"value":844},"forge test --zksync",{"type":602,"value":727},{"type":597,"tag":641,"props":847,"children":849},{"className":848},[],[850],{"type":602,"value":851},"forge create --zksync",{"type":602,"value":617},{"type":597,"tag":749,"props":854,"children":855},{},[856,867],{"type":597,"tag":753,"props":857,"children":858},{},[859,860,866],{"type":602,"value":757},{"type":597,"tag":605,"props":861,"children":864},{"href":862,"rel":863},"https://github.com/matter-labs/foundry-zksync",[762],[865],{"type":602,"value":768},{"type":602,"value":617},{"type":597,"tag":753,"props":868,"children":869},{},[870,872,879],{"type":602,"value":871},"Documentation: ",{"type":597,"tag":605,"props":873,"children":876},{"href":874,"rel":875},"https://foundry-book.zksync.io/",[762],[877],{"type":602,"value":878},"Foundry ZKsync Book",{"type":602,"value":617},{"type":597,"tag":636,"props":881,"children":882},{"id":829},[883],{"type":597,"tag":641,"props":884,"children":886},{"className":885},[],[887],{"type":602,"value":829},{"type":597,"tag":598,"props":889,"children":890},{},[891],{"type":602,"value":892},"The in-memory local node used for fast development on ZKsync\nEra and EraVM-powered ZKsync chains.\nIt supported quick local startup, pre-funded test accounts, network forking,\nverbose execution traces, and replaying remote transactions locally for debugging.",{"type":597,"tag":598,"props":894,"children":895},{},[896],{"type":602,"value":897},"It was the lightweight option for local testing.\nFor workflows that needed deeper Layer 1 and Layer 2 interaction, the Dockerized\nlocal setup was the more complete environment.",{"type":597,"tag":598,"props":899,"children":900},{},[901,903,908,910,915,917,923,925,931],{"type":602,"value":902},"The ",{"type":597,"tag":641,"props":904,"children":906},{"className":905},[],[907],{"type":602,"value":829},{"type":602,"value":909}," GitHub Action was used to integrate ",{"type":597,"tag":641,"props":911,"children":913},{"className":912},[],[914],{"type":602,"value":829},{"type":602,"value":916}," into\nCI/CD workflows for ZKsync Era and EraVM-powered ZKsync chains.\nIt was mainly used in GitHub Actions pipelines to start a local node in ",{"type":597,"tag":641,"props":918,"children":920},{"className":919},[],[921],{"type":602,"value":922},"run",{"type":602,"value":924},"\nor ",{"type":597,"tag":641,"props":926,"children":928},{"className":927},[],[929],{"type":602,"value":930},"fork",{"type":602,"value":932}," mode, then execute contract and integration tests against that\nenvironment.",{"type":597,"tag":598,"props":934,"children":935},{},[936],{"type":602,"value":937},"The action exposed configuration for the network, fork height, port, debug\noutput, target architecture, and log file handling.\nIt was a lightweight way to automate local EraVM testing in pull requests and\nother CI jobs.",{"type":597,"tag":749,"props":939,"children":940},{},[941,952],{"type":597,"tag":753,"props":942,"children":943},{},[944,945,951],{"type":602,"value":757},{"type":597,"tag":605,"props":946,"children":949},{"href":947,"rel":948},"https://github.com/matter-labs/anvil-zksync",[762],[950],{"type":602,"value":829},{"type":602,"value":617},{"type":597,"tag":753,"props":953,"children":954},{},[955,957,964],{"type":602,"value":956},"Marketplace: ",{"type":597,"tag":605,"props":958,"children":961},{"href":959,"rel":960},"https://github.com/marketplace/actions/anvil-zksync-action",[762],[962],{"type":602,"value":963},"anvil-zksync-action",{"type":602,"value":617},{"type":597,"tag":636,"props":966,"children":968},{"id":967},"dockerized-local-setup",[969],{"type":602,"value":970},"Dockerized local setup",{"type":597,"tag":598,"props":972,"children":973},{},[974,976,981],{"type":602,"value":975},"The Dockerized local setup provided a fuller local environment for ZKsync Era and\nEraVM-powered ZKsync chains than ",{"type":597,"tag":641,"props":977,"children":979},{"className":978},[],[980],{"type":602,"value":829},{"type":602,"value":982},".\nIt ran a Postgres database, a local Layer 1 node, and a ZKsync node together so\nyou could test end-to-end Layer 1 to Layer 2 flows.",{"type":597,"tag":598,"props":984,"children":985},{},[986,988,993],{"type":602,"value":987},"This setup was mainly used for integration scenarios that needed both chains present locally.\nIt was slower to start and heavier to operate than ",{"type":597,"tag":641,"props":989,"children":991},{"className":990},[],[992],{"type":602,"value":829},{"type":602,"value":994},", but it exposed a broader set of node behavior.",{"type":597,"tag":749,"props":996,"children":997},{},[998],{"type":597,"tag":753,"props":999,"children":1000},{},[1001,1002,1009],{"type":602,"value":757},{"type":597,"tag":605,"props":1003,"children":1006},{"href":1004,"rel":1005},"https://github.com/matter-labs/local-setup",[762],[1007],{"type":602,"value":1008},"local-setup",{"type":602,"value":617},{"type":597,"tag":636,"props":1011,"children":1013},{"id":1012},"pre-configured-rich-wallets",[1014],{"type":602,"value":1015},"Pre-configured rich wallets",{"type":597,"tag":598,"props":1017,"children":1018},{},[1019,1024],{"type":597,"tag":641,"props":1020,"children":1022},{"className":1021},[],[1023],{"type":602,"value":829},{"type":602,"value":1025}," and the Dockerized local setup used the same public,\npre-funded development wallets for local testing.\nUse these accounts only in local environments.\nNever use their private keys or mnemonics on mainnet or with real funds.",{"type":597,"tag":1027,"props":1028,"children":1030},"display-partial",{"path":1029},"/_partials/_rich-wallets",[],{"type":597,"tag":636,"props":1032,"children":1034},{"id":1033},"zksync-external-node",[1035],{"type":602,"value":1036},"ZKsync External Node",{"type":597,"tag":598,"props":1038,"children":1039},{},[1040],{"type":602,"value":1041},"The ZKsync External Node was a read-only replica of the main node for ZKsync\nEra and other EraVM-powered ZKsync chains.\nIt synchronized chain data from the main node, re-executed transactions\nlocally, and exposed a Web3 API for querying chain state without relying\ndirectly on the primary public endpoint.",{"type":597,"tag":598,"props":1043,"children":1044},{},[1045],{"type":602,"value":1046},"It was mainly used for archive-style access, local state verification, and\nrunning dedicated RPC infrastructure for applications and operators.\nIt could proxy Layer 2 transactions to the main node, but it could not produce\nblocks, generate proofs, or act as a consensus node.",{"type":597,"tag":749,"props":1048,"children":1049},{},[1050],{"type":597,"tag":753,"props":1051,"children":1052},{},[1053,1054],{"type":602,"value":871},{"type":597,"tag":605,"props":1055,"children":1058},{"href":1056,"rel":1057},"https://matter-labs.github.io/zksync-era/core/latest/guides/external-node/01_intro.html",[762],[1059],{"type":602,"value":1060},"ZKsync External Node guide",{"type":597,"tag":636,"props":1062,"children":1064},{"id":1063},"zksync-ethers",[1065],{"type":597,"tag":641,"props":1066,"children":1068},{"className":1067},[],[1069],{"type":602,"value":1063},{"type":597,"tag":598,"props":1071,"children":1072},{},[1073,1078,1080,1086],{"type":597,"tag":641,"props":1074,"children":1076},{"className":1075},[],[1077],{"type":602,"value":1063},{"type":602,"value":1079}," was the JavaScript SDK for ZKsync Era and other EraVM-powered\nZKsync chains.\nIt was designed to stay close to the ",{"type":597,"tag":641,"props":1081,"children":1083},{"className":1082},[],[1084],{"type":602,"value":1085},"ethers",{"type":602,"value":1087}," interface while adding support\nfor ZKsync-specific transaction fields and workflows.\nIt was commonly used for contract deployment, native account abstraction,\npaymaster integrations, and Layer 1 to Layer 2 bridging.",{"type":597,"tag":749,"props":1089,"children":1090},{},[1091],{"type":597,"tag":753,"props":1092,"children":1093},{},[1094,1095],{"type":602,"value":757},{"type":597,"tag":605,"props":1096,"children":1099},{"href":1097,"rel":1098},"https://github.com/zksync-sdk/zksync-ethers",[762],[1100],{"type":602,"value":1063},{"type":597,"tag":636,"props":1102,"children":1104},{"id":1103},"other-sdks",[1105],{"type":602,"value":1106},"Other SDKs",{"type":597,"tag":598,"props":1108,"children":1109},{},[1110],{"type":602,"value":1111},"Additional SDKs were also maintained for ZKsync Era and other EraVM-powered\nZKsync chains in Java, Go, Python, and Swift.\nThey provided helpers for contract deployment, native account abstraction,\npaymaster integrations, and bridging workflows.",{"type":597,"tag":749,"props":1113,"children":1114},{},[1115,1127,1139,1151],{"type":597,"tag":753,"props":1116,"children":1117},{},[1118,1120],{"type":602,"value":1119},"Java: ",{"type":597,"tag":605,"props":1121,"children":1124},{"href":1122,"rel":1123},"https://github.com/zksync-sdk/zksync2-java",[762],[1125],{"type":602,"value":1126},"zksync2-java",{"type":597,"tag":753,"props":1128,"children":1129},{},[1130,1132],{"type":602,"value":1131},"Go: ",{"type":597,"tag":605,"props":1133,"children":1136},{"href":1134,"rel":1135},"https://github.com/zksync-sdk/zksync2-go",[762],[1137],{"type":602,"value":1138},"zksync2-go",{"type":597,"tag":753,"props":1140,"children":1141},{},[1142,1144],{"type":602,"value":1143},"Python: ",{"type":597,"tag":605,"props":1145,"children":1148},{"href":1146,"rel":1147},"https://github.com/zksync-sdk/zksync2-python",[762],[1149],{"type":602,"value":1150},"zksync2-python",{"type":597,"tag":753,"props":1152,"children":1153},{},[1154,1156],{"type":602,"value":1155},"Swift: ",{"type":597,"tag":605,"props":1157,"children":1160},{"href":1158,"rel":1159},"https://github.com/zksync-sdk/zksync2-swift",[762],[1161],{"type":602,"value":1162},"zksync2-swift",{"type":597,"tag":636,"props":1164,"children":1166},{"id":1165},"zksync-cli",[1167],{"type":597,"tag":641,"props":1168,"children":1170},{"className":1169},[],[1171],{"type":602,"value":1165},{"type":597,"tag":598,"props":1173,"children":1174},{},[1175],{"type":602,"value":1176},"The all-in-one command-line tool for many workflows on ZKsync\nEra and EraVM-powered ZKsync chains.\nIt could scaffold projects, start local development environments, inspect\ntransactions, manage wallets, bridge assets, interact with contracts, and\nconfigure custom chains.",{"type":597,"tag":598,"props":1178,"children":1179},{},[1180,1182,1188,1189,1195,1196,1202,1203,1209,1210,1216,1217,1223,1225,1231],{"type":602,"value":1181},"Older guides may reference commands such as ",{"type":597,"tag":641,"props":1183,"children":1185},{"className":1184},[],[1186],{"type":602,"value":1187},"zksync-cli create",{"type":602,"value":691},{"type":597,"tag":641,"props":1190,"children":1192},{"className":1191},[],[1193],{"type":602,"value":1194},"zksync-cli dev",{"type":602,"value":683},{"type":597,"tag":641,"props":1197,"children":1199},{"className":1198},[],[1200],{"type":602,"value":1201},"zksync-cli wallet",{"type":602,"value":683},{"type":597,"tag":641,"props":1204,"children":1206},{"className":1205},[],[1207],{"type":602,"value":1208},"zksync-cli bridge",{"type":602,"value":691},{"type":597,"tag":641,"props":1211,"children":1213},{"className":1212},[],[1214],{"type":602,"value":1215},"zksync-cli contract",{"type":602,"value":683},{"type":597,"tag":641,"props":1218,"children":1220},{"className":1219},[],[1221],{"type":602,"value":1222},"zksync-cli transaction",{"type":602,"value":1224},", and\n",{"type":597,"tag":641,"props":1226,"children":1228},{"className":1227},[],[1229],{"type":602,"value":1230},"zksync-cli config chains",{"type":602,"value":1232},".\nIt was also used to bootstrap Hardhat-based starter projects and Docker-backed local environments.",{"type":597,"tag":749,"props":1234,"children":1235},{},[1236],{"type":597,"tag":753,"props":1237,"children":1238},{},[1239,1240,1246],{"type":602,"value":757},{"type":597,"tag":605,"props":1241,"children":1244},{"href":1242,"rel":1243},"https://github.com/matter-labs/zksync-cli",[762],[1245],{"type":602,"value":1165},{"type":602,"value":617},{"type":597,"tag":636,"props":1248,"children":1250},{"id":1249},"zksync-easy-on-ramp",[1251],{"type":602,"value":1252},"ZKsync Easy On-Ramp",{"type":597,"tag":598,"props":1254,"children":1255},{},[1256],{"type":602,"value":1257},"ZKsync Easy On-Ramp was a hosted service for buying ETH and ERC-20 tokens on\nZKsync Era with fiat payment methods such as cards, Apple Pay, Google Pay, and\nbank transfer.\nIt was mainly used as a lightweight purchase flow through the ZKsync Portal,\nwithout requiring a custom SDK integration or a separate bridge step.",{"title":591,"searchDepth":1259,"depth":1259,"links":1260},2,[1261],{"id":631,"depth":1259,"text":634,"children":1262},[1263,1265,1266,1267,1268,1269,1270,1271,1272,1273],{"id":638,"depth":1264,"text":638},3,{"id":768,"depth":1264,"text":768},{"id":829,"depth":1264,"text":829},{"id":967,"depth":1264,"text":970},{"id":1012,"depth":1264,"text":1015},{"id":1033,"depth":1264,"text":1036},{"id":1063,"depth":1264,"text":1063},{"id":1103,"depth":1264,"text":1106},{"id":1165,"depth":1264,"text":1165},{"id":1249,"depth":1264,"text":1252},"markdown","content:00.zksync-network:68.zksync-era:30.custom-tooling.md","content","00.zksync-network/68.zksync-era/30.custom-tooling.md","00.zksync-network/68.zksync-era/30.custom-tooling","md",{"loc":135},[1282,1284],{"_path":132,"title":131,"description":1283},"Learn about the features available on ZKsync Era and other ZKsync chains powered by EraVM, including native Account Abstraction, Paymasters, and the EVM Bytecode Interpreter",{"_path":138,"title":137,"description":1285},"Curated ecosystem links for ZKsync Era.",{"_path":1029,"_dir":1287,"_draft":590,"_partial":1288,"_locale":591,"title":1289,"description":591,"github":1290,"body":1291,"_type":1274,"_id":1722,"_source":1276,"_file":1723,"_stem":1724,"_extension":1279},"_partials",true,"Rich Wallets","https://github.com/matter-labs/local-setup/blob/main/rich-wallets.json",{"type":594,"children":1292,"toc":1720},[1293,1671,1714],{"type":597,"tag":1294,"props":1295,"children":1296},"drop-panel",{},[1297],{"type":597,"tag":1298,"props":1299,"children":1301},"panel",{"label":1300},"Rich wallets",[1302],{"type":597,"tag":1303,"props":1304,"children":1308},"pre",{"code":1305,"language":1306,"meta":591,"className":1307,"style":591},"----------------------------------------\nAddress #0:     0xBC989fDe9e54cAd2aB4392Af6dF60f04873A033A\nPrivate Key:    0x3d3cbc973389cb26f657686445bcc75662b415b656078503592ac8c1abb8810e\nMnemonic:       mass wild lava ripple clog cabbage witness shell unable tribe rubber enter\n----------------------------------------\nAddress #1:     0x55bE1B079b53962746B2e86d12f158a41DF294A6\nPrivate Key:    0x509ca2e9e6acf0ba086477910950125e698d4ea70fa6f63e000c5a22bda9361c\nMnemonic:       crumble clutch mammal lecture lazy broken nominee visit gentle gather gym erupt\n----------------------------------------\nAddress #2:     0xCE9e6063674DC585F6F3c7eaBe82B9936143Ba6C\nPrivate Key:    0x71781d3a358e7a65150e894264ccc594993fbc0ea12d69508a340bc1d4f5bfbc\nMnemonic:       illegal okay stereo tattoo between alien road nuclear blind wolf champion regular\n----------------------------------------\nAddress #3:     0xd986b0cB0D1Ad4CCCF0C4947554003fC0Be548E9\nPrivate Key:    0x379d31d4a7031ead87397f332aab69ef5cd843ba3898249ca1046633c0c7eefe\nMnemonic:       point donor practice wear alien abandon frozen glow they practice raven shiver\n----------------------------------------\nAddress #4:     0x87d6ab9fE5Adef46228fB490810f0F5CB16D6d04\nPrivate Key:    0x105de4e75fe465d075e1daae5647a02e3aad54b8d23cf1f70ba382b9f9bee839\nMnemonic:       giraffe organ club limb install nest journey client chunk settle slush copy\n----------------------------------------\nAddress #5:     0x78cAD996530109838eb016619f5931a03250489A\nPrivate Key:    0x7becc4a46e0c3b512d380ca73a4c868f790d1055a7698f38fb3ca2b2ac97efbb\nMnemonic:       awful organ version habit giraffe amused wire table begin gym pistol clean\n----------------------------------------\nAddress #6:     0xc981b213603171963F81C687B9fC880d33CaeD16\nPrivate Key:    0xe0415469c10f3b1142ce0262497fe5c7a0795f0cbfd466a6bfa31968d0f70841\nMnemonic:       exotic someone fall kitten salute nerve chimney enlist pair display over inside\n----------------------------------------\nAddress #7:     0x42F3dc38Da81e984B92A95CBdAAA5fA2bd5cb1Ba\nPrivate Key:    0x4d91647d0a8429ac4433c83254fb9625332693c848e578062fe96362f32bfe91\nMnemonic:       catch tragic rib twelve buffalo also gorilla toward cost enforce artefact slab\n----------------------------------------\nAddress #8:     0x64F47EeD3dC749d13e49291d46Ea8378755fB6DF\nPrivate Key:    0x41c9f9518aa07b50cb1c0cc160d45547f57638dd824a8d85b5eb3bf99ed2bdeb\nMnemonic:       arrange price fragile dinner device general vital excite penalty monkey major faculty\n----------------------------------------\nAddress #9:     0xe2b8Cb53a43a56d4d2AB6131C81Bd76B86D3AFe5\nPrivate Key:    0xb0680d66303a0163a19294f1ef8c95cd69a9d7902a4aca99c05f3e134e68a11a\nMnemonic:       increase pulp sing wood guilt cement satoshi tiny forum nuclear sudden thank\n----------------------------------------\n","plaintext","language-plaintext shiki shiki-themes github-light github-light github-dark",[1309],{"type":597,"tag":641,"props":1310,"children":1311},{"__ignoreMap":591},[1312,1323,1331,1339,1348,1356,1365,1374,1383,1391,1400,1409,1418,1426,1435,1444,1453,1461,1470,1479,1488,1496,1505,1514,1523,1531,1540,1549,1558,1566,1575,1584,1593,1601,1610,1619,1628,1636,1645,1654,1663],{"type":597,"tag":1313,"props":1314,"children":1317},"span",{"class":1315,"line":1316},"line",1,[1318],{"type":597,"tag":1313,"props":1319,"children":1320},{},[1321],{"type":602,"value":1322},"----------------------------------------\n",{"type":597,"tag":1313,"props":1324,"children":1325},{"class":1315,"line":1259},[1326],{"type":597,"tag":1313,"props":1327,"children":1328},{},[1329],{"type":602,"value":1330},"Address #0:     0xBC989fDe9e54cAd2aB4392Af6dF60f04873A033A\n",{"type":597,"tag":1313,"props":1332,"children":1333},{"class":1315,"line":1264},[1334],{"type":597,"tag":1313,"props":1335,"children":1336},{},[1337],{"type":602,"value":1338},"Private Key:    0x3d3cbc973389cb26f657686445bcc75662b415b656078503592ac8c1abb8810e\n",{"type":597,"tag":1313,"props":1340,"children":1342},{"class":1315,"line":1341},4,[1343],{"type":597,"tag":1313,"props":1344,"children":1345},{},[1346],{"type":602,"value":1347},"Mnemonic:       mass wild lava ripple clog cabbage witness shell unable tribe rubber enter\n",{"type":597,"tag":1313,"props":1349,"children":1351},{"class":1315,"line":1350},5,[1352],{"type":597,"tag":1313,"props":1353,"children":1354},{},[1355],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1357,"children":1359},{"class":1315,"line":1358},6,[1360],{"type":597,"tag":1313,"props":1361,"children":1362},{},[1363],{"type":602,"value":1364},"Address #1:     0x55bE1B079b53962746B2e86d12f158a41DF294A6\n",{"type":597,"tag":1313,"props":1366,"children":1368},{"class":1315,"line":1367},7,[1369],{"type":597,"tag":1313,"props":1370,"children":1371},{},[1372],{"type":602,"value":1373},"Private Key:    0x509ca2e9e6acf0ba086477910950125e698d4ea70fa6f63e000c5a22bda9361c\n",{"type":597,"tag":1313,"props":1375,"children":1377},{"class":1315,"line":1376},8,[1378],{"type":597,"tag":1313,"props":1379,"children":1380},{},[1381],{"type":602,"value":1382},"Mnemonic:       crumble clutch mammal lecture lazy broken nominee visit gentle gather gym erupt\n",{"type":597,"tag":1313,"props":1384,"children":1386},{"class":1315,"line":1385},9,[1387],{"type":597,"tag":1313,"props":1388,"children":1389},{},[1390],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1392,"children":1394},{"class":1315,"line":1393},10,[1395],{"type":597,"tag":1313,"props":1396,"children":1397},{},[1398],{"type":602,"value":1399},"Address #2:     0xCE9e6063674DC585F6F3c7eaBe82B9936143Ba6C\n",{"type":597,"tag":1313,"props":1401,"children":1403},{"class":1315,"line":1402},11,[1404],{"type":597,"tag":1313,"props":1405,"children":1406},{},[1407],{"type":602,"value":1408},"Private Key:    0x71781d3a358e7a65150e894264ccc594993fbc0ea12d69508a340bc1d4f5bfbc\n",{"type":597,"tag":1313,"props":1410,"children":1412},{"class":1315,"line":1411},12,[1413],{"type":597,"tag":1313,"props":1414,"children":1415},{},[1416],{"type":602,"value":1417},"Mnemonic:       illegal okay stereo tattoo between alien road nuclear blind wolf champion regular\n",{"type":597,"tag":1313,"props":1419,"children":1421},{"class":1315,"line":1420},13,[1422],{"type":597,"tag":1313,"props":1423,"children":1424},{},[1425],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1427,"children":1429},{"class":1315,"line":1428},14,[1430],{"type":597,"tag":1313,"props":1431,"children":1432},{},[1433],{"type":602,"value":1434},"Address #3:     0xd986b0cB0D1Ad4CCCF0C4947554003fC0Be548E9\n",{"type":597,"tag":1313,"props":1436,"children":1438},{"class":1315,"line":1437},15,[1439],{"type":597,"tag":1313,"props":1440,"children":1441},{},[1442],{"type":602,"value":1443},"Private Key:    0x379d31d4a7031ead87397f332aab69ef5cd843ba3898249ca1046633c0c7eefe\n",{"type":597,"tag":1313,"props":1445,"children":1447},{"class":1315,"line":1446},16,[1448],{"type":597,"tag":1313,"props":1449,"children":1450},{},[1451],{"type":602,"value":1452},"Mnemonic:       point donor practice wear alien abandon frozen glow they practice raven shiver\n",{"type":597,"tag":1313,"props":1454,"children":1456},{"class":1315,"line":1455},17,[1457],{"type":597,"tag":1313,"props":1458,"children":1459},{},[1460],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1462,"children":1464},{"class":1315,"line":1463},18,[1465],{"type":597,"tag":1313,"props":1466,"children":1467},{},[1468],{"type":602,"value":1469},"Address #4:     0x87d6ab9fE5Adef46228fB490810f0F5CB16D6d04\n",{"type":597,"tag":1313,"props":1471,"children":1473},{"class":1315,"line":1472},19,[1474],{"type":597,"tag":1313,"props":1475,"children":1476},{},[1477],{"type":602,"value":1478},"Private Key:    0x105de4e75fe465d075e1daae5647a02e3aad54b8d23cf1f70ba382b9f9bee839\n",{"type":597,"tag":1313,"props":1480,"children":1482},{"class":1315,"line":1481},20,[1483],{"type":597,"tag":1313,"props":1484,"children":1485},{},[1486],{"type":602,"value":1487},"Mnemonic:       giraffe organ club limb install nest journey client chunk settle slush copy\n",{"type":597,"tag":1313,"props":1489,"children":1491},{"class":1315,"line":1490},21,[1492],{"type":597,"tag":1313,"props":1493,"children":1494},{},[1495],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1497,"children":1499},{"class":1315,"line":1498},22,[1500],{"type":597,"tag":1313,"props":1501,"children":1502},{},[1503],{"type":602,"value":1504},"Address #5:     0x78cAD996530109838eb016619f5931a03250489A\n",{"type":597,"tag":1313,"props":1506,"children":1508},{"class":1315,"line":1507},23,[1509],{"type":597,"tag":1313,"props":1510,"children":1511},{},[1512],{"type":602,"value":1513},"Private Key:    0x7becc4a46e0c3b512d380ca73a4c868f790d1055a7698f38fb3ca2b2ac97efbb\n",{"type":597,"tag":1313,"props":1515,"children":1517},{"class":1315,"line":1516},24,[1518],{"type":597,"tag":1313,"props":1519,"children":1520},{},[1521],{"type":602,"value":1522},"Mnemonic:       awful organ version habit giraffe amused wire table begin gym pistol clean\n",{"type":597,"tag":1313,"props":1524,"children":1526},{"class":1315,"line":1525},25,[1527],{"type":597,"tag":1313,"props":1528,"children":1529},{},[1530],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1532,"children":1534},{"class":1315,"line":1533},26,[1535],{"type":597,"tag":1313,"props":1536,"children":1537},{},[1538],{"type":602,"value":1539},"Address #6:     0xc981b213603171963F81C687B9fC880d33CaeD16\n",{"type":597,"tag":1313,"props":1541,"children":1543},{"class":1315,"line":1542},27,[1544],{"type":597,"tag":1313,"props":1545,"children":1546},{},[1547],{"type":602,"value":1548},"Private Key:    0xe0415469c10f3b1142ce0262497fe5c7a0795f0cbfd466a6bfa31968d0f70841\n",{"type":597,"tag":1313,"props":1550,"children":1552},{"class":1315,"line":1551},28,[1553],{"type":597,"tag":1313,"props":1554,"children":1555},{},[1556],{"type":602,"value":1557},"Mnemonic:       exotic someone fall kitten salute nerve chimney enlist pair display over inside\n",{"type":597,"tag":1313,"props":1559,"children":1561},{"class":1315,"line":1560},29,[1562],{"type":597,"tag":1313,"props":1563,"children":1564},{},[1565],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1567,"children":1569},{"class":1315,"line":1568},30,[1570],{"type":597,"tag":1313,"props":1571,"children":1572},{},[1573],{"type":602,"value":1574},"Address #7:     0x42F3dc38Da81e984B92A95CBdAAA5fA2bd5cb1Ba\n",{"type":597,"tag":1313,"props":1576,"children":1578},{"class":1315,"line":1577},31,[1579],{"type":597,"tag":1313,"props":1580,"children":1581},{},[1582],{"type":602,"value":1583},"Private Key:    0x4d91647d0a8429ac4433c83254fb9625332693c848e578062fe96362f32bfe91\n",{"type":597,"tag":1313,"props":1585,"children":1587},{"class":1315,"line":1586},32,[1588],{"type":597,"tag":1313,"props":1589,"children":1590},{},[1591],{"type":602,"value":1592},"Mnemonic:       catch tragic rib twelve buffalo also gorilla toward cost enforce artefact slab\n",{"type":597,"tag":1313,"props":1594,"children":1596},{"class":1315,"line":1595},33,[1597],{"type":597,"tag":1313,"props":1598,"children":1599},{},[1600],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1602,"children":1604},{"class":1315,"line":1603},34,[1605],{"type":597,"tag":1313,"props":1606,"children":1607},{},[1608],{"type":602,"value":1609},"Address #8:     0x64F47EeD3dC749d13e49291d46Ea8378755fB6DF\n",{"type":597,"tag":1313,"props":1611,"children":1613},{"class":1315,"line":1612},35,[1614],{"type":597,"tag":1313,"props":1615,"children":1616},{},[1617],{"type":602,"value":1618},"Private Key:    0x41c9f9518aa07b50cb1c0cc160d45547f57638dd824a8d85b5eb3bf99ed2bdeb\n",{"type":597,"tag":1313,"props":1620,"children":1622},{"class":1315,"line":1621},36,[1623],{"type":597,"tag":1313,"props":1624,"children":1625},{},[1626],{"type":602,"value":1627},"Mnemonic:       arrange price fragile dinner device general vital excite penalty monkey major faculty\n",{"type":597,"tag":1313,"props":1629,"children":1631},{"class":1315,"line":1630},37,[1632],{"type":597,"tag":1313,"props":1633,"children":1634},{},[1635],{"type":602,"value":1322},{"type":597,"tag":1313,"props":1637,"children":1639},{"class":1315,"line":1638},38,[1640],{"type":597,"tag":1313,"props":1641,"children":1642},{},[1643],{"type":602,"value":1644},"Address #9:     0xe2b8Cb53a43a56d4d2AB6131C81Bd76B86D3AFe5\n",{"type":597,"tag":1313,"props":1646,"children":1648},{"class":1315,"line":1647},39,[1649],{"type":597,"tag":1313,"props":1650,"children":1651},{},[1652],{"type":602,"value":1653},"Private Key:    0xb0680d66303a0163a19294f1ef8c95cd69a9d7902a4aca99c05f3e134e68a11a\n",{"type":597,"tag":1313,"props":1655,"children":1657},{"class":1315,"line":1656},40,[1658],{"type":597,"tag":1313,"props":1659,"children":1660},{},[1661],{"type":602,"value":1662},"Mnemonic:       increase pulp sing wood guilt cement satoshi tiny forum nuclear sudden thank\n",{"type":597,"tag":1313,"props":1664,"children":1666},{"class":1315,"line":1665},41,[1667],{"type":597,"tag":1313,"props":1668,"children":1669},{},[1670],{"type":602,"value":1322},{"type":597,"tag":1294,"props":1672,"children":1673},{},[1674],{"type":597,"tag":1298,"props":1675,"children":1677},{"label":1676},"Same mnemonic rich wallets",[1678,1698,1706],{"type":597,"tag":598,"props":1679,"children":1680},{},[1681,1683,1689,1690,1696],{"type":602,"value":1682},"The following accounts were derived from the same mnemonic phrase following BIP-44,\nby appending different indices to the path (e.g., ",{"type":597,"tag":641,"props":1684,"children":1686},{"className":1685},[],[1687],{"type":602,"value":1688},"m/44'/60'/0'/0/0",{"type":602,"value":683},{"type":597,"tag":641,"props":1691,"children":1693},{"className":1692},[],[1694],{"type":602,"value":1695},"m/44'/60'/0'/0/1",{"type":602,"value":1697},", etc.).",{"type":597,"tag":1303,"props":1699,"children":1701},{"code":1700},"Mnemonic: stuff slice staff easily soup parent arm payment cotton trade scatter struggle\n",[1702],{"type":597,"tag":641,"props":1703,"children":1704},{"__ignoreMap":591},[1705],{"type":602,"value":1700},{"type":597,"tag":1303,"props":1707,"children":1709},{"code":1708},"----------------------------------------\nAddress #10:    0x36615Cf349d7F6344891B1e7CA7C72883F5dc049\nPrivate Key:    0x7726827caac94a7f9e1b160f7ea819f172f7b6f9d2a97f992c38edeab82d4110\n----------------------------------------\nAddress #11:    0xa61464658AfeAf65CccaaFD3a512b69A83B77618\nPrivate Key:    0xac1e735be8536c6534bb4f17f06f6afc73b2b5ba84ac2cfb12f7461b20c0bbe3\n----------------------------------------\nAddress #12:    0x0D43eB5B8a47bA8900d84AA36656c92024e9772e\nPrivate Key:    0xd293c684d884d56f8d6abd64fc76757d3664904e309a0645baf8522ab6366d9e\n----------------------------------------\nAddress #13:    0xA13c10C0D5bd6f79041B9835c63f91de35A15883\nPrivate Key:    0x850683b40d4a740aa6e745f889a6fdc8327be76e122f5aba645a5b02d0248db8\n----------------------------------------\nAddress #14:    0x8002cD98Cfb563492A6fB3E7C8243b7B9Ad4cc92\nPrivate Key:    0xf12e28c0eb1ef4ff90478f6805b68d63737b7f33abfa091601140805da450d93\n----------------------------------------\nAddress #15:    0x4F9133D1d3F50011A6859807C837bdCB31Aaab13\nPrivate Key:    0xe667e57a9b8aaa6709e51ff7d093f1c5b73b63f9987e4ab4aa9a5c699e024ee8\n----------------------------------------\nAddress #16:    0xbd29A1B981925B94eEc5c4F1125AF02a2Ec4d1cA\nPrivate Key:    0x28a574ab2de8a00364d5dd4b07c4f2f574ef7fcc2a86a197f65abaec836d1959\n----------------------------------------\nAddress #17:    0xedB6F5B4aab3dD95C7806Af42881FF12BE7e9daa\nPrivate Key:    0x74d8b3a188f7260f67698eb44da07397a298df5427df681ef68c45b34b61f998\n----------------------------------------\nAddress #18:    0xe706e60ab5Dc512C36A4646D719b889F398cbBcB\nPrivate Key:    0xbe79721778b48bcc679b78edac0ce48306a8578186ffcb9f2ee455ae6efeace1\n----------------------------------------\nAddress #19:    0xE90E12261CCb0F3F7976Ae611A29e84a6A85f424\nPrivate Key:    0x3eb15da85647edd9a1159a4a13b9e7c56877c4eb33f614546d4db06a51868b1c\n----------------------------------------\n",[1710],{"type":597,"tag":641,"props":1711,"children":1712},{"__ignoreMap":591},[1713],{"type":602,"value":1708},{"type":597,"tag":1715,"props":1716,"children":1717},"style",{},[1718],{"type":602,"value":1719},"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":591,"searchDepth":1259,"depth":1259,"links":1721},[],"content:_partials:_rich-wallets.md","_partials/_rich-wallets.md","_partials/_rich-wallets",1780060014901]