UNPKG

@unirep/contracts

Version:

Client library for contracts related functions which are used in UniRep protocol.

177 lines (176 loc) 8.84 kB
{ "_format": "hh-sol-artifact-1", "contractName": "MerkleTreeTest", "sourceName": "contracts/test/MerkleTreeTest.sol", "abi": [ { "inputs": [ { "internalType": "uint8", "name": "_depth", "type": "uint8" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "uint256", "name": "leaf", "type": "uint256" } ], "name": "insertLazy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "leaf", "type": "uint256" } ], "name": "insertReusable", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rootLazy", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rootReusable", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "leaf", "type": "uint256" }, { "internalType": "uint40", "name": "index", "type": "uint40" } ], "name": "updateLazy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "leaf", "type": "uint256" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "updateReusable", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b506040516105ef3803806105ef83398101604081905261002f9161011e565b6006805460ff191660ff831690811790915560405163510ff26560e01b815260006004820152602481019190915273__$1fb0d694a3c1e0496466c56a438cb5e7fb$__9063510ff2659060440160006040518083038186803b15801561009457600080fd5b505af41580156100a8573d6000803e3d6000fd5b5050604051632f4ba31b60e01b81526002600482015260ff8416602482015273__$7091785c4e08a29a969db2a728005f35a2$__9250632f4ba31b915060440160006040518083038186803b15801561010057600080fd5b505af4158015610114573d6000803e3d6000fd5b5050505050610148565b60006020828403121561013057600080fd5b815160ff8116811461014157600080fd5b9392505050565b610498806101576000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80635517cab8116100505780635517cab8146100b55780637f4e4fbc146100c8578063a7cd46d5146100d057600080fd5b80630b16cbdf146100775780631d5e96011461008d578063471df55e146100a2575b600080fd5b6003545b60405190815260200160405180910390f35b6100a061009b3660046103d4565b6100e3565b005b6100a06100b03660046103ed565b610167565b6100a06100c33660046103d4565b610207565b61007b61029f565b6100a06100de36600461040f565b610340565b6040517e081944000000000000000000000000000000000000000000000000000000008152600060048201526024810182905273__$1fb0d694a3c1e0496466c56a438cb5e7fb$__90620819449060440160006040518083038186803b15801561014c57600080fd5b505af4158015610160573d6000803e3d6000fd5b5050505050565b6040517ffb348dfd00000000000000000000000000000000000000000000000000000000815260026004820152602481018390526044810182905273__$7091785c4e08a29a969db2a728005f35a2$__9063fb348dfd90606401602060405180830381865af41580156101de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102029190610449565b505050565b6040517f226ab5d4000000000000000000000000000000000000000000000000000000008152600260048201526024810182905273__$7091785c4e08a29a969db2a728005f35a2$__9063226ab5d490604401602060405180830381865af4158015610277573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061029b9190610449565b5050565b6006546040517ff330445500000000000000000000000000000000000000000000000000000000815260006004820181905260ff909216602482015273__$1fb0d694a3c1e0496466c56a438cb5e7fb$__9063f330445590604401602060405180830381865af4158015610317573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033b9190610449565b905090565b6040517f2cbda923000000000000000000000000000000000000000000000000000000008152600060048201526024810183905264ffffffffff8216604482015273__$1fb0d694a3c1e0496466c56a438cb5e7fb$__90632cbda9239060640160006040518083038186803b1580156103b857600080fd5b505af41580156103cc573d6000803e3d6000fd5b505050505050565b6000602082840312156103e657600080fd5b5035919050565b6000806040838503121561040057600080fd5b50508035926020909101359150565b6000806040838503121561042257600080fd5b82359150602083013564ffffffffff8116811461043e57600080fd5b809150509250929050565b60006020828403121561045b57600080fd5b505191905056fea26469706673582212204f71ba8f0156d8ae6c789b57041ee961fc0d90117740841adda2fb2b5f23dd6f64736f6c63430008130033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c80635517cab8116100505780635517cab8146100b55780637f4e4fbc146100c8578063a7cd46d5146100d057600080fd5b80630b16cbdf146100775780631d5e96011461008d578063471df55e146100a2575b600080fd5b6003545b60405190815260200160405180910390f35b6100a061009b3660046103d4565b6100e3565b005b6100a06100b03660046103ed565b610167565b6100a06100c33660046103d4565b610207565b61007b61029f565b6100a06100de36600461040f565b610340565b6040517e081944000000000000000000000000000000000000000000000000000000008152600060048201526024810182905273__$1fb0d694a3c1e0496466c56a438cb5e7fb$__90620819449060440160006040518083038186803b15801561014c57600080fd5b505af4158015610160573d6000803e3d6000fd5b5050505050565b6040517ffb348dfd00000000000000000000000000000000000000000000000000000000815260026004820152602481018390526044810182905273__$7091785c4e08a29a969db2a728005f35a2$__9063fb348dfd90606401602060405180830381865af41580156101de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102029190610449565b505050565b6040517f226ab5d4000000000000000000000000000000000000000000000000000000008152600260048201526024810182905273__$7091785c4e08a29a969db2a728005f35a2$__9063226ab5d490604401602060405180830381865af4158015610277573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061029b9190610449565b5050565b6006546040517ff330445500000000000000000000000000000000000000000000000000000000815260006004820181905260ff909216602482015273__$1fb0d694a3c1e0496466c56a438cb5e7fb$__9063f330445590604401602060405180830381865af4158015610317573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033b9190610449565b905090565b6040517f2cbda923000000000000000000000000000000000000000000000000000000008152600060048201526024810183905264ffffffffff8216604482015273__$1fb0d694a3c1e0496466c56a438cb5e7fb$__90632cbda9239060640160006040518083038186803b1580156103b857600080fd5b505af41580156103cc573d6000803e3d6000fd5b505050505050565b6000602082840312156103e657600080fd5b5035919050565b6000806040838503121561040057600080fd5b50508035926020909101359150565b6000806040838503121561042257600080fd5b82359150602083013564ffffffffff8116811461043e57600080fd5b809150509250929050565b60006020828403121561045b57600080fd5b505191905056fea26469706673582212204f71ba8f0156d8ae6c789b57041ee961fc0d90117740841adda2fb2b5f23dd6f64736f6c63430008130033", "linkReferences": { "contracts/libraries/LazyMerkleTree.sol": { "LazyMerkleTree": [ { "length": 20, "start": 95 }, { "length": 20, "start": 623 }, { "length": 20, "start": 1076 }, { "length": 20, "start": 1242 } ] }, "contracts/libraries/ReusableMerkleTree.sol": { "ReusableMerkleTree": [ { "length": 20, "start": 201 }, { "length": 20, "start": 763 }, { "length": 20, "start": 916 } ] } }, "deployedLinkReferences": { "contracts/libraries/LazyMerkleTree.sol": { "LazyMerkleTree": [ { "length": 20, "start": 280 }, { "length": 20, "start": 733 }, { "length": 20, "start": 899 } ] }, "contracts/libraries/ReusableMerkleTree.sol": { "ReusableMerkleTree": [ { "length": 20, "start": 420 }, { "length": 20, "start": 573 } ] } } }