{"version":1,"pages":[{"id":"ZrE4QW9sQs8bkVKxjqtD","title":"Welcome","pathname":"/protocol","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"}]},{"id":"CqmsbyMXZ4MUmhynAjYn","title":"FHE on blockchain","pathname":"/protocol/protocol/overview","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Protocol"}]},{"id":"xVmDwwOg0cFAL0qTckHg","title":"FHE library","pathname":"/protocol/protocol/overview/library","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Protocol"},{"label":"FHE on blockchain"}]},{"id":"yKWG8XuFQUaQcPdBho0H","title":"Host contracts","pathname":"/protocol/protocol/overview/hostchain","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Protocol"},{"label":"FHE on blockchain"}]},{"id":"JxfqaFfA7hW30TDuzCyq","title":"Coprocessor","pathname":"/protocol/protocol/overview/coprocessor","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Protocol"},{"label":"FHE on blockchain"}]},{"id":"tWAUrVYNRPxmUUbOxZGa","title":"Gateway","pathname":"/protocol/protocol/overview/gateway","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Protocol"},{"label":"FHE on blockchain"}]},{"id":"GVZPhcIqCAa5rSSLv9Sg","title":"KMS","pathname":"/protocol/protocol/overview/kms","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Protocol"},{"label":"FHE on blockchain"}]},{"id":"dRttnr3qBqcotm9to7Hs","title":"Roadmap","pathname":"/protocol/protocol/roadmap","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Protocol"}]},{"id":"HfPxLQ3zjpuXCYtYGE5b","title":"Contributing","pathname":"/protocol/developer/contribute","siteSpaceId":"sitesp_bFaN7","breadcrumbs":[{"label":"Overview"},{"label":"Developer"}]},{"id":"ZxvUWreBlzP5dm6dqdbC","title":"Zama Confidential Blockchain Protocol  Litepaper","pathname":"/protocol/zama-protocol-litepaper","siteSpaceId":"sitesp_5jIrV","description":"","breadcrumbs":[{"label":"Zama Protocol Litepaper"}]},{"id":"ZxvUWreBlzP5dm6dqdbC","title":"Zama 보안 블록체인 프로토콜 라이트 페이퍼","pathname":"/protocol/zama-protocol-litepaper/ko","siteSpaceId":"sitesp_qTFTd","breadcrumbs":[{"label":"Zama Protocol Litepaper"}]},{"id":"SrkGl53gQJZotngrBNER","title":"Zama机密区块链协议简版白皮书","pathname":"/protocol/zama-protocol-litepaper/zh","siteSpaceId":"sitesp_dOoOk","breadcrumbs":[{"label":"Zama Protocol Litepaper"}]},{"id":"DpJN5bZVozvCZmr7Y4n7","title":"Zama 機密性ブロックチェーン・プロトコル ライトペーパー","pathname":"/protocol/zama-protocol-litepaper/ja","siteSpaceId":"sitesp_6Hdwi","breadcrumbs":[{"label":"Zama Protocol Litepaper"}]},{"id":"P8Bjv5UqjsMhVdemHtfQ","title":"Zama Gizli Blockchain Protokolü Litepaper’ı","pathname":"/protocol/zama-protocol-litepaper/tr","siteSpaceId":"sitesp_VM404","breadcrumbs":[{"label":"Zama Protocol Litepaper"}]},{"id":"zhTCHd16Ks8buC4x4rYw","title":"Protocolo Blockchain Confidencial de Zama - Litepaper","pathname":"/protocol/zama-protocol-litepaper/es","siteSpaceId":"sitesp_KYP3q","breadcrumbs":[{"label":"Zama Protocol Litepaper"}]},{"id":"Rb8tqQMvywkuxDTUB4XU","title":"Overview","pathname":"/protocol/protocol-apps","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"JoRn6ZegHw6D0gjTUadf","title":"Apps","pathname":"/protocol/protocol-apps/apps","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"dNIokWDxw1MYaJYBCLXR","title":"Zama Token","pathname":"/protocol/protocol-apps/zama-token","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"vrI9UxKOPUk763FjJaJR","title":"Staking","pathname":"/protocol/protocol-apps/staking","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"3Iy3JCjLtNJqwb9fYlCp","title":"Confidential Tokens","pathname":"/protocol/protocol-apps/confidential-tokens","siteSpaceId":"sitesp_ieFOb","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"A56miD589CqgirmT8b2F","title":"Confidential wrapper","pathname":"/protocol/protocol-apps/confidential-tokens/confidential-wrapper","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Confidential Tokens"}]},{"id":"Xr0RDqPxVCCbUHsPyFNX","title":"Registry","pathname":"/protocol/protocol-apps/confidential-tokens/wrapper-registry","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Confidential Tokens"}]},{"id":"tUybLF8MC9vgugM9yv5L","title":"Governance","pathname":"/protocol/protocol-apps/governance","siteSpaceId":"sitesp_ieFOb","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"94TULfSqaih4kkjoxqJr","title":"Governance overview","pathname":"/protocol/protocol-apps/governance/governance","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Governance"}]},{"id":"1lWb8mWDJd4Tsj118Ygq","title":"Pausing","pathname":"/protocol/protocol-apps/governance/pausing","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Governance"}]},{"id":"56GX2gjo1VLycvVjNpcy","title":"Chains","pathname":"/protocol/protocol-apps/chains","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"JYa9pELW7jSjfgRjmGyi","title":"Contract addresses","pathname":"/protocol/protocol-apps/addresses","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"}]},{"id":"A6zu73ALLKvHAhngGigE","title":"Mainnet","pathname":"/protocol/protocol-apps/addresses/mainnet","siteSpaceId":"sitesp_ieFOb","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"}]},{"id":"NvLEgzzKas1XPLNGkgoe","title":"Ethereum","pathname":"/protocol/protocol-apps/addresses/mainnet/ethereum","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"},{"label":"Mainnet"}]},{"id":"gH91yQnFHmpdMiovvIQn","title":"Zama Gateway","pathname":"/protocol/protocol-apps/addresses/mainnet/gateway","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"},{"label":"Mainnet"}]},{"id":"B4fFX2dKYKHKaqGmQmCl","title":"BSC","pathname":"/protocol/protocol-apps/addresses/mainnet/bsc","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"},{"label":"Mainnet"}]},{"id":"qlM5T54bf03Oj3edAskE","title":"HyperEVM","pathname":"/protocol/protocol-apps/addresses/mainnet/hyper_evm","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"},{"label":"Mainnet"}]},{"id":"fRNM1LwEI8zZqm424Ahe","title":"Solana","pathname":"/protocol/protocol-apps/addresses/mainnet/solana","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"},{"label":"Mainnet"}]},{"id":"LhxyYbMNQydXIt1WszIm","title":"Testnet","pathname":"/protocol/protocol-apps/addresses/testnet","siteSpaceId":"sitesp_ieFOb","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"}]},{"id":"gG5CRhN4uHJ0dgRcxygc","title":"Sepolia","pathname":"/protocol/protocol-apps/addresses/testnet/sepolia","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"},{"label":"Testnet"}]},{"id":"TxG2kNNCM60kDtfYgoSW","title":"Zama Gateway","pathname":"/protocol/protocol-apps/addresses/testnet/gateway","siteSpaceId":"sitesp_ieFOb","description":"","breadcrumbs":[{"label":"Protocol Apps"},{"label":"Contract addresses"},{"label":"Testnet"}]},{"id":"TsWzB4dm74kbrJ3xbnwJ","title":"README","pathname":"/protocol/solidity-guides/v0.10","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"5tKQcwZVGw0Yw7ZtxQeE","title":"Contributor Covenant Code of Conduct","pathname":"/protocol/solidity-guides/v0.10/code_of_conduct","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"07M60pfGyvtw6jB1yyF8","title":"Security","pathname":"/protocol/solidity-guides/v0.10/security","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"rpXCK7MuU5X3Sx1FTe90","title":"coprocessor","pathname":"/protocol/solidity-guides/v0.10/coprocessor","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"FEXo8FOOtKxH4KSXxIrU","title":"Welcome to FHEVM backend","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs","siteSpaceId":"sitesp_gPLHZ","description":"The FHEVM backend allows users to run their own L1 or coprocessor with FHEVM technology. It enables confidential smart contracts on the EVM using FHE.","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"}]},{"id":"k8FYfsokQmybCKL5bm0C","title":"Table of contents","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/summary","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"}]},{"id":"548cQoxOOZvimG60vU8s","title":"developer","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/developer","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"}]},{"id":"c2GsRN12P3xLTSRvIi5r","title":"Contributing","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/developer/contribute","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"developer"}]},{"id":"dn0FfdKjGiHsOcMItVZH","title":"Roadmap","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/developer/roadmap","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"developer"}]},{"id":"JAb5R9AQiHnsvA4yK2OI","title":"fundamentals","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"}]},{"id":"Pm4xxa4jwS4nHGnN82Zg","title":"Glossary","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/glossary","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"}]},{"id":"hVJwnzkBtgKluuBn56UM","title":"Overview","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/overview","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"}]},{"id":"LlDdNCEGhw81EH2J5qyR","title":"fhevm","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"}]},{"id":"iXAZey1wbLcAD3GmqKQN","title":"contracts","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/contracts","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"}]},{"id":"ZlcbIqi4CPsA47OZ1BtP","title":"Inputs","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/inputs","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"}]},{"id":"rB8tFtobjssqYYJETU06","title":"Symbolic Execution","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/symbolic_execution","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"}]},{"id":"yjJhTa34wMhLf00V8a1q","title":"coprocessor","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/coprocessor","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"}]},{"id":"0h4XX9I8HHVUXVMKTHxy","title":"Architecture","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/coprocessor/architecture","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"},{"label":"coprocessor"}]},{"id":"i80eXaBKzDHfftvSbbEC","title":"FHE Computation","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/coprocessor/fhe_computation","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"},{"label":"coprocessor"}]},{"id":"4YseOiYVwXpEbPWn7QPs","title":"native","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/native","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"}]},{"id":"UKxC4s3NqbizomTdo9Pd","title":"Architecture","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/native/architecture","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"},{"label":"native"}]},{"id":"jVoyfafAhd3HZySo9LoF","title":"FHE Computation","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/native/fhe_computation","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"},{"label":"native"}]},{"id":"DJFPJ7qDjCsRjgr8kH38","title":"Genesis","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/native/genesis","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"},{"label":"native"}]},{"id":"N4gCvEWvgZ1L1MO90bkK","title":"Storage","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/fhevm/native/storage","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"fhevm"},{"label":"native"}]},{"id":"a8a6YInc2i63wQiHRPXl","title":"gateway","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/gateway","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"}]},{"id":"bZfoB8U84ZKAYQvM37zu","title":"Decryption and reencryption request on TKMS","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/gateway/asc","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"gateway"}]},{"id":"YKkqvQ7tIJbfTvjZbVLU","title":"Decryption","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/gateway/decryption","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"gateway"}]},{"id":"esbWgJYUvuL8YaFdYaNI","title":"Inclusion Proof","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/gateway/proof","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"gateway"}]},{"id":"Pp4FdnmffZ0Zbnniy7r4","title":"Reencryption","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/gateway/reencryption","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"gateway"}]},{"id":"bckk7J3sd76dh1OVdBIu","title":"tkms","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/tkms","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"}]},{"id":"caQbAs05x3SSKqUyw66m","title":"Architecture","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/tkms/architecture","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"tkms"}]},{"id":"lUO90LL3bNcuE4tydrEO","title":"Blockchain","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/tkms/blockchain","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"tkms"}]},{"id":"V2GWedXOwoOeVN2It6Pl","title":"Centralized","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/tkms/centralized","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"tkms"}]},{"id":"tmWGxV2vCUlFIkIQbnfQ","title":"Threshold","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/tkms/threshold","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"tkms"}]},{"id":"fol3lnzmGYJcodM7oJtY","title":"Zama's TKMS","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/fundamentals/tkms/zama","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"fundamentals"},{"label":"tkms"}]},{"id":"2iEcWnbikOam1bQqwQsS","title":"getting_started","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"}]},{"id":"ZETCiR6D48WBrHJVz06J","title":"Quick start","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/quick_start","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"}]},{"id":"r34kFUjnJUpQp2lK6Fnl","title":"gateway","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/gateway","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"}]},{"id":"5whWuv7DFmJqyM3wJ5ZG","title":"Configuration","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/gateway/configuration","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"gateway"}]},{"id":"OksbzNBT16FNPjKMBo0P","title":"tkms","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/tkms","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"}]},{"id":"sFxwbaeELc66gL3ftE8L","title":"Application Smart Contract","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/tkms/contract","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"tkms"}]},{"id":"ge8mDJyvpfSyCUcuyWGZ","title":"Request the creation of a new private key","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/tkms/create","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"tkms"}]},{"id":"XZ0qjSAjHCput447xC0O","title":"Run a KMS","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/tkms/run","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"tkms"}]},{"id":"N74H8PnOiEogRNsIo0sK","title":"Use Zama's TKMS","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/tkms/zama","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"tkms"}]},{"id":"NQ8tvNN57n6slviJxN06","title":"fhevm","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"}]},{"id":"neGfXkOiOEvgkqn058Mz","title":"coprocessor","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm/coprocessor","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"fhevm"}]},{"id":"uEAzq80aGnqPG4z2caHV","title":"Configuration","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm/coprocessor/configuration","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"fhevm"},{"label":"coprocessor"}]},{"id":"xgVnlpllglLxd7ujC3fd","title":"Coprocessor Backend","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm/coprocessor/coprocessor_backend","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"fhevm"},{"label":"coprocessor"}]},{"id":"BviD3Q3n9MVRQo90e9Qj","title":"native","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm/native","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"fhevm"}]},{"id":"yR8VSmzC2ac3sJQDhKNd","title":"Configuration","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm/native/configuration","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"fhevm"},{"label":"native"}]},{"id":"iFhgAyEMq9VQKBZ3oqmv","title":"Executor","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm/native/executor","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"fhevm"},{"label":"native"}]},{"id":"M73PQhoXjM7w1mBKsIzV","title":"Integration","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/getting_started/fhevm/native/geth","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"getting_started"},{"label":"fhevm"},{"label":"native"}]},{"id":"Jx1WOWV1OK7Do3wnzAH8","title":"guides","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/guides","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"}]},{"id":"R7xd2yc76LtdpWHGibo0","title":"Run a benchmark","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/guides/benchmark","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"guides"}]},{"id":"wEaVfP4xBLlYoxnj4f6T","title":"Node and gateway hardware","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/guides/hardware","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"guides"}]},{"id":"4RQyvunUkuQFHXEeR4GM","title":"references","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/references","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"}]},{"id":"Ga43QOdVifqZfzOAZZHI","title":"FHEVM API specifications","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/references/fhevm_api","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"references"}]},{"id":"OWmvYaJz0HUPy5OLInUE","title":"Gateway API Specifications","pathname":"/protocol/solidity-guides/v0.10/coprocessor/docs/references/gateway_api","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"Welcome to FHEVM backend"},{"label":"references"}]},{"id":"TTnnDrIDYMDptr7hUbTQ","title":"fhevm-engine","pathname":"/protocol/solidity-guides/v0.10/coprocessor/fhevm-engine","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"}]},{"id":"1HZ0w3mdwYBQxH8MJFcw","title":"Gateway Listener","pathname":"/protocol/solidity-guides/v0.10/coprocessor/fhevm-engine/gw-listener","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"fhevm-engine"}]},{"id":"phlW15CqT5iKe3QE4WOw","title":"fhEVM-Listener","pathname":"/protocol/solidity-guides/v0.10/coprocessor/fhevm-engine/host-listener","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"fhevm-engine"}]},{"id":"k35qB1y0BvKkSKeyIkc9","title":"Switch-and-Squash executor","pathname":"/protocol/solidity-guides/v0.10/coprocessor/fhevm-engine/sns-worker","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"fhevm-engine"}]},{"id":"zEq5XKV8TsP6RQVOlLMF","title":"Coprocessor stress test generator","pathname":"/protocol/solidity-guides/v0.10/coprocessor/fhevm-engine/stress-test-generator","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"fhevm-engine"}]},{"id":"lpmzCSrEg6tUWt9kHkGM","title":"Fhevm Coprocessor","pathname":"/protocol/solidity-guides/v0.10/coprocessor/fhevm-engine/tfhe-worker","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"coprocessor"},{"label":"fhevm-engine"}]},{"id":"2Pn7fyfvxM6szNRmGdNR","title":"gateway-contracts","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"e7wIP4TLScFF3PZecBxG","title":"Welcome to fhevm Gateway","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs","siteSpaceId":"sitesp_gPLHZ","description":"The fhevm Gateway.","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"}]},{"id":"JCZbuPujlkGzfOKzrt8Q","title":"Table of contents","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/summary","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"}]},{"id":"ULq4oI9cletftVLeqDp2","title":"references","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/references","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"}]},{"id":"ZGFcHRzcrz9b4fhw7tqg","title":"Smart Contract selectors","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/references/selectors","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"references"}]},{"id":"LaDvodSCRF2GSSj1s0as","title":"getting-started","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"}]},{"id":"aducRG7IJNYwD7Czz4yZ","title":"contracts","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/contracts","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"}]},{"id":"ogpq4H01qQMYvyhndbNg","title":"GatewayConfig contract","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/contracts/gateway_config","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"contracts"}]},{"id":"rWfvzd5Wo8ETX6qKpxZ6","title":"KMSGeneration contract","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/contracts/kms_generation","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"contracts"}]},{"id":"7QjqBOvKl1D1qq4qEGZi","title":"PauserSet contract","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/contracts/pauser_set","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"contracts"}]},{"id":"kEy4g5vvRj9zO32xXZdV","title":"deployment","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/deployment","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"}]},{"id":"yceZZkl1RjfN6ngDPVck","title":"Deploy contracts in Docker","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/deployment/docker_deploy","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"deployment"}]},{"id":"IYjPEWSZag9Dn1qFbocb","title":"Environment variables","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/deployment/env_variables","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"deployment"}]},{"id":"wdXHvByGSPsvdD6PAUJz","title":"Deploy contracts locally","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/deployment/local_deploy","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"deployment"}]},{"id":"ZGtshuU0piVq7oVv32MI","title":"pausing","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/pausing","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"}]},{"id":"iuBUx1yMv4nFdZlnF4Hs","title":"Environment variables","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/pausing/env_variables","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"pausing"}]},{"id":"JVjfCqoxS3yN1YMxMFoG","title":"Pausing mechanism","pathname":"/protocol/solidity-guides/v0.10/gateway-contracts/docs/getting-started/pausing/pausing","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"gateway-contracts"},{"label":"Welcome to fhevm Gateway"},{"label":"getting-started"},{"label":"pausing"}]},{"id":"P3fvC4smtDvHFMMBZ9BL","title":"host-contracts","pathname":"/protocol/solidity-guides/v0.10/host-contracts","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"v65y3VBgQC34rNdXEybv","title":"kms-connector","pathname":"/protocol/solidity-guides/v0.10/kms-connector","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"uLNYpGzFSyJrXfiQqquS","title":"docs","pathname":"/protocol/solidity-guides/v0.10/kms-connector/docs","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"kms-connector"}]},{"id":"xSaCmZVJu6mXufItfknX","title":"KMS Connector Architecture","pathname":"/protocol/solidity-guides/v0.10/kms-connector/docs/architecture","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"kms-connector"},{"label":"docs"}]},{"id":"g2jbcD3hgzzZAOajG8Q8","title":"library-solidity","pathname":"/protocol/solidity-guides/v0.10/library-solidity","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"e4Nc0d3WHmE8MzkAKmEK","title":"Security","pathname":"/protocol/solidity-guides/v0.10/library-solidity/security","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"library-solidity"}]},{"id":"kiFa2b18vREWgaaCZlqu","title":"codegen","pathname":"/protocol/solidity-guides/v0.10/library-solidity/codegen","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"library-solidity"}]},{"id":"4sGr3BsclBASlK98YFAj","title":"test-suite","pathname":"/protocol/solidity-guides/v0.10/test-suite","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"9QZiLagJGboxpQkxCzDP","title":"Changelog","pathname":"/protocol/solidity-guides/v0.10/test-suite/changelog","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"test-suite"}]},{"id":"Dob4YAn4AjF5ngKQwqNp","title":"Sample Hardhat Project","pathname":"/protocol/solidity-guides/v0.10/test-suite/e2e","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"test-suite"}]},{"id":"fkSVYiB2Qs9yBQvAgMnC","title":"Gateway Stress-Test Tool","pathname":"/protocol/solidity-guides/v0.10/test-suite/gateway-stress","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"test-suite"}]},{"id":"OwW3rIIb53nFecy2y6I4","title":".github","pathname":"/protocol/solidity-guides/v0.10/.github","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"F96Fapt9PPvaWnzeSToq","title":"ISSUE_TEMPLATE","pathname":"/protocol/solidity-guides/v0.10/.github/issue_template","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":".github"}]},{"id":"X8UFNt6xLuJIXSyzwL89","title":"docs(<category>): short description","pathname":"/protocol/solidity-guides/v0.10/.github/issue_template/documentation-issue","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":".github"},{"label":"ISSUE_TEMPLATE"}]},{"id":"YzwIbQsVVq9xnyZolWP0","title":"charts","pathname":"/protocol/solidity-guides/v0.10/charts","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"tbie09fYU46euvsBKV1O","title":"kms-connector","pathname":"/protocol/solidity-guides/v0.10/charts/kms-connector","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"charts"}]},{"id":"n6yHkeK9t5VimpP4CmtS","title":"docs","pathname":"/protocol/solidity-guides/v0.10/docs","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"OKfcpN9eQbMjFuBY617a","title":"examples","pathname":"/protocol/solidity-guides/v0.10/docs/examples","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"}]},{"id":"R4Tk6FHHbmPpZ035ZGfT","title":"SUMMARY","pathname":"/protocol/solidity-guides/v0.10/docs/examples/summary","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"wtY6xZZQNL93u4Z2qvJp","title":"fhe-counter","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fhe-counter","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"jmoj9EF9iZOFQt3tjt56","title":"fhe-encrypt-multiple-value","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fhe-encrypt-multiple-value","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"aitanco7Dv5XmKaOcr9K","title":"fhe-encrypt-multiple-values","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fhe-encrypt-multiple-values","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"OFjOgNcQEXZ4ph9ges94","title":"fhe-encrypt-single-value","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fhe-encrypt-single-value","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"be0rmqcHJ6VjCwJudO73","title":"fhe-user-decrypt-multiple-values","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fhe-user-decrypt-multiple-values","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"Os3xreyCyehfgrVqeefH","title":"fhe-user-decrypt-single-value","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fhe-user-decrypt-single-value","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"jXtaQXXqtMF0ggqmNkjo","title":"fheadd","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fheadd","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"sxctA4nBZHAswyJ3yyzB","title":"fheifthenelse","pathname":"/protocol/solidity-guides/v0.10/docs/examples/fheifthenelse","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"qzpdJUMv7Kmp4xkERTB8","title":"heads-or-tails","pathname":"/protocol/solidity-guides/v0.10/docs/examples/heads-or-tails","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"Yn5x5tqsrkDQ1JCEIRq8","title":"highest-die-roll","pathname":"/protocol/solidity-guides/v0.10/docs/examples/highest-die-roll","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"wuKD7nyaMelFIINa4Od9","title":"sealed-bid-auction-tutorial","pathname":"/protocol/solidity-guides/v0.10/docs/examples/sealed-bid-auction-tutorial","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"ZklqBgf6KtBzJeYryyk4","title":"sealed-bid-auction","pathname":"/protocol/solidity-guides/v0.10/docs/examples/sealed-bid-auction","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"4hRZC5HHnI4HcTMhE8NJ","title":"legacy","pathname":"/protocol/solidity-guides/v0.10/docs/examples/legacy","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"H51symrDVJQ0P3NaDq43","title":"See all tutorials","pathname":"/protocol/solidity-guides/v0.10/docs/examples/legacy/see-all-tutorials","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"},{"label":"legacy"}]},{"id":"gfvd9HqXRPQKn3RzjjqT","title":"openzeppelin","pathname":"/protocol/solidity-guides/v0.10/docs/examples/openzeppelin","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"}]},{"id":"j2xKkiWlLWHtP6lyHolB","title":"ERC7984ERC20WrapperMock","pathname":"/protocol/solidity-guides/v0.10/docs/examples/openzeppelin/erc7984erc20wrappermock","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"},{"label":"openzeppelin"}]},{"id":"ugZjn9sP0hYEoTTMRawW","title":"erc7984-tutorial","pathname":"/protocol/solidity-guides/v0.10/docs/examples/openzeppelin/erc7984-tutorial","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"},{"label":"openzeppelin"}]},{"id":"1ykY5rKD4uA4IW0MAbwj","title":"erc7984","pathname":"/protocol/solidity-guides/v0.10/docs/examples/openzeppelin/erc7984","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"},{"label":"openzeppelin"}]},{"id":"X9dO8swTyu5Vd15HQwG4","title":"swapERC7984ToERC20","pathname":"/protocol/solidity-guides/v0.10/docs/examples/openzeppelin/swaperc7984toerc20","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"},{"label":"openzeppelin"}]},{"id":"ekPM5DD0trVYFc6vVLlz","title":"swapERC7984ToERC7984","pathname":"/protocol/solidity-guides/v0.10/docs/examples/openzeppelin/swaperc7984toerc7984","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"},{"label":"openzeppelin"}]},{"id":"73YPZ5QObAKJnCDwmQG3","title":"vesting-wallet","pathname":"/protocol/solidity-guides/v0.10/docs/examples/openzeppelin/vesting-wallet","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"examples"},{"label":"openzeppelin"}]},{"id":"Sw2bofLGABSSOMo4yMjh","title":"metrics","pathname":"/protocol/solidity-guides/v0.10/docs/metrics","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"}]},{"id":"2TIWxc7477InbY8ThVTN","title":"FHEVM Metrics","pathname":"/protocol/solidity-guides/v0.10/docs/metrics/metrics","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"metrics"}]},{"id":"wQsRD11UX93yTb74UlSU","title":"operators","pathname":"/protocol/solidity-guides/v0.10/docs/operators","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"}]},{"id":"PeoL53Cl5oTzdWPJgPyk","title":"operators-overview","pathname":"/protocol/solidity-guides/v0.10/docs/operators/operators-overview","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"operators"}]},{"id":"cAMAiBR5ymWfDvPySfDr","title":"Welcome","pathname":"/protocol/solidity-guides/v0.10/docs/protocol","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"}]},{"id":"wWvtx5xKcKM3YNidUad9","title":"Table of contents","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/summary","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"}]},{"id":"XI4gCq7rnsOZSAOY0IX3","title":"Contributing","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/contribute","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"}]},{"id":"LXhNyLXScRH69MjICWD8","title":"Encryption, decryption, and computation","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/d_re_ecrypt_compute","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"}]},{"id":"D20CWzxqkHU8HtNjFlqh","title":"Roadmap","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/roadmap","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"}]},{"id":"IUSrsPP0lV6HGeperWlC","title":"architecture","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"}]},{"id":"b5Qn0NkOFqMBfY7KQinc","title":"Coprocessor","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture/coprocessor","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"},{"label":"architecture"}]},{"id":"lqykbFrDDEJBYV2U3gRp","title":"Gateway","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture/gateway","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"},{"label":"architecture"}]},{"id":"I6pbR0eoWK6lWFLv4Kj6","title":"Host contracts","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture/hostchain","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"},{"label":"architecture"}]},{"id":"9bsI07m0AsFdLETXH4Tu","title":"KMS","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture/kms","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"},{"label":"architecture"}]},{"id":"SDSOYVqW5VtkCKjpJqXN","title":"FHE library","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture/library","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"},{"label":"architecture"}]},{"id":"YRygSy22KFSUR2uY89xc","title":"FHE on Blockchain","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture/overview","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"},{"label":"architecture"}]},{"id":"iYXn3xtvlTJMAC7IuMQ2","title":"Relayer & Oracle","pathname":"/protocol/solidity-guides/v0.10/docs/protocol/architecture/relayer_oracle","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Welcome"},{"label":"architecture"}]},{"id":"RcsAdVs9WnAXx31ossqv","title":"sdk-guides","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"}]},{"id":"LIqmOuQu6buPXPHIinep","title":"SUMMARY","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/summary","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"jTkUl8KNXKdsJj14ZuNs","title":"Using the CLI","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/cli","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"MAqN8WR7pOy4EfqeQhJM","title":"Setup","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/initialization","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"Cev9uEnJTMpUJ4Uhhuzi","title":"Input registration","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/input","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"psNr3umqK9mA8EyCnOOf","title":"Public Decryption","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/public-decryption","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"Zd8ewqzJKkxorsCvPPrK","title":"Relayer SDK","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/sdk-overview","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"KQASE3sUE2i05vBN3aGW","title":"User decryption","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/user-decryption","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"Jwc5A5D3ZbGAWgMXyBwx","title":"Build a web application","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/webapp","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"6yEK8624fmSz3gZeDbKy","title":"Common webpack errors","pathname":"/protocol/solidity-guides/v0.10/docs/sdk-guides/webpack","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"sdk-guides"}]},{"id":"uUPXxI7G555e4FOMRMMM","title":"Overview","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"}]},{"id":"48f53rATNweU9rLIS7cX","title":"Table of contents","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/summary","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"l0eU5ExC79fOdSoyerlq","title":"Configuration","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/configure","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"GcUUfS7f8QQIRRCQ48hj","title":"Table of all addresses","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/contract_addresses","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"EpUoESk5r2BBTB6UOB0D","title":"Debugging with debug.decrypt[XX]","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/debug_decrypt","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"tS6DinvhLhKVfn4E6jkj","title":"Foundry","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/foundry","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"B6DAGxQXcPLdWT7PdRts","title":"Smart contracts - FHEVM API","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/functions","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"P6oJnru9h1miYMMdCtZU","title":"Homomorphic Complexity Units (\"HCU\") in FHEVM","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/hcu","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"fNQhICTktuywPCEpJtWQ","title":"Encrypted Inputs","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/inputs","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"k6HLe02tcVQLfyA7ymAC","title":"Key features","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/key_concepts","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"ePKcV2V2ttz6Q6w8xKSe","title":"migration","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/migration","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"79qEZBhMJA6O0j9vYVuN","title":"Mocked mode","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/mocked","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"AsJePDRm6waGA1d3KSDO","title":"How to Transform Your Smart Contract into a FHEVM Smart Contract?","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/transform_smart_contract_with_fhevm","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"F014YDnzNWcOVL5DydYL","title":"Supported types","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/types","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"ugXYPAf7Lsh3WmNtkoel","title":"Access Control List","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/acl","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"EOETlDDTJa2hM3IDcDWb","title":"ACL examples","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/acl/acl_examples","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"Access Control List"}]},{"id":"o4RxQUQZVm73yr8MK15k","title":"Reorgs handling","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/acl/reorgs_handling","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"Access Control List"}]},{"id":"A1f6lrRD3Nkh5nOJ6lvo","title":"decryption","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/decryption","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"aeb4CrCIuK5SF70ivNVK","title":"Debugging","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/decryption/debugging","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"decryption"}]},{"id":"NDzTpKQ7ZsRqdQxMHxkq","title":"oracle","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/decryption/oracle","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"decryption"}]},{"id":"DcGmZfpDFfQJgig5KBvH","title":"getting-started","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/getting-started","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"IWEPkWQbHcNug3tgrZhL","title":"Key features","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/getting-started/overview","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"getting-started"}]},{"id":"DLjnycDUo5KpCFkK65FX","title":"Quick Start Tutorial","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/getting-started/quick-start-tutorial","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"getting-started"}]},{"id":"uEq0YPB8VHqzci9aqlYB","title":"Set up Hardhat","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/getting-started/quick-start-tutorial/setup","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"getting-started"},{"label":"Quick Start Tutorial"}]},{"id":"KOoYpfX3cuNp0wcRQRQD","title":"Test the FHEVM contract","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/getting-started/quick-start-tutorial/test_the_fhevm_contract","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"getting-started"},{"label":"Quick Start Tutorial"}]},{"id":"7PT71Supk5fPDFHT8NNV","title":"Turn it into FHEVM","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/getting-started/quick-start-tutorial/turn_it_into_fhevm","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"getting-started"},{"label":"Quick Start Tutorial"}]},{"id":"z57XmC1lQKG6FvvS9hVF","title":"Write a simple contract","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/getting-started/quick-start-tutorial/write_a_simple_contract","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"getting-started"},{"label":"Quick Start Tutorial"}]},{"id":"EGhRqdNvP9T5megxY4Sd","title":"hardhat","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/hardhat","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"hiY0FFV0nHNmtoenejz4","title":"run_test","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/hardhat/run_test","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"hardhat"}]},{"id":"Umg8Px0N6WXIapv0nLD0","title":"write_task","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/hardhat/write_task","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"hardhat"}]},{"id":"aBTG9veSkfDmYQfi0Hjc","title":"write_test","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/hardhat/write_test","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"hardhat"}]},{"id":"lU4IAQ6OdkVxgnvf7vf8","title":"logics","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/logics","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"6E1VgAwbKMemLFPk9JfB","title":"Branching in FHE","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/logics/conditions","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"logics"}]},{"id":"7CVbRsGGWwIq5S9zXrZV","title":"Error handling","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/logics/error_handling","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"logics"}]},{"id":"1h2cAMDKH5kt6GCSnRUJ","title":"Dealing with branches and conditions","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/logics/loop","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"logics"}]},{"id":"N6LG9DdZovG75wiLIGUv","title":"Operations on encrypted types","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/operations","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"}]},{"id":"nyxjjsfkoJzUuW7Jclfy","title":"Casting and trivial encryption","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/operations/casting","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"Operations on encrypted types"}]},{"id":"fE4irbEYzlPjZZ3FKy82","title":"Generate random numbers","pathname":"/protocol/solidity-guides/v0.10/docs/solidity-guides/operations/random","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"docs"},{"label":"Overview"},{"label":"Operations on encrypted types"}]},{"id":"0Zg80eZZcPkNpEvWm97h","title":"protocol-contracts","pathname":"/protocol/solidity-guides/v0.10/protocol-contracts","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"6HKcWsuxxGjFnyemgjUz","title":"Deployment guide for testing","pathname":"/protocol/solidity-guides/v0.10/protocol-contracts/deploy","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"protocol-contracts"}]},{"id":"qyJHPnJL7iOUGGmf7TWa","title":"feesBurner","pathname":"/protocol/solidity-guides/v0.10/protocol-contracts/feesburner","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"protocol-contracts"}]},{"id":"oF30LxVFkz2OTkzGi6zp","title":"Governance OApp","pathname":"/protocol/solidity-guides/v0.10/protocol-contracts/governance","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"protocol-contracts"}]},{"id":"nvGittCu1hPJiRiIvzWa","title":"PauserSetWrapper","pathname":"/protocol/solidity-guides/v0.10/protocol-contracts/pausersetwrapper","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"protocol-contracts"}]},{"id":"v8ShOWXJWzY078fk3ZxH","title":"AdminModule for the Safe MultiSig wallet to be used on Gateway","pathname":"/protocol/solidity-guides/v0.10/protocol-contracts/safe","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"protocol-contracts"}]},{"id":"kxgZvSYLZTCk1NrruFTS","title":"Zama token quickstart","pathname":"/protocol/solidity-guides/v0.10/protocol-contracts/token","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"protocol-contracts"}]},{"id":"NfZkW1IsmxmnGdTtRnet","title":"sdk","pathname":"/protocol/solidity-guides/v0.10/sdk","siteSpaceId":"sitesp_gPLHZ","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"8CtNA5XmmJKd1lbyOdKR","title":"FHEVM Gateway SDK for Rust","pathname":"/protocol/solidity-guides/v0.10/sdk/rust-sdk","siteSpaceId":"sitesp_gPLHZ","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"sdk"}]},{"id":"TsWzB4dm74kbrJ3xbnwJ","title":"Overview","pathname":"/protocol/solidity-guides/v0.11","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"yoV8OUiIY9kFMtGMAQW2","title":"What is FHEVM Solidity","pathname":"/protocol/solidity-guides/v0.11/getting-started/overview","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"uEq0YPB8VHqzci9aqlYB","title":"Set up Hardhat","pathname":"/protocol/solidity-guides/v0.11/getting-started/setup","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"DLjnycDUo5KpCFkK65FX","title":"Quick start tutorial","pathname":"/protocol/solidity-guides/v0.11/getting-started/quick-start-tutorial","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"zFWYc9gDKAeSxkeqZqY4","title":"2. Write a simple contract","pathname":"/protocol/solidity-guides/v0.11/getting-started/quick-start-tutorial/write_a_simple_contract","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial"}]},{"id":"afO2Wm6jg2lVO3b3bery","title":"3. Turn it into FHEVM","pathname":"/protocol/solidity-guides/v0.11/getting-started/quick-start-tutorial/turn_it_into_fhevm","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial"}]},{"id":"UwKwR9H5dA0hn1SNTeoq","title":"4. Test the FHEVM contract","pathname":"/protocol/solidity-guides/v0.11/getting-started/quick-start-tutorial/test_the_fhevm_contract","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial"}]},{"id":"l0eU5ExC79fOdSoyerlq","title":"Configuration","pathname":"/protocol/solidity-guides/v0.11/smart-contract/configure","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"N9vYYVErpuWlUSPiqVvi","title":"Contract addresses","pathname":"/protocol/solidity-guides/v0.11/smart-contract/configure/contract_addresses","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Configuration"}]},{"id":"F014YDnzNWcOVL5DydYL","title":"Supported types","pathname":"/protocol/solidity-guides/v0.11/smart-contract/types","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"N6LG9DdZovG75wiLIGUv","title":"Operations on encrypted types","pathname":"/protocol/solidity-guides/v0.11/smart-contract/operations","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"nyxjjsfkoJzUuW7Jclfy","title":"Casting and trivial encryption","pathname":"/protocol/solidity-guides/v0.11/smart-contract/operations/casting","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Operations on encrypted types"}]},{"id":"fE4irbEYzlPjZZ3FKy82","title":"Generate random numbers","pathname":"/protocol/solidity-guides/v0.11/smart-contract/operations/random","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Operations on encrypted types"}]},{"id":"fNQhICTktuywPCEpJtWQ","title":"Encrypted inputs","pathname":"/protocol/solidity-guides/v0.11/smart-contract/inputs","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"ugXYPAf7Lsh3WmNtkoel","title":"Access Control List","pathname":"/protocol/solidity-guides/v0.11/smart-contract/acl","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"EOETlDDTJa2hM3IDcDWb","title":"ACL examples","pathname":"/protocol/solidity-guides/v0.11/smart-contract/acl/acl_examples","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Access Control List"}]},{"id":"o4RxQUQZVm73yr8MK15k","title":"Reorgs handling","pathname":"/protocol/solidity-guides/v0.11/smart-contract/acl/reorgs_handling","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Access Control List"}]},{"id":"lU4IAQ6OdkVxgnvf7vf8","title":"Logics","pathname":"/protocol/solidity-guides/v0.11/smart-contract/logics","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"lQq3KvIpXvuE0JU7WNHI","title":"Branching","pathname":"/protocol/solidity-guides/v0.11/smart-contract/logics/conditions","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"1h2cAMDKH5kt6GCSnRUJ","title":"Dealing with branches and conditions","pathname":"/protocol/solidity-guides/v0.11/smart-contract/logics/loop","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"7CVbRsGGWwIq5S9zXrZV","title":"Error handling","pathname":"/protocol/solidity-guides/v0.11/smart-contract/logics/error_handling","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"A1f6lrRD3Nkh5nOJ6lvo","title":"Decryption","pathname":"/protocol/solidity-guides/v0.11/smart-contract/oracle","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"VJs3YDMBajsHC6TNZbHq","title":"Hardhat plugin","pathname":"/protocol/solidity-guides/v0.11/development-guide/hardhat","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"k1zJ1nMg9aNfQmx5xnV7","title":"Write FHEVM tests in Hardhat","pathname":"/protocol/solidity-guides/v0.11/development-guide/hardhat/write_test","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"ij2ye9xa6yzeXVNvPFRS","title":"Deploy contracts and run tests","pathname":"/protocol/solidity-guides/v0.11/development-guide/hardhat/run_test","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"m9dfS13xb5BFnF7y7AZl","title":"Write FHEVM-enabled Hardhat Tasks","pathname":"/protocol/solidity-guides/v0.11/development-guide/hardhat/write_task","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"tS6DinvhLhKVfn4E6jkj","title":"Foundry","pathname":"/protocol/solidity-guides/v0.11/development-guide/foundry","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"IJ1tkkOEB1kVmGxjtfVf","title":"HCU","pathname":"/protocol/solidity-guides/v0.11/development-guide/hcu","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"QcLk1klWzWXP3R55zWW6","title":"Migrate to v0.9","pathname":"/protocol/solidity-guides/v0.11/development-guide/migration","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"AsJePDRm6waGA1d3KSDO","title":"How to Transform Your Smart Contract into a FHEVM Smart Contract?","pathname":"/protocol/solidity-guides/v0.11/development-guide/transform_smart_contract_with_fhevm","siteSpaceId":"sitesp_DwQ1s","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"1Vt3A2M3u5Tp8KP7jB85","title":"Overview","pathname":"/protocol/solidity-guides","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"VbnGzEy2wmR7SGqNrpXE","title":"What is FHEVM Solidity","pathname":"/protocol/solidity-guides/getting-started/overview","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"vSXK9kWEg5CbNp1hDQ5c","title":"Set up Hardhat","pathname":"/protocol/solidity-guides/getting-started/setup","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"tb619kfA9GTdPkdfVtAQ","title":"Quick start tutorial","pathname":"/protocol/solidity-guides/getting-started/quick-start-tutorial","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"vSOg6vkwrQzJkCFftvX4","title":"2. Write a simple contract","pathname":"/protocol/solidity-guides/getting-started/quick-start-tutorial/write_a_simple_contract","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial"}]},{"id":"DKRylWdcBvG7vzhcWNPt","title":"3. Turn it into FHEVM","pathname":"/protocol/solidity-guides/getting-started/quick-start-tutorial/turn_it_into_fhevm","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial"}]},{"id":"n5XadwF0OiD3jInDX3CL","title":"4. Test the FHEVM contract","pathname":"/protocol/solidity-guides/getting-started/quick-start-tutorial/test_the_fhevm_contract","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial"}]},{"id":"iOpxSybXQVOM35qqJ2nD","title":"Configuration","pathname":"/protocol/solidity-guides/smart-contract/configure","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"9E1NUgqAMRCzgdCyY3d4","title":"Contract addresses","pathname":"/protocol/solidity-guides/smart-contract/configure/contract_addresses","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Configuration"}]},{"id":"mJTPo0ruWhdwlQ0yf3PA","title":"Supported types","pathname":"/protocol/solidity-guides/smart-contract/types","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"N1d9QCITD9WYJQUe92RU","title":"Operations on encrypted types","pathname":"/protocol/solidity-guides/smart-contract/operations","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"oHfwCsDXoAqJsNY9mSP6","title":"Casting and trivial encryption","pathname":"/protocol/solidity-guides/smart-contract/operations/casting","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Operations on encrypted types"}]},{"id":"p35kcmkThgt3yEWm7k8G","title":"Generate random numbers","pathname":"/protocol/solidity-guides/smart-contract/operations/random","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Operations on encrypted types"}]},{"id":"Uzf7ngY7Hna7wolN4BGp","title":"Encrypted inputs","pathname":"/protocol/solidity-guides/smart-contract/inputs","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"W9yV6Hlij3mhoapxrm9D","title":"Access Control List","pathname":"/protocol/solidity-guides/smart-contract/acl","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"KdByZTZCnNTfAPB89IEV","title":"ACL examples","pathname":"/protocol/solidity-guides/smart-contract/acl/acl_examples","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Access Control List"}]},{"id":"NDwf28D9hVFSJjNS834j","title":"Reorgs handling","pathname":"/protocol/solidity-guides/smart-contract/acl/reorgs_handling","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Access Control List"}]},{"id":"RuAiySiGiejL9n1XImKc","title":"Logics","pathname":"/protocol/solidity-guides/smart-contract/logics","siteSpaceId":"sitesp_j6uGh","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"6FAcz28U9RK0RarF7XnD","title":"Branching","pathname":"/protocol/solidity-guides/smart-contract/logics/conditions","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"5qGNI8q5BUj0lq2viKVM","title":"Dealing with branches and conditions","pathname":"/protocol/solidity-guides/smart-contract/logics/loop","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"xVuuj3JTCZ2ArkintQ9x","title":"Error handling","pathname":"/protocol/solidity-guides/smart-contract/logics/error_handling","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"RmjpQLjw1ECOW8Dk1wY4","title":"Decryption","pathname":"/protocol/solidity-guides/smart-contract/oracle","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"zKRU778XqEtCQvueIcua","title":"Hardhat plugin","pathname":"/protocol/solidity-guides/development-guide/hardhat","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"AIGkI2Igxm57dfJhPC7K","title":"Write FHEVM tests in Hardhat","pathname":"/protocol/solidity-guides/development-guide/hardhat/write_test","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"bzLdZHaJE81ERY0bESmk","title":"Deploy contracts and run tests","pathname":"/protocol/solidity-guides/development-guide/hardhat/run_test","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"yxHACNmwMRFUADJjGMZe","title":"Write FHEVM-enabled Hardhat Tasks","pathname":"/protocol/solidity-guides/development-guide/hardhat/write_task","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"PfEcSXKlyJ7f64eDvTLR","title":"Foundry","pathname":"/protocol/solidity-guides/development-guide/foundry","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"doPPjC5SZEbDBRzVOMsG","title":"HCU","pathname":"/protocol/solidity-guides/development-guide/hcu","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"33gD9tkaaH5lzZPwOu7e","title":"Migrate to v0.9","pathname":"/protocol/solidity-guides/development-guide/migration","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"ntinhEP2Yx3Dml97NEo6","title":"How to Transform Your Smart Contract into a FHEVM Smart Contract?","pathname":"/protocol/solidity-guides/development-guide/transform_smart_contract_with_fhevm","siteSpaceId":"sitesp_j6uGh","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"1Vt3A2M3u5Tp8KP7jB85","title":"Overview","pathname":"/protocol/solidity-guides/copy-of-v0.12","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"}]},{"id":"VbnGzEy2wmR7SGqNrpXE","title":"What is FHEVM Solidity","pathname":"/protocol/solidity-guides/copy-of-v0.12/getting-started/overview","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"vSXK9kWEg5CbNp1hDQ5c","title":"Set up Hardhat","pathname":"/protocol/solidity-guides/copy-of-v0.12/getting-started/setup","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"fTinshIeibQuzdTtAlfk","title":"Set up Foundry","pathname":"/protocol/solidity-guides/copy-of-v0.12/getting-started/setup-1","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"tb619kfA9GTdPkdfVtAQ","title":"Quick start tutorial (Hardhat)","pathname":"/protocol/solidity-guides/copy-of-v0.12/getting-started/quick-start-tutorial","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"}]},{"id":"vSOg6vkwrQzJkCFftvX4","title":"2. Write a simple contract","pathname":"/protocol/solidity-guides/copy-of-v0.12/getting-started/quick-start-tutorial/write_a_simple_contract","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial (Hardhat)"}]},{"id":"DKRylWdcBvG7vzhcWNPt","title":"3. Turn it into FHEVM","pathname":"/protocol/solidity-guides/copy-of-v0.12/getting-started/quick-start-tutorial/turn_it_into_fhevm","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial (Hardhat)"}]},{"id":"n5XadwF0OiD3jInDX3CL","title":"4. Test the FHEVM contract","pathname":"/protocol/solidity-guides/copy-of-v0.12/getting-started/quick-start-tutorial/test_the_fhevm_contract","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Getting Started"},{"label":"Quick start tutorial (Hardhat)"}]},{"id":"iOpxSybXQVOM35qqJ2nD","title":"Configuration","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/configure","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"9E1NUgqAMRCzgdCyY3d4","title":"Contract addresses","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/configure/contract_addresses","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Configuration"}]},{"id":"mJTPo0ruWhdwlQ0yf3PA","title":"Supported types","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/types","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"ZgtQvEJTIIcT1E73QwgW","title":"Handles","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/handles","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"N1d9QCITD9WYJQUe92RU","title":"Operations on encrypted types","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/operations","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"oHfwCsDXoAqJsNY9mSP6","title":"Casting and trivial encryption","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/operations/casting","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Operations on encrypted types"}]},{"id":"p35kcmkThgt3yEWm7k8G","title":"Generate random numbers","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/operations/random","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Operations on encrypted types"}]},{"id":"Uzf7ngY7Hna7wolN4BGp","title":"Encrypted inputs","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/inputs","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"W9yV6Hlij3mhoapxrm9D","title":"Access Control List","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/acl","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"KdByZTZCnNTfAPB89IEV","title":"ACL examples","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/acl/acl_examples","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Access Control List"}]},{"id":"tzSKlyrrizcAwgUSoyZL","title":"User decryption delegation","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/acl/delegation","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Access Control List"}]},{"id":"NDwf28D9hVFSJjNS834j","title":"Reorgs handling","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/acl/reorgs_handling","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Access Control List"}]},{"id":"RuAiySiGiejL9n1XImKc","title":"Logics","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/logics","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"6FAcz28U9RK0RarF7XnD","title":"Branching","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/logics/conditions","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"5qGNI8q5BUj0lq2viKVM","title":"Dealing with branches and conditions","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/logics/loop","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"xVuuj3JTCZ2ArkintQ9x","title":"Error handling","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/logics/error_handling","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"},{"label":"Logics"}]},{"id":"RmjpQLjw1ECOW8Dk1wY4","title":"Public Decryption","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/oracle","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"D4s8M8W772QmrZgyI5Jg","title":"FHEVM API reference","pathname":"/protocol/solidity-guides/copy-of-v0.12/smart-contract/functions","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Smart Contract"}]},{"id":"zKRU778XqEtCQvueIcua","title":"Hardhat plugin","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/hardhat","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"AIGkI2Igxm57dfJhPC7K","title":"Write FHEVM tests in Hardhat","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/hardhat/write_test","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"bzLdZHaJE81ERY0bESmk","title":"Deploy contracts and run tests","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/hardhat/run_test","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"yxHACNmwMRFUADJjGMZe","title":"Write FHEVM-enabled Hardhat Tasks","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/hardhat/write_task","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Hardhat plugin"}]},{"id":"PfEcSXKlyJ7f64eDvTLR","title":"Foundry","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/foundry","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"V7cmC1DPKCRFQelSsmzo","title":"Write FHEVM tests in Foundry","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/foundry/write_test","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Foundry"}]},{"id":"CyAP3oEEEHyCOZO2EACa","title":"Deploy contracts","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/foundry/deploy","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Foundry"}]},{"id":"xjkPfZLAYtD3iTJGdksO","title":"forge-fhevm API reference","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/foundry/api","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"},{"label":"Foundry"}]},{"id":"doPPjC5SZEbDBRzVOMsG","title":"HCU","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/hcu","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"ntinhEP2Yx3Dml97NEo6","title":"How to Transform Your Smart Contract into a FHEVM Smart Contract?","pathname":"/protocol/solidity-guides/copy-of-v0.12/development-guide/transform_smart_contract_with_fhevm","siteSpaceId":"sitesp_o9QXn","description":"","breadcrumbs":[{"label":"Solidity Guides"},{"label":"Development Guide"}]},{"id":"B7za8kzWHjoSrSLf57fF","title":"Overview","pathname":"/protocol/sdk","siteSpaceId":"sitesp_DnG0y","description":"TypeScript SDK for confidential smart contracts — shield, transfer, and unshield tokens with Fully Homomorphic Encryption.","breadcrumbs":[{"label":"Zama SDK"}]},{"id":"8uLn06TOPs16x5OoTF60","title":"Quick start","pathname":"/protocol/sdk/getting-started/quick-start","siteSpaceId":"sitesp_DnG0y","description":"Get from zero to a working confidential transfer in under 5 minutes.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Getting Started"}]},{"id":"s6xsD18fe9FmFjA4h1Ay","title":"First confidential dApp","pathname":"/protocol/sdk/getting-started/first-confidential-dapp","siteSpaceId":"sitesp_DnG0y","description":"End-to-end tutorial building a token dashboard with React, wagmi, and the Zama React SDK.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Getting Started"}]},{"id":"FAuuUPlOfvJPsxRjQPfg","title":"Wallet & exchange integration","pathname":"/protocol/sdk/getting-started/wallet-exchange-integration","siteSpaceId":"sitesp_DnG0y","description":"How wallets and exchanges support ERC-7984 confidential tokens with the Zama SDK — display balances, build transfers, manage operators, and wrap/unwrap between ERC-20 and confidential form.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Getting Started"}]},{"id":"LiMGCKKcn7ud2no5vh7W","title":"Configuration","pathname":"/protocol/sdk/guides/configuration","siteSpaceId":"sitesp_DnG0y","description":"How to set up the SDK's three required pieces — relayer, signer, and storage.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"loE9r18MOPrNGk1PROL6","title":"Authentication","pathname":"/protocol/sdk/guides/authentication","siteSpaceId":"sitesp_DnG0y","description":"How to authenticate with the relayer using a backend proxy or a direct API key.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"O168AcaBzy96ur9ZyvTu","title":"Relayer API keys","pathname":"/protocol/sdk/guides/relayer-api-keys","siteSpaceId":"sitesp_DnG0y","description":"How to obtain, configure, and securely manage your Zama Relayer API key.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"f7GOTkNzhKhMxAjHO0qf","title":"Shield tokens","pathname":"/protocol/sdk/guides/shield-tokens","siteSpaceId":"sitesp_DnG0y","description":"How to convert public ERC-20 tokens into their confidential form.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"18cbXGoDS0IdYCLZLdcx","title":"Transfer privately","pathname":"/protocol/sdk/guides/transfer-privately","siteSpaceId":"sitesp_DnG0y","description":"How to send confidential tokens so the amount stays hidden on-chain.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"zXx5sMpdMsGOdtl4Y0sx","title":"Unshield tokens","pathname":"/protocol/sdk/guides/unshield-tokens","siteSpaceId":"sitesp_DnG0y","description":"Convert confidential tokens back to public ERC-20 by unshielding them.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"4ZphH4ykL399gxHNrH33","title":"Check balances","pathname":"/protocol/sdk/guides/check-balances","siteSpaceId":"sitesp_DnG0y","description":"Decrypt and read confidential token balances using the SDK and React hooks.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"mphomQifHo6R1sIvmqun","title":"Handle errors","pathname":"/protocol/sdk/guides/handle-errors","siteSpaceId":"sitesp_DnG0y","description":"Catch, match, and recover from SDK errors in your application.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"a2yDVrU0RgHDbS1DSqDw","title":"Activity feeds","pathname":"/protocol/sdk/guides/activity-feeds","siteSpaceId":"sitesp_DnG0y","description":"Parse on-chain events into a user-friendly activity feed with decrypted amounts.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"0IWJGTyoomYm1mCPo6YM","title":"Node.js backend","pathname":"/protocol/sdk/guides/node-js-backend","siteSpaceId":"sitesp_DnG0y","description":"How to use the SDK in a Node.js server environment with worker threads and per-request isolation.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"ez0Xq82oZVrm7MkU7tBy","title":"Web extensions","pathname":"/protocol/sdk/guides/web-extensions","siteSpaceId":"sitesp_DnG0y","description":"How to use the SDK in MV3 Chrome extensions with persistent session storage.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"FEqa2kxRnLwFr7EzZOYL","title":"Local development","pathname":"/protocol/sdk/guides/local-development","siteSpaceId":"sitesp_DnG0y","description":"How to use the cleartext relayer for local Hardhat nodes and custom chain deployments without a KMS or gateway.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"Ofr7IanaFTQTOwAZsHBj","title":"Next.js SSR","pathname":"/protocol/sdk/guides/nextjs-ssr","siteSpaceId":"sitesp_DnG0y","description":"How to use the SDK with Next.js and server-side rendering frameworks.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"vWnjVG1endP95zdQnelb","title":"Operator approvals","pathname":"/protocol/sdk/guides/operator-approvals","siteSpaceId":"sitesp_DnG0y","description":"How to approve another address to act on your confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"o82QUydV3tK9kPjzy2Z8","title":"Encrypt & decrypt","pathname":"/protocol/sdk/guides/encrypt-decrypt","siteSpaceId":"sitesp_DnG0y","description":"How to encrypt values and decrypt FHE ciphertext handles for custom confidential smart contracts that are not wrapped ERC-20 tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"JHTFkIl5L1tr0sDjwp4d","title":"SDK reference","pathname":"/protocol/sdk/api-references/sdk","siteSpaceId":"sitesp_DnG0y","description":"","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"}]},{"id":"ucohmOQQhcjEKerGgA9m","title":"ZamaSDK","pathname":"/protocol/sdk/api-references/sdk/zamasdk","siteSpaceId":"sitesp_DnG0y","description":"Entry point for all confidential contract operations.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"HVX3wwpaiB0HWSMaqDPY","title":"Token","pathname":"/protocol/sdk/api-references/sdk/token","siteSpaceId":"sitesp_DnG0y","description":"Read/write interface for confidential ERC-20 operations.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"fsVGLyzKIuOtMERnfl6A","title":"ReadonlyToken","pathname":"/protocol/sdk/api-references/sdk/readonlytoken","siteSpaceId":"sitesp_DnG0y","description":"Read-only interface for confidential token queries and batch operations.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"taQlwBPA3VkwbNialxcF","title":"WrappersRegistry","pathname":"/protocol/sdk/api-references/sdk/wrappersregistry","siteSpaceId":"sitesp_DnG0y","description":"Query the on-chain token wrappers registry — list pairs, look up tokens, and validate confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"SeX19HoqwN70MpakNWJQ","title":"RelayerWeb","pathname":"/protocol/sdk/api-references/sdk/relayerweb","siteSpaceId":"sitesp_DnG0y","description":"Browser relayer that runs FHE operations in a Web Worker via WASM.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"lA1higSR08zniqH9j2T5","title":"RelayerNode","pathname":"/protocol/sdk/api-references/sdk/relayernode","siteSpaceId":"sitesp_DnG0y","description":"Node.js relayer that runs FHE operations in native worker threads.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"AdNXhgzmnlG2LCLHLNl7","title":"RelayerCleartext","pathname":"/protocol/sdk/api-references/sdk/relayercleartext","siteSpaceId":"sitesp_DnG0y","description":"Development relayer that operates in cleartext mode without FHE, KMS, or gateway dependencies.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"mw3vDOFy8geueZReGnTf","title":"ViemSigner","pathname":"/protocol/sdk/api-references/sdk/viemsigner","siteSpaceId":"sitesp_DnG0y","description":"Signer adapter that wraps viem wallet and public clients for the SDK.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"RCXvz7LTSx0MxJkuhgn5","title":"EthersSigner","pathname":"/protocol/sdk/api-references/sdk/etherssigner","siteSpaceId":"sitesp_DnG0y","description":"Signer adapter that wraps ethers providers and signers for the SDK.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"rO3hbuVasnasvOLg6wE0","title":"WagmiSigner","pathname":"/protocol/sdk/api-references/sdk/wagmisigner","siteSpaceId":"sitesp_DnG0y","description":"React-only signer adapter that wraps a wagmi config with automatic session revocation.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"EeVaZoXuc3gNmhCI0G6Q","title":"GenericSigner","pathname":"/protocol/sdk/api-references/sdk/genericsigner","siteSpaceId":"sitesp_DnG0y","description":"Interface that all signer adapters must implement for the SDK to interact with wallets.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"KDHNHHE2DuVzR7MnLO0s","title":"GenericStorage","pathname":"/protocol/sdk/api-references/sdk/genericstorage","siteSpaceId":"sitesp_DnG0y","description":"Interface for async key-value storage used to persist FHE keypairs and session signatures.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"IqtVZwHXX1Xbkso3GdWh","title":"Errors","pathname":"/protocol/sdk/api-references/sdk/errors","siteSpaceId":"sitesp_DnG0y","description":"All SDK error classes, codes, and the matchZamaError utility.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"ufzfDogzWE2dlfngEewl","title":"Contract builders","pathname":"/protocol/sdk/api-references/sdk/contract-builders","siteSpaceId":"sitesp_DnG0y","description":"Low-level builders that return raw contract call configs for viem, ethers, or custom execution layers.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"OTQBKAqUTO2HUrLrngm5","title":"FheArtifactCache","pathname":"/protocol/sdk/api-references/sdk/fheartifactcache","siteSpaceId":"sitesp_DnG0y","description":"Persistent cache for FHE public key and public parameters, avoiding re-downloads across sessions.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"mDGVKZb9uJFV1WA3jy4F","title":"Event decoders","pathname":"/protocol/sdk/api-references/sdk/event-decoders","siteSpaceId":"sitesp_DnG0y","description":"Decode on-chain logs into typed event objects and build activity feeds.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"8q0FU22WVlXE6a6sYnpE","title":"Delegated decryption","pathname":"/protocol/sdk/api-references/sdk/delegation","siteSpaceId":"sitesp_DnG0y","description":"","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"mEVxuCrFdZyGxWESD4sB","title":"Network presets","pathname":"/protocol/sdk/api-references/sdk/network-presets","siteSpaceId":"sitesp_DnG0y","description":"Pre-configured network settings for Ethereum Mainnet, Sepolia, and Hardhat.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"7f9VhPNAYyfLQi87aB8P","title":"React reference","pathname":"/protocol/sdk/api-references/react","siteSpaceId":"sitesp_DnG0y","description":"","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"}]},{"id":"5NDxHXY2zMFTYhy3IGFl","title":"ZamaProvider","pathname":"/protocol/sdk/api-references/react/zamaprovider","siteSpaceId":"sitesp_DnG0y","description":"Context provider that supplies the Zama SDK to all descendant hooks.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"B9fiTGF8XwCprfuGN8K2","title":"useConfidentialBalance","pathname":"/protocol/sdk/api-references/react/useconfidentialbalance","siteSpaceId":"sitesp_DnG0y","description":"Decrypt a single token's confidential balance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"pdxq1yNmUakyotNq19Dm","title":"useConfidentialBalances","pathname":"/protocol/sdk/api-references/react/useconfidentialbalances","siteSpaceId":"sitesp_DnG0y","description":"Decrypt and poll multiple tokens' confidential balances in a single query.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"Ep6dpk5V90AW1IjSeIWP","title":"useConfidentialTransfer","pathname":"/protocol/sdk/api-references/react/useconfidentialtransfer","siteSpaceId":"sitesp_DnG0y","description":"Send confidential ERC-20 tokens privately.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"a29Sr057d4SybAPvEHV3","title":"useConfidentialTransferFrom","pathname":"/protocol/sdk/api-references/react/useconfidentialtransferfrom","siteSpaceId":"sitesp_DnG0y","description":"Transfer confidential tokens on behalf of an owner who approved you as an operator.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"hWiSCc76rq7tau1zOlvV","title":"useShield","pathname":"/protocol/sdk/api-references/react/useshield","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that shields public ERC-20 tokens into confidential form.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"R9Pt7IvdN6tQITZjISw4","title":"useUnshield","pathname":"/protocol/sdk/api-references/react/useunshield","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that unshields confidential tokens back to public ERC-20.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"sukNGXltBMWPIhRk4ISm","title":"useUnshieldAll","pathname":"/protocol/sdk/api-references/react/useunshieldall","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that unshields the entire confidential balance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"VERVfXy1EI7QgkcF1ET5","title":"useResumeUnshield","pathname":"/protocol/sdk/api-references/react/useresumeunshield","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that resumes an unshield interrupted between unwrap and finalize steps.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"KkIqtPcsOd8Pf0MMd03s","title":"useUnwrap","pathname":"/protocol/sdk/api-references/react/useunwrap","siteSpaceId":"sitesp_DnG0y","description":"Low-level mutation hook that requests an unwrap for a specific amount.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"UWZEZboEYsbquHSm7H87","title":"useUnwrapAll","pathname":"/protocol/sdk/api-references/react/useunwrapall","siteSpaceId":"sitesp_DnG0y","description":"Low-level mutation hook that requests an unwrap for the full confidential balance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"4wplYdUvbnw6fxSSLcw6","title":"useFinalizeUnwrap","pathname":"/protocol/sdk/api-references/react/usefinalizeunwrap","siteSpaceId":"sitesp_DnG0y","description":"Low-level mutation hook that finalizes an unwrap with the decryption proof.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"NOZH22RA9OiCGiFxwt1s","title":"useAllow","pathname":"/protocol/sdk/api-references/react/useallow","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that signs an EIP-712 message authorizing decryption of confidential handles for any contract.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"EjtWrM2KqoUX6POzPSkw","title":"useIsAllowed","pathname":"/protocol/sdk/api-references/react/useisallowed","siteSpaceId":"sitesp_DnG0y","description":"Query hook that checks whether a session signature is cached and valid.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"vDSQaCQftU8Qpl4B3eZn","title":"useRevoke","pathname":"/protocol/sdk/api-references/react/userevoke","siteSpaceId":"sitesp_DnG0y","description":"Revoke the EIP-712 decrypt authorization for specific contract addresses.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"A4KYVxajMpVsA8SUWf6y","title":"useRevokeSession","pathname":"/protocol/sdk/api-references/react/userevokesession","siteSpaceId":"sitesp_DnG0y","description":"Revoke the entire session for the connected wallet.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"tgr0nJDLTFXsK01X9emk","title":"useConfidentialApprove","pathname":"/protocol/sdk/api-references/react/useconfidentialapprove","siteSpaceId":"sitesp_DnG0y","description":"Approve an operator to act on your confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"x0iHf8IdhzWkLZIuiD6c","title":"useConfidentialIsApproved","pathname":"/protocol/sdk/api-references/react/useconfidentialisapproved","siteSpaceId":"sitesp_DnG0y","description":"Check if a spender is approved as operator for your confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"lnwPkWX7Z3vRLUaN7xnn","title":"useUnderlyingAllowance","pathname":"/protocol/sdk/api-references/react/useunderlyingallowance","siteSpaceId":"sitesp_DnG0y","description":"Read the ERC-20 allowance of the underlying public token for the wrapper contract.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"oqPjJICL0WpBTQFFZmj4","title":"useWrapperDiscovery","pathname":"/protocol/sdk/api-references/react/usewrapperdiscovery","siteSpaceId":"sitesp_DnG0y","description":"Find the confidential wrapper contract address for an ERC-20 token via the on-chain registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"MAEEdudHVp7xTO02u35A","title":"useWrappersRegistryAddress","pathname":"/protocol/sdk/api-references/react/usewrappersregistryaddress","siteSpaceId":"sitesp_DnG0y","description":"Resolve the wrappers registry contract address for the current chain.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"1wYVAyg54a3ptiNcPizD","title":"useListPairs","pathname":"/protocol/sdk/api-references/react/uselistpairs","siteSpaceId":"sitesp_DnG0y","description":"Fetch paginated token wrapper pairs from the on-chain registry, with optional metadata enrichment.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"YRaq5T5tJzOMn9jD1hXM","title":"useTokenPairsRegistry","pathname":"/protocol/sdk/api-references/react/usetokenpairsregistry","siteSpaceId":"sitesp_DnG0y","description":"Fetch all token wrapper pairs from the on-chain registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"IMhJevGCVf2qqPIcRqDH","title":"useTokenPairsLength","pathname":"/protocol/sdk/api-references/react/usetokenpairslength","siteSpaceId":"sitesp_DnG0y","description":"Get the total number of token wrapper pairs in the registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"eTbCrHcsMP5YdO7nDQJ3","title":"useTokenPairsSlice","pathname":"/protocol/sdk/api-references/react/usetokenpairsslice","siteSpaceId":"sitesp_DnG0y","description":"Fetch a range of token wrapper pairs from the registry by index.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"ryrbPYI3tgpU8qeYYJuP","title":"useTokenPair","pathname":"/protocol/sdk/api-references/react/usetokenpair","siteSpaceId":"sitesp_DnG0y","description":"Fetch a single token wrapper pair by index from the registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"a7ZCKjLu7zwVGnXzjpPI","title":"useConfidentialTokenAddress","pathname":"/protocol/sdk/api-references/react/useconfidentialtokenaddress","siteSpaceId":"sitesp_DnG0y","description":"Look up the confidential token address for a given plain ERC-20 token.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"3pH6zua8ENYZGaqeL5VV","title":"useTokenAddress","pathname":"/protocol/sdk/api-references/react/usetokenaddress","siteSpaceId":"sitesp_DnG0y","description":"Reverse lookup -- find the plain ERC-20 address for a given confidential token.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"8Mr3tUCz0Rorg6M833BQ","title":"useIsConfidentialTokenValid","pathname":"/protocol/sdk/api-references/react/useisconfidentialtokenvalid","siteSpaceId":"sitesp_DnG0y","description":"Check whether a confidential token is registered and valid in the on-chain registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"KBVLUBkf49YWHKePM0vU","title":"useMetadata","pathname":"/protocol/sdk/api-references/react/usemetadata","siteSpaceId":"sitesp_DnG0y","description":"Get token name, symbol, and decimals in one call.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"ZJK1U4XExMxpBN3ywKJ9","title":"useActivityFeed","pathname":"/protocol/sdk/api-references/react/useactivityfeed","siteSpaceId":"sitesp_DnG0y","description":"Parse event logs into a classified, optionally decrypted activity feed.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"ITW18NkTTtg8EaJbrdeO","title":"useZamaSDK","pathname":"/protocol/sdk/api-references/react/usezamasdk","siteSpaceId":"sitesp_DnG0y","description":"Hook to access the raw ZamaSDK instance from ZamaProvider context.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"stC2t5tQ5SEXHJUFOIa2","title":"useToken","pathname":"/protocol/sdk/api-references/react/usetoken","siteSpaceId":"sitesp_DnG0y","description":"Hook to get a memoized Token instance for a given address.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"fE4yvQZ8I7VV7HJw7O1i","title":"useReadonlyToken","pathname":"/protocol/sdk/api-references/react/usereadonlytoken","siteSpaceId":"sitesp_DnG0y","description":"Hook to get a memoized ReadonlyToken instance for read-only access.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"qjyT3jmihXJy6aQ2TP6d","title":"useEncrypt","pathname":"/protocol/sdk/api-references/react/useencrypt","siteSpaceId":"sitesp_DnG0y","description":"Low-level mutation hook that encrypts a plaintext value using the relayer's FHE engine.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"tGtb8P5aBkNArZWhoLAN","title":"useUserDecrypt","pathname":"/protocol/sdk/api-references/react/useuserdecrypt","siteSpaceId":"sitesp_DnG0y","description":"Query hook that automatically decrypts FHE handles once credentials are available via useAllow.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"jm94vu2QVasZ8zTz535p","title":"useGenerateKeypair","pathname":"/protocol/sdk/api-references/react/usegeneratekeypair","siteSpaceId":"sitesp_DnG0y","description":"Low-level mutation hook that generates a fresh FHE keypair via the relayer.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"FoiWt5RyG3yBwiqF7OSZ","title":"useDelegateDecryption","pathname":"/protocol/sdk/api-references/react/usedelegatedecryption","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that grants FHE decryption rights for a token to another address.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"RVfY3pYlNxcpvhqidAHW","title":"useRevokeDelegation","pathname":"/protocol/sdk/api-references/react/userevokedelegation","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that revokes FHE decryption delegation for a token.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"q7l1TcSG52A5nBKu5Mxb","title":"useDelegationStatus","pathname":"/protocol/sdk/api-references/react/usedelegationstatus","siteSpaceId":"sitesp_DnG0y","description":"Query hook that checks whether a decryption delegation is active between two addresses.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"sqhw1iLT4zdBAW6o0mWp","title":"useDecryptBalanceAs","pathname":"/protocol/sdk/api-references/react/usedecryptbalanceas","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that decrypts another user's confidential balance as a delegate.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"lf80uOGJcHbX1UkspAtF","title":"useBatchDecryptBalancesAs","pathname":"/protocol/sdk/api-references/react/usebatchdecryptbalancesas","siteSpaceId":"sitesp_DnG0y","description":"Mutation hook that decrypts confidential balances across multiple tokens as a delegate.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"bvohmhheLZ3lzt2D8Cir","title":"Query keys","pathname":"/protocol/sdk/api-references/react/query-keys","siteSpaceId":"sitesp_DnG0y","description":"Reference for the zamaQueryKeys factory used for manual React Query cache control.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"B7za8kzWHjoSrSLf57fF","title":"Overview","pathname":"/protocol/sdk/alpha","siteSpaceId":"sitesp_huvWq","description":"TypeScript SDK for confidential smart contracts — shield, transfer, and unshield tokens with Fully Homomorphic Encryption.","breadcrumbs":[{"label":"Zama SDK"}]},{"id":"8uLn06TOPs16x5OoTF60","title":"Quick start","pathname":"/protocol/sdk/alpha/getting-started/quick-start","siteSpaceId":"sitesp_huvWq","description":"Get from zero to a working confidential transfer in under 5 minutes.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Getting Started"}]},{"id":"s6xsD18fe9FmFjA4h1Ay","title":"First confidential dApp","pathname":"/protocol/sdk/alpha/getting-started/first-confidential-dapp","siteSpaceId":"sitesp_huvWq","description":"End-to-end tutorial building a token dashboard with React, wagmi, and the Zama React SDK.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Getting Started"}]},{"id":"FAuuUPlOfvJPsxRjQPfg","title":"Wallet & exchange integration","pathname":"/protocol/sdk/alpha/getting-started/wallet-exchange-integration","siteSpaceId":"sitesp_huvWq","description":"How wallets and exchanges support ERC-7984 confidential tokens with the Zama SDK — display balances, build transfers, manage operators, and wrap/unwrap between ERC-20 and confidential form.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Getting Started"}]},{"id":"nne2BZAit2mXfZzoqfPK","title":"Build with an LLM","pathname":"/protocol/sdk/alpha/getting-started/build-with-an-llm","siteSpaceId":"sitesp_huvWq","description":"How to give coding agents high-quality Zama SDK context through llms files and the external Zama Protocol Claude Code skill.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Getting Started"}]},{"id":"LiMGCKKcn7ud2no5vh7W","title":"Configuration","pathname":"/protocol/sdk/alpha/guides/configuration","siteSpaceId":"sitesp_huvWq","description":"How to configure the SDK with createConfig — chains, relayers, provider, signer, and storage.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"loE9r18MOPrNGk1PROL6","title":"Authentication","pathname":"/protocol/sdk/alpha/guides/authentication","siteSpaceId":"sitesp_huvWq","description":"How to authenticate with the relayer using a backend proxy or a direct API key.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"UkokgaMJU2l5oTRClBeB","title":"Relayer API keys","pathname":"/protocol/sdk/alpha/guides/relayer-api-keys","siteSpaceId":"sitesp_huvWq","description":"How to obtain, configure, and securely manage your Zama Relayer API key.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"f7GOTkNzhKhMxAjHO0qf","title":"Shield tokens","pathname":"/protocol/sdk/alpha/guides/shield-tokens","siteSpaceId":"sitesp_huvWq","description":"How to convert public ERC-20 tokens into their confidential form.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"18cbXGoDS0IdYCLZLdcx","title":"Transfer privately","pathname":"/protocol/sdk/alpha/guides/transfer-privately","siteSpaceId":"sitesp_huvWq","description":"How to send confidential tokens so the amount stays hidden on-chain.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"zXx5sMpdMsGOdtl4Y0sx","title":"Unshield tokens","pathname":"/protocol/sdk/alpha/guides/unshield-tokens","siteSpaceId":"sitesp_huvWq","description":"Convert confidential tokens back to public ERC-20 by unshielding them.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"4ZphH4ykL399gxHNrH33","title":"Check balances","pathname":"/protocol/sdk/alpha/guides/check-balances","siteSpaceId":"sitesp_huvWq","description":"Decrypt and read confidential token balances using the SDK and React hooks.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"mphomQifHo6R1sIvmqun","title":"Handle errors","pathname":"/protocol/sdk/alpha/guides/handle-errors","siteSpaceId":"sitesp_huvWq","description":"Catch, match, and recover from SDK errors in your application.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"0IWJGTyoomYm1mCPo6YM","title":"Node.js backend","pathname":"/protocol/sdk/alpha/guides/node-js-backend","siteSpaceId":"sitesp_huvWq","description":"How to use the SDK in a Node.js server environment with worker threads and per-request isolation.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"ez0Xq82oZVrm7MkU7tBy","title":"Web extensions","pathname":"/protocol/sdk/alpha/guides/web-extensions","siteSpaceId":"sitesp_huvWq","description":"How to use the SDK in MV3 Chrome extensions with persistent permit storage.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"FEqa2kxRnLwFr7EzZOYL","title":"Local development","pathname":"/protocol/sdk/alpha/guides/local-development","siteSpaceId":"sitesp_huvWq","description":"How to use the cleartext relayer for local Hardhat nodes and custom chain deployments without a KMS or gateway.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"Ofr7IanaFTQTOwAZsHBj","title":"Next.js SSR","pathname":"/protocol/sdk/alpha/guides/nextjs-ssr","siteSpaceId":"sitesp_huvWq","description":"How to use the SDK with Next.js and server-side rendering frameworks.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"vWnjVG1endP95zdQnelb","title":"Operator approvals","pathname":"/protocol/sdk/alpha/guides/operator-approvals","siteSpaceId":"sitesp_huvWq","description":"How to approve another address to act on your confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"EANdfhrNbwnoo8dGaBnV","title":"Delegated decryption","pathname":"/protocol/sdk/alpha/guides/delegated-decryption","siteSpaceId":"sitesp_huvWq","description":"Grant another address the right to decrypt confidential balances, then read those balances as a delegate.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"o82QUydV3tK9kPjzy2Z8","title":"Encrypt & decrypt","pathname":"/protocol/sdk/alpha/guides/encrypt-decrypt","siteSpaceId":"sitesp_huvWq","description":"How to encrypt values and decrypt FHE encrypted values for custom confidential smart contracts that are not wrapped ERC-20 tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Guides"}]},{"id":"JHTFkIl5L1tr0sDjwp4d","title":"SDK reference","pathname":"/protocol/sdk/alpha/api-references/sdk","siteSpaceId":"sitesp_huvWq","description":"","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"}]},{"id":"ucohmOQQhcjEKerGgA9m","title":"ZamaSDK","pathname":"/protocol/sdk/alpha/api-references/sdk/zamasdk","siteSpaceId":"sitesp_huvWq","description":"Entry point for all confidential contract operations.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"HVX3wwpaiB0HWSMaqDPY","title":"Token","pathname":"/protocol/sdk/alpha/api-references/sdk/token","siteSpaceId":"sitesp_huvWq","description":"Read/write interface for an ERC-7984 confidential token — balances, transfers, operator approvals.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"AlFbLADYdd9K8iNoStiZ","title":"WrappedToken","pathname":"/protocol/sdk/alpha/api-references/sdk/wrappedtoken","siteSpaceId":"sitesp_huvWq","description":"ERC-7984 ERC-20 wrapper interface — shield, unshield, allowance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"taQlwBPA3VkwbNialxcF","title":"WrappersRegistry","pathname":"/protocol/sdk/alpha/api-references/sdk/wrappersregistry","siteSpaceId":"sitesp_huvWq","description":"Query the on-chain token wrappers registry — list pairs, look up tokens, and validate confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"SeX19HoqwN70MpakNWJQ","title":"RelayerWeb","pathname":"/protocol/sdk/alpha/api-references/sdk/relayerweb","siteSpaceId":"sitesp_huvWq","description":"Browser relayer that runs FHE operations in a Web Worker via WASM.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"lA1higSR08zniqH9j2T5","title":"RelayerNode","pathname":"/protocol/sdk/alpha/api-references/sdk/relayernode","siteSpaceId":"sitesp_huvWq","description":"Node.js relayer that runs FHE operations in native worker threads.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"AdNXhgzmnlG2LCLHLNl7","title":"RelayerCleartext","pathname":"/protocol/sdk/alpha/api-references/sdk/relayercleartext","siteSpaceId":"sitesp_huvWq","description":"Development relayer that operates in cleartext mode without FHE, KMS, or gateway dependencies.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"7mHdAh2cyYw6XsGn4Lw6","title":"GenericProvider","pathname":"/protocol/sdk/alpha/api-references/sdk/genericprovider","siteSpaceId":"sitesp_huvWq","description":"Interface that all provider adapters must implement for read-only chain access.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"EeVaZoXuc3gNmhCI0G6Q","title":"GenericSigner","pathname":"/protocol/sdk/alpha/api-references/sdk/genericsigner","siteSpaceId":"sitesp_huvWq","description":"Interface that all signer adapters must implement for the SDK to interact with wallets.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"H1Ew3NKTEpWWpWgGnibO","title":"ViemProvider","pathname":"/protocol/sdk/alpha/api-references/sdk/viemprovider","siteSpaceId":"sitesp_huvWq","description":"Provider adapter that wraps a viem PublicClient for read-only chain access.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"mw3vDOFy8geueZReGnTf","title":"ViemSigner","pathname":"/protocol/sdk/alpha/api-references/sdk/viemsigner","siteSpaceId":"sitesp_huvWq","description":"Signer adapter that wraps a viem WalletClient for wallet operations.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"KxX8z76Zex0cNpGpHHJD","title":"EthersProvider","pathname":"/protocol/sdk/alpha/api-references/sdk/ethersprovider","siteSpaceId":"sitesp_huvWq","description":"Provider adapter that wraps an ethers Provider or EIP-1193 source for read-only chain access.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"RCXvz7LTSx0MxJkuhgn5","title":"EthersSigner","pathname":"/protocol/sdk/alpha/api-references/sdk/etherssigner","siteSpaceId":"sitesp_huvWq","description":"Signer adapter that wraps an ethers Signer or EIP-1193 source for wallet operations.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"KDHNHHE2DuVzR7MnLO0s","title":"GenericStorage","pathname":"/protocol/sdk/alpha/api-references/sdk/genericstorage","siteSpaceId":"sitesp_huvWq","description":"Interface for async key-value storage used to persist FHE keypairs and signed permits.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"IqtVZwHXX1Xbkso3GdWh","title":"Errors","pathname":"/protocol/sdk/alpha/api-references/sdk/errors","siteSpaceId":"sitesp_huvWq","description":"All SDK error classes, codes, and the matchZamaError utility.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"ufzfDogzWE2dlfngEewl","title":"Contract builders","pathname":"/protocol/sdk/alpha/api-references/sdk/contract-builders","siteSpaceId":"sitesp_huvWq","description":"Low-level builders that return raw contract call configs for viem, ethers, or custom execution layers.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"OTQBKAqUTO2HUrLrngm5","title":"FheArtifactCache","pathname":"/protocol/sdk/alpha/api-references/sdk/fheartifactcache","siteSpaceId":"sitesp_huvWq","description":"Persistent cache for FHE public key and public parameters, avoiding re-downloads across sessions.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"mDGVKZb9uJFV1WA3jy4F","title":"Event decoders","pathname":"/protocol/sdk/alpha/api-references/sdk/event-decoders","siteSpaceId":"sitesp_huvWq","description":"Decode on-chain logs into typed event objects.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"8q0FU22WVlXE6a6sYnpE","title":"Delegations","pathname":"/protocol/sdk/alpha/api-references/sdk/delegation","siteSpaceId":"sitesp_huvWq","description":"On-chain delegation management — grant, revoke, and query decryption delegation rights via the ACL contract.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"mEVxuCrFdZyGxWESD4sB","title":"Network presets","pathname":"/protocol/sdk/alpha/api-references/sdk/network-presets","siteSpaceId":"sitesp_huvWq","description":"Pre-configured chain objects and legacy network configs for supported networks.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"SDK reference"}]},{"id":"7f9VhPNAYyfLQi87aB8P","title":"React reference","pathname":"/protocol/sdk/alpha/api-references/react","siteSpaceId":"sitesp_huvWq","description":"","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"}]},{"id":"5NDxHXY2zMFTYhy3IGFl","title":"ZamaProvider","pathname":"/protocol/sdk/alpha/api-references/react/zamaprovider","siteSpaceId":"sitesp_huvWq","description":"Context provider that supplies the Zama SDK to all descendant hooks.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"B9fiTGF8XwCprfuGN8K2","title":"useConfidentialBalance","pathname":"/protocol/sdk/alpha/api-references/react/useconfidentialbalance","siteSpaceId":"sitesp_huvWq","description":"Decrypt a single token's confidential balance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"pdxq1yNmUakyotNq19Dm","title":"useConfidentialBalances","pathname":"/protocol/sdk/alpha/api-references/react/useconfidentialbalances","siteSpaceId":"sitesp_huvWq","description":"Decrypt and poll multiple tokens' confidential balances in a single query.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"Ep6dpk5V90AW1IjSeIWP","title":"useConfidentialTransfer","pathname":"/protocol/sdk/alpha/api-references/react/useconfidentialtransfer","siteSpaceId":"sitesp_huvWq","description":"Send confidential ERC-20 tokens privately.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"a29Sr057d4SybAPvEHV3","title":"useConfidentialTransferFrom","pathname":"/protocol/sdk/alpha/api-references/react/useconfidentialtransferfrom","siteSpaceId":"sitesp_huvWq","description":"Transfer confidential tokens on behalf of an owner who approved you as an operator.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"hWiSCc76rq7tau1zOlvV","title":"useShield","pathname":"/protocol/sdk/alpha/api-references/react/useshield","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that shields public ERC-20 tokens into confidential form.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"R9Pt7IvdN6tQITZjISw4","title":"useUnshield","pathname":"/protocol/sdk/alpha/api-references/react/useunshield","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that unshields confidential tokens back to public ERC-20.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"sukNGXltBMWPIhRk4ISm","title":"useUnshieldAll","pathname":"/protocol/sdk/alpha/api-references/react/useunshieldall","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that unshields the entire confidential balance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"VERVfXy1EI7QgkcF1ET5","title":"useResumeUnshield","pathname":"/protocol/sdk/alpha/api-references/react/useresumeunshield","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that resumes an unshield interrupted between unwrap and finalize steps.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"KkIqtPcsOd8Pf0MMd03s","title":"useUnwrap","pathname":"/protocol/sdk/alpha/api-references/react/useunwrap","siteSpaceId":"sitesp_huvWq","description":"Low-level mutation hook that requests an unwrap for a specific amount.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"UWZEZboEYsbquHSm7H87","title":"useUnwrapAll","pathname":"/protocol/sdk/alpha/api-references/react/useunwrapall","siteSpaceId":"sitesp_huvWq","description":"Low-level mutation hook that requests an unwrap for the full confidential balance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"4wplYdUvbnw6fxSSLcw6","title":"useFinalizeUnwrap","pathname":"/protocol/sdk/alpha/api-references/react/usefinalizeunwrap","siteSpaceId":"sitesp_huvWq","description":"Low-level mutation hook that finalizes an unwrap with the decryption proof.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"hjKEsCoSvtiBbsA5rLBX","title":"useGrantPermit","pathname":"/protocol/sdk/alpha/api-references/react/usegrantpermit","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that signs an EIP-712 message authorizing decryption of confidential encrypted values for any contract.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"bgLM0fQtil5NEUWai09f","title":"useHasPermit","pathname":"/protocol/sdk/alpha/api-references/react/usehaspermit","siteSpaceId":"sitesp_huvWq","description":"Query hook that checks whether stored permits cover the requested contract addresses.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"QOeFTkGRtSDEjGLQi0PC","title":"useRevokePermits","pathname":"/protocol/sdk/alpha/api-references/react/userevokepermits","siteSpaceId":"sitesp_huvWq","description":"Revoke FHE permits for specific contract addresses, or all permits at once.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"ykgx9oBuYbod1EF56S3k","title":"useClearCredentials","pathname":"/protocol/sdk/alpha/api-references/react/useclearcredentials","siteSpaceId":"sitesp_huvWq","description":"Wipe the FHE keypair and all permits for the connected wallet.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"Hw4Z5STU6VPRinxMyOnb","title":"useConfidentialSetOperator","pathname":"/protocol/sdk/alpha/api-references/react/useconfidentialsetoperator","siteSpaceId":"sitesp_huvWq","description":"Approve an operator to act on your confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"sF3vujuGoRpF3NqU8Hlf","title":"useConfidentialIsOperator","pathname":"/protocol/sdk/alpha/api-references/react/useconfidentialisoperator","siteSpaceId":"sitesp_huvWq","description":"Check if a spender is an approved operator for a holder's confidential tokens.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"lnwPkWX7Z3vRLUaN7xnn","title":"useUnderlyingAllowance","pathname":"/protocol/sdk/alpha/api-references/react/useunderlyingallowance","siteSpaceId":"sitesp_huvWq","description":"Read the ERC-20 allowance of the underlying public token for the wrapper contract.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"oqPjJICL0WpBTQFFZmj4","title":"useWrapperDiscovery","pathname":"/protocol/sdk/alpha/api-references/react/usewrapperdiscovery","siteSpaceId":"sitesp_huvWq","description":"Find the confidential wrapper contract address for an ERC-20 token via the on-chain registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"MAEEdudHVp7xTO02u35A","title":"useWrappersRegistryAddress","pathname":"/protocol/sdk/alpha/api-references/react/usewrappersregistryaddress","siteSpaceId":"sitesp_huvWq","description":"Resolve the wrappers registry contract address for the current chain.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"1wYVAyg54a3ptiNcPizD","title":"useListPairs","pathname":"/protocol/sdk/alpha/api-references/react/uselistpairs","siteSpaceId":"sitesp_huvWq","description":"Fetch paginated token wrapper pairs from the on-chain registry, with optional metadata enrichment.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"YRaq5T5tJzOMn9jD1hXM","title":"useTokenPairsRegistry","pathname":"/protocol/sdk/alpha/api-references/react/usetokenpairsregistry","siteSpaceId":"sitesp_huvWq","description":"Fetch all token wrapper pairs from the on-chain registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"IMhJevGCVf2qqPIcRqDH","title":"useTokenPairsLength","pathname":"/protocol/sdk/alpha/api-references/react/usetokenpairslength","siteSpaceId":"sitesp_huvWq","description":"Get the total number of token wrapper pairs in the registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"eTbCrHcsMP5YdO7nDQJ3","title":"useTokenPairsSlice","pathname":"/protocol/sdk/alpha/api-references/react/usetokenpairsslice","siteSpaceId":"sitesp_huvWq","description":"Fetch a range of token wrapper pairs from the registry by index.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"ryrbPYI3tgpU8qeYYJuP","title":"useTokenPair","pathname":"/protocol/sdk/alpha/api-references/react/usetokenpair","siteSpaceId":"sitesp_huvWq","description":"Fetch a single token wrapper pair by index from the registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"a7ZCKjLu7zwVGnXzjpPI","title":"useConfidentialTokenAddress","pathname":"/protocol/sdk/alpha/api-references/react/useconfidentialtokenaddress","siteSpaceId":"sitesp_huvWq","description":"Look up the confidential token address for a given plain ERC-20 token.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"3pH6zua8ENYZGaqeL5VV","title":"useTokenAddress","pathname":"/protocol/sdk/alpha/api-references/react/usetokenaddress","siteSpaceId":"sitesp_huvWq","description":"Reverse lookup -- find the plain ERC-20 address for a given confidential token.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"8Mr3tUCz0Rorg6M833BQ","title":"useIsConfidentialTokenValid","pathname":"/protocol/sdk/alpha/api-references/react/useisconfidentialtokenvalid","siteSpaceId":"sitesp_huvWq","description":"Check whether a confidential token is registered and valid in the on-chain registry.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"KBVLUBkf49YWHKePM0vU","title":"useMetadata","pathname":"/protocol/sdk/alpha/api-references/react/usemetadata","siteSpaceId":"sitesp_huvWq","description":"Get token name, symbol, and decimals in one call.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"ITW18NkTTtg8EaJbrdeO","title":"useZamaSDK","pathname":"/protocol/sdk/alpha/api-references/react/usezamasdk","siteSpaceId":"sitesp_huvWq","description":"Hook to access the raw ZamaSDK instance from ZamaProvider context.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"stC2t5tQ5SEXHJUFOIa2","title":"useToken","pathname":"/protocol/sdk/alpha/api-references/react/usetoken","siteSpaceId":"sitesp_huvWq","description":"Hook returning a memoised Token instance for a given address.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"MShffX7W4awOoeWknP4o","title":"useWrappedToken","pathname":"/protocol/sdk/alpha/api-references/react/usewrappedtoken","siteSpaceId":"sitesp_huvWq","description":"React hook returning a memoised WrappedToken instance.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"qjyT3jmihXJy6aQ2TP6d","title":"useEncrypt","pathname":"/protocol/sdk/alpha/api-references/react/useencrypt","siteSpaceId":"sitesp_huvWq","description":"Low-level mutation hook that encrypts a plaintext value using the relayer's FHE engine.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"HQMPsZHEHIbw5gWJZZPk","title":"useDecryptValues","pathname":"/protocol/sdk/alpha/api-references/react/usedecryptvalues","siteSpaceId":"sitesp_huvWq","description":"Query hook that automatically decrypts FHE encrypted values once credentials are available via useGrantPermit.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"FoiWt5RyG3yBwiqF7OSZ","title":"useDelegateDecryption","pathname":"/protocol/sdk/alpha/api-references/react/usedelegatedecryption","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that grants FHE decryption rights for a token to another address.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"RVfY3pYlNxcpvhqidAHW","title":"useRevokeDelegation","pathname":"/protocol/sdk/alpha/api-references/react/userevokedelegation","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that revokes FHE decryption delegation for a token.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"q7l1TcSG52A5nBKu5Mxb","title":"useDelegationStatus","pathname":"/protocol/sdk/alpha/api-references/react/usedelegationstatus","siteSpaceId":"sitesp_huvWq","description":"Query hook that checks whether a decryption delegation is active between two addresses.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"sqhw1iLT4zdBAW6o0mWp","title":"useDecryptBalanceAs","pathname":"/protocol/sdk/alpha/api-references/react/usedecryptbalanceas","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that decrypts another user's confidential balance as a delegate.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"lf80uOGJcHbX1UkspAtF","title":"useBatchDecryptBalancesAs","pathname":"/protocol/sdk/alpha/api-references/react/usebatchdecryptbalancesas","siteSpaceId":"sitesp_huvWq","description":"Mutation hook that decrypts confidential balances across multiple tokens as a delegate.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"bvohmhheLZ3lzt2D8Cir","title":"Query keys","pathname":"/protocol/sdk/alpha/api-references/react/query-keys","siteSpaceId":"sitesp_huvWq","description":"Reference for the zamaQueryKeys factory used for manual React Query cache control.","breadcrumbs":[{"label":"Zama SDK"},{"label":"API References"},{"label":"React reference"}]},{"id":"aVvOkRwSe8JKdJD8cY5A","title":"Architecture","pathname":"/protocol/sdk/alpha/concepts/architecture","siteSpaceId":"sitesp_huvWq","description":"","breadcrumbs":[{"label":"Zama SDK"},{"label":"Concepts"}]},{"id":"ZBUWxluhftmz8jU7pRbM","title":"Permit model","pathname":"/protocol/sdk/alpha/concepts/permit-model","siteSpaceId":"sitesp_huvWq","description":"How EIP-712 signed permits authorize FHE decryption for specific contracts.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Concepts"}]},{"id":"4P5oiTH8zdm4d00mzDTB","title":"Security model","pathname":"/protocol/sdk/alpha/concepts/security-model","siteSpaceId":"sitesp_huvWq","description":"Threat model, trust assumptions, and security architecture of the Zama SDK.","breadcrumbs":[{"label":"Zama SDK"},{"label":"Concepts"}]},{"id":"ZnnQmBlsWfwe7Fx7HLmP","title":"FHE counter","pathname":"/protocol/examples","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"}]},{"id":"mmLIYYQzfOgLofS7Aj9h","title":"FHE Operations","pathname":"/protocol/examples/basic/fhe-operations","siteSpaceId":"sitesp_JXN8k","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"}]},{"id":"seAR3mxZosaKNEeTbSTY","title":"Add","pathname":"/protocol/examples/basic/fhe-operations/fheadd","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"FHE Operations"}]},{"id":"G2IblajCelbGnSOcCrnp","title":"If then else","pathname":"/protocol/examples/basic/fhe-operations/fheifthenelse","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"FHE Operations"}]},{"id":"cD1P90WHczEzxZTx9GUo","title":"Encryption","pathname":"/protocol/examples/basic/encryption","siteSpaceId":"sitesp_JXN8k","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"}]},{"id":"X1rRPtvvfv8eIEQ1KRzO","title":"Encrypt single value","pathname":"/protocol/examples/basic/encryption/fhe-encrypt-single-value","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"Encryption"}]},{"id":"UhOFIRYXYqwCsJMCzwOa","title":"Encrypt multiple values","pathname":"/protocol/examples/basic/encryption/fhe-encrypt-multiple-values","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"Encryption"}]},{"id":"mKru9QB0PF09kFFKiPcs","title":"Decryption","pathname":"/protocol/examples/basic/decryption","siteSpaceId":"sitesp_JXN8k","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"}]},{"id":"DyKiuoCy31ySVKzDTlGd","title":"User decrypt single value","pathname":"/protocol/examples/basic/decryption/fhe-user-decrypt-single-value","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"Decryption"}]},{"id":"f0pnvBJYC0QE4tjmgNxu","title":"User decrypt multiple values","pathname":"/protocol/examples/basic/decryption/fhe-user-decrypt-multiple-values","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"Decryption"}]},{"id":"0jlifOLDRXfBV9U1i1aB","title":"Public Decrypt single value","pathname":"/protocol/examples/basic/decryption/heads-or-tails","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"Decryption"}]},{"id":"Cq3NTqQ3o4geYKen3Vo1","title":"Public Decrypt multiple values","pathname":"/protocol/examples/basic/decryption/highest-die-roll","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Basic"},{"label":"Decryption"}]},{"id":"gsRHCRWHDMihlQaQ3BZo","title":"Library installation and overview","pathname":"/protocol/examples/openzeppelin-confidential-contracts/openzeppelin","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"OpenZeppelin confidential contracts"}]},{"id":"qjmsfGfYN4PLt1a1M7Mu","title":"ERC7984 Standard","pathname":"/protocol/examples/openzeppelin-confidential-contracts/erc7984","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"OpenZeppelin confidential contracts"}]},{"id":"r5haipKhsO5Nw3dkMDcm","title":"ERC-20 to Wrapped ERC-7984","pathname":"/protocol/examples/openzeppelin-confidential-contracts/erc7984/erc7984erc20wrappermock","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"OpenZeppelin confidential contracts"},{"label":"ERC7984 Standard"}]},{"id":"EbQKBwYLQ0fkurUqoHLO","title":"Swap ERC7984 to ERC20","pathname":"/protocol/examples/openzeppelin-confidential-contracts/erc7984/swaperc7984toerc20","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"OpenZeppelin confidential contracts"},{"label":"ERC7984 Standard"}]},{"id":"CBb749Txb5KDw9HUksRH","title":"Vesting Wallet","pathname":"/protocol/examples/openzeppelin-confidential-contracts/vesting-wallet","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"OpenZeppelin confidential contracts"}]},{"id":"050Wk1GPet8WFvkjGVxW","title":"Integration guide for Wallets and Exchanges","pathname":"/protocol/examples/openzeppelin-confidential-contracts/integration-guide","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"OpenZeppelin confidential contracts"}]},{"id":"bXNChDuQWDIX8xwtbzHu","title":"Sealed-Bid Auction","pathname":"/protocol/examples/auctions/sealed-bid-auction","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Auctions"}]},{"id":"ryGQ6lnv1trAS0oxrklV","title":"Tutorial","pathname":"/protocol/examples/auctions/sealed-bid-auction/sealed-bid-auction-tutorial","siteSpaceId":"sitesp_JXN8k","description":"","breadcrumbs":[{"label":"Code Examples"},{"label":"Auctions"},{"label":"Sealed-Bid Auction"}]},{"id":"KKnZKHoRt6X08mhgumkh","title":"Zama Protocol Change Log","pathname":"/protocol/changelog","siteSpaceId":"sitesp_4YyIx","description":"This page tracks upcoming and ongoing milestones for the Zama Protocol and related releases. It updates as new versions are planned and deployed.","breadcrumbs":[{"label":"Changelog"}]},{"id":"3uvIqZIwdFWhPo5bGXEp","title":"MiCA","pathname":"/protocol/mica","siteSpaceId":"sitesp_rhMNK","description":"","breadcrumbs":[{"label":"MiCA"}]}]}