mirror of
https://github.com/3lLobo/zkAuth.git
synced 2026-04-22 03:00:12 -04:00
393 lines
64 KiB
JSON
393 lines
64 KiB
JSON
{
|
|
"_format": "hh-sol-artifact-1",
|
|
"contractName": "ZkSocialRecoveryWallet",
|
|
"sourceName": "contracts/ZkSocialRecoveryWallet.sol",
|
|
"abi": [
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_hashCheckVerifier",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_ownerPasswordHash",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address[]",
|
|
"name": "_trustees",
|
|
"type": "address[]"
|
|
},
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "_passwordHashes",
|
|
"type": "uint256[]"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_thresholdForRecovery",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_root",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "_otpVerifier",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "constructor"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "newProposedOwner",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "trusteeInitializer",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "currRecoveryRound",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "NewRecoveryProcedure",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "Owner",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "RecoveryRound",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "RecoveryCancelled",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "oldOwner",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "newOwner",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "RecoveryRound",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "RecoveryExecuted",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "trustee",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "RecoveryRound",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "VotedInRecovery",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "a",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2][2]",
|
|
"name": "b",
|
|
"type": "uint256[2][2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "c",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[1]",
|
|
"name": "Input",
|
|
"type": "uint256[1]"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "recoveryRoundNumber",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "cancelRecovery",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "currentRecoveryNumber",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "a",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2][2]",
|
|
"name": "b",
|
|
"type": "uint256[2][2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "c",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[1]",
|
|
"name": "Input",
|
|
"type": "uint256[1]"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "recoveryRoundNumber",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "executeRecoveryChange",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "a",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2][2]",
|
|
"name": "b",
|
|
"type": "uint256[2][2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "c",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "input",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "callee",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "value",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "executeTxn",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "result",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "onERC721Received",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bytes4",
|
|
"name": "",
|
|
"type": "bytes4"
|
|
}
|
|
],
|
|
"stateMutability": "pure",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "owner",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "a",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2][2]",
|
|
"name": "b",
|
|
"type": "uint256[2][2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "c",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[1]",
|
|
"name": "Input",
|
|
"type": "uint256[1]"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "newOwner",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "startRecovery",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "a",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2][2]",
|
|
"name": "b",
|
|
"type": "uint256[2][2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[2]",
|
|
"name": "c",
|
|
"type": "uint256[2]"
|
|
},
|
|
{
|
|
"internalType": "uint256[1]",
|
|
"name": "Input",
|
|
"type": "uint256[1]"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "recoveryRoundNumber",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "voteInRecovery",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "success",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"stateMutability": "payable",
|
|
"type": "receive"
|
|
}
|
|
],
|
|
"bytecode": "0x60806040523480156200001157600080fd5b50604051620042923803806200429283398181016040528101906200003791906200071f565b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1603620000a9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000a09062000871565b60405180910390fd5b8351855114620000f0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000e790620008e3565b60405180910390fd5b828551101562000137576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200012e906200097b565b60405180910390fd5b866000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508560028190555060005b8551811015620003825760056000878381518110620001e657620001e56200099d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161562000279576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002709062000a1c565b60405180910390fd5b6001600560008884815181106200029557620002946200099d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508481815181106200030457620003036200099d565b5b6020026020010151600660008884815181106200032657620003256200099d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080620003799062000a6d565b915050620001c2565b508260038190555081816040516200039a9062000412565b620003a792919062000adc565b604051809103906000f080158015620003c4573d6000803e3d6000fd5b50600960016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050505062000b09565b610a9380620037ff83390190565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004618262000434565b9050919050565b620004738162000454565b81146200047f57600080fd5b50565b600081519050620004938162000468565b92915050565b6000819050919050565b620004ae8162000499565b8114620004ba57600080fd5b50565b600081519050620004ce81620004a3565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200052482620004d9565b810181811067ffffffffffffffff82111715620005465762000545620004ea565b5b80604052505050565b60006200055b62000420565b905062000569828262000519565b919050565b600067ffffffffffffffff8211156200058c576200058b620004ea565b5b602082029050602081019050919050565b600080fd5b6000620005b9620005b3846200056e565b6200054f565b90508083825260208201905060208402830185811115620005df57620005de6200059d565b5b835b818110156200060c5780620005f7888262000482565b845260208401935050602081019050620005e1565b5050509392505050565b600082601f8301126200062e576200062d620004d4565b5b815162000640848260208601620005a2565b91505092915050565b600067ffffffffffffffff821115620006675762000666620004ea565b5b602082029050602081019050919050565b60006200068f620006898462000649565b6200054f565b90508083825260208201905060208402830185811115620006b557620006b46200059d565b5b835b81811015620006e25780620006cd8882620004bd565b845260208401935050602081019050620006b7565b5050509392505050565b600082601f830112620007045762000703620004d4565b5b81516200071684826020860162000678565b91505092915050565b600080600080600080600060e0888a0312156200074157620007406200042a565b5b6000620007518a828b0162000482565b9750506020620007648a828b01620004bd565b965050604088015167ffffffffffffffff8111156200078857620007876200042f565b5b620007968a828b0162000616565b955050606088015167ffffffffffffffff811115620007ba57620007b96200042f565b5b620007c88a828b01620006ec565b9450506080620007db8a828b01620004bd565b93505060a0620007ee8a828b01620004bd565b92505060c0620008018a828b0162000482565b91505092959891949750929550565b600082825260208201905092915050565b7f5a65726f20616464726573732076657269666965720000000000000000000000600082015250565b60006200085960158362000810565b9150620008668262000821565b602082019050919050565b600060208201905081810360008301526200088c816200084a565b9050919050565b7f547275737465657320616e6420686173686573206c656e677468206469666600600082015250565b6000620008cb601f8362000810565b9150620008d88262000893565b602082019050919050565b60006020820190508181036000830152620008fe81620008bc565b9050919050565b7f5468726573686f6c642069732067726561746572207468616e206e756d62657260008201527f206f662074727573746565730000000000000000000000000000000000000000602082015250565b600062000963602c8362000810565b9150620009708262000905565b604082019050919050565b60006020820190508181036000830152620009968162000954565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4475706c6963617465207472757374656520696e206c69737400000000000000600082015250565b600062000a0460198362000810565b915062000a1182620009cc565b602082019050919050565b6000602082019050818103600083015262000a3781620009f5565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000a7a8262000499565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820362000aaf5762000aae62000a3e565b5b600182019050919050565b62000ac58162000499565b82525050565b62000ad68162000454565b82525050565b600060408201905062000af3600083018562000aba565b62000b02602083018462000acb565b9392505050565b612ce68062000b196000396000f3fe60806040526004361061007f5760003560e01c8063789bcd081161004e578063789bcd081461016b5780638da5cb5b146101a8578063b21fa1ae146101d3578063e9c4bfe7146101fc57610086565b8063037133f11461008b578063150b7a02146100c857806337dc1813146101055780634f20804b1461012e57610086565b3661008657005b600080fd5b34801561009757600080fd5b506100b260048036038101906100ad9190611d04565b610227565b6040516100bf9190611e14565b60405180910390f35b3480156100d457600080fd5b506100ef60048036038101906100ea9190611eeb565b610459565b6040516100fc9190611fa9565b60405180910390f35b34801561011157600080fd5b5061012c60048036038101906101279190612075565b61046d565b005b34801561013a57600080fd5b50610155600480360381019061015091906120f3565b6107de565b6040516101629190612180565b60405180910390f35b34801561017757600080fd5b50610192600480360381019061018d9190612075565b610e43565b60405161019f91906121b6565b60405180910390f35b3480156101b457600080fd5b506101bd611394565b6040516101ca91906121e0565b60405180910390f35b3480156101df57600080fd5b506101fa60048036038101906101f59190612075565b6113ba565b005b34801561020857600080fd5b50610211611900565b60405161021e9190612180565b60405180910390f35b60603373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146102b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102b090612258565b60405180910390fd5b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9f3402c888888886040518563ffffffff1660e01b815260040161031a9493929190612421565b6020604051808303816000875af1158015610339573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061035d9190612494565b61039c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103939061250d565b60405180910390fd5b6000808473ffffffffffffffffffffffffffffffffffffffff16846040516103c39061255e565b60006040518083038185875af1925050503d8060008114610400576040519150601f19603f3d011682016040523d82523d6000602084013e610405565b606091505b50915091508161044a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610441906125bf565b60405180910390fd5b80925050509695505050505050565b600063150b7a0260e01b9050949350505050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f490612258565b60405180910390fd5b600960009054906101000a900460ff1661054c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105439061262b565b60405180910390fd5b8484848460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b81526004016105af94939291906126cf565b602060405180830381865afa1580156105cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f09190612494565b61062f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062690612762565b60405180910390fd5b600860008560006002811061064757610646612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff16156106a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069f906127fd565b60405180910390fd5b600254866000600181106106bf576106be612782565b5b602002015114610704576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fb90612869565b60405180910390fd5b6000600960006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f500ec1d4b692d3c788bfd78a898de379cfd93ab8177575efc7593f87bd051a07866040516107879190612180565b60405180910390a2600160086000866000600281106107a9576107a8612782565b5b6020020151815260200190815260200160002060006101000a81548160ff021916908315150217905550505050505050505050565b6000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661086c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610863906128d5565b60405180910390fd5b600960009054906101000a900460ff16156108bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b390612941565b60405180910390fd5b8585858560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b815260040161091f94939291906126cf565b602060405180830381865afa15801561093c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109609190612494565b61099f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099690612762565b60405180910390fd5b60086000856000600281106109b7576109b6612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff1615610a18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0f906127fd565b60405180910390fd5b610a966040518060400160405280600c81526020017f7472757374656520686173680000000000000000000000000000000000000000815250600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611906565b610aed6040518060400160405280600581526020017f496e70757400000000000000000000000000000000000000000000000000000081525088600060018110610ae357610ae2612782565b5b6020020151611906565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205487600060018110610b4157610b40612782565b5b602002015114610b86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7d90612869565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec906129ad565b60405180910390fd5b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7990612a3f565b60405180910390fd5b60046000815480929190610c9590612a8e565b91905055506000600a600060045481526020019081526020016000209050868160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806000016000815480929190610d0b90612a8e565b919050555060018160020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f4ae23dc2e5f7892600076b48a0cfdbcc206c2aba4e323da13765339b2b8978d8600454604051610de49190612180565b60405180910390a360045495505060016008600086600060028110610e0c57610e0b612782565b5b6020020151815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505095945050505050565b6000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610ed1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec8906128d5565b60405180910390fd5b600960009054906101000a900460ff16610f20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f179061262b565b60405180910390fd5b8585858560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b8152600401610f8394939291906126cf565b602060405180830381865afa158015610fa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc49190612494565b611003576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ffa90612762565b60405180910390fd5b600860008560006002811061101b5761101a612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff161561107c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611073906127fd565b60405180910390fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054876000600181106110d0576110cf612782565b5b602002015114611115576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110c90612869565b60405180910390fd5b6111536040518060400160405280600581526020017f48657265310000000000000000000000000000000000000000000000000000008152506119a2565b600454861115611198576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118f90612b22565b60405180910390fd5b6111d66040518060400160405280600481526020017f48657265000000000000000000000000000000000000000000000000000000008152506119a2565b6000600a600088815260200190815260200160002090508060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561127c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127390612b8e565b60405180910390fd5b80600001600081548092919061129190612a8e565b919050555060018160020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600195503373ffffffffffffffffffffffffffffffffffffffff167f7f7906f4f6e51fac746e81b4885d9775eb44445765139416bcd03b12b262968a8860405161133a9190612180565b60405180910390a2506001600860008660006002811061135d5761135c612782565b5b6020020151815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505095945050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611446576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143d906128d5565b60405180910390fd5b600960009054906101000a900460ff16611495576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148c9061262b565b60405180910390fd5b8484848460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b81526004016114f894939291906126cf565b602060405180830381865afa158015611515573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115399190612494565b611578576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156f90612762565b60405180910390fd5b60086000856000600281106115905761158f612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff16156115f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e8906127fd565b60405180910390fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548660006001811061164557611644612782565b5b60200201511461168a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168190612869565b60405180910390fd5b6000600a60008781526020019081526020016000209050600354816000015410156116ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116e190612bfa565b60405180910390fd5b60018160010160146101000a81548160ff0219169083151502179055506000600960006101000a81548160ff0219169083151502179055506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160076000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fcbaa7c7c351e2d5655fc08d9c383adcf4736af160c800b53df1f1dd221f826c8896040516118a79190612180565b60405180910390a35050600160086000866000600281106118cb576118ca612782565b5b6020020151815260200190815260200160002060006101000a81548160ff021916908315150217905550505050505050505050565b60045481565b61199e828260405160240161191c929190612c5e565b6040516020818303038152906040527fb60e72cc000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611a3b565b5050565b611a38816040516024016119b69190612c8e565b6040516020818303038152906040527f41304fac000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611a3b565b50565b60008151905060006a636f6e736f6c652e6c6f679050602083016000808483855afa5050505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611ac682611a7d565b810181811067ffffffffffffffff82111715611ae557611ae4611a8e565b5b80604052505050565b6000611af8611a64565b9050611b048282611abd565b919050565b600067ffffffffffffffff821115611b2457611b23611a8e565b5b602082029050919050565b600080fd5b6000819050919050565b611b4781611b34565b8114611b5257600080fd5b50565b600081359050611b6481611b3e565b92915050565b6000611b7d611b7884611b09565b611aee565b90508060208402830185811115611b9757611b96611b2f565b5b835b81811015611bc05780611bac8882611b55565b845260208401935050602081019050611b99565b5050509392505050565b600082601f830112611bdf57611bde611a78565b5b6002611bec848285611b6a565b91505092915050565b600067ffffffffffffffff821115611c1057611c0f611a8e565b5b602082029050919050565b6000611c2e611c2984611bf5565b611aee565b90508060408402830185811115611c4857611c47611b2f565b5b835b81811015611c715780611c5d8882611bca565b845260208401935050604081019050611c4a565b5050509392505050565b600082601f830112611c9057611c8f611a78565b5b6002611c9d848285611c1b565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611cd182611ca6565b9050919050565b611ce181611cc6565b8114611cec57600080fd5b50565b600081359050611cfe81611cd8565b92915050565b6000806000806000806101808789031215611d2257611d21611a6e565b5b6000611d3089828a01611bca565b9650506040611d4189828a01611c7b565b95505060c0611d5289828a01611bca565b945050610100611d6489828a01611bca565b935050610140611d7689828a01611cef565b925050610160611d8889828a01611b55565b9150509295509295509295565b600081519050919050565b600082825260208201905092915050565b60005b83811015611dcf578082015181840152602081019050611db4565b60008484015250505050565b6000611de682611d95565b611df08185611da0565b9350611e00818560208601611db1565b611e0981611a7d565b840191505092915050565b60006020820190508181036000830152611e2e8184611ddb565b905092915050565b600080fd5b600067ffffffffffffffff821115611e5657611e55611a8e565b5b611e5f82611a7d565b9050602081019050919050565b82818337600083830152505050565b6000611e8e611e8984611e3b565b611aee565b905082815260208101848484011115611eaa57611ea9611e36565b5b611eb5848285611e6c565b509392505050565b600082601f830112611ed257611ed1611a78565b5b8135611ee2848260208601611e7b565b91505092915050565b60008060008060808587031215611f0557611f04611a6e565b5b6000611f1387828801611cef565b9450506020611f2487828801611cef565b9350506040611f3587828801611b55565b925050606085013567ffffffffffffffff811115611f5657611f55611a73565b5b611f6287828801611ebd565b91505092959194509250565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611fa381611f6e565b82525050565b6000602082019050611fbe6000830184611f9a565b92915050565b600067ffffffffffffffff821115611fdf57611fde611a8e565b5b602082029050919050565b6000611ffd611ff884611fc4565b611aee565b9050806020840283018581111561201757612016611b2f565b5b835b81811015612040578061202c8882611b55565b845260208401935050602081019050612019565b5050509392505050565b600082601f83011261205f5761205e611a78565b5b600161206c848285611fea565b91505092915050565b6000806000806000610140868803121561209257612091611a6e565b5b60006120a088828901611bca565b95505060406120b188828901611c7b565b94505060c06120c288828901611bca565b9350506101006120d48882890161204a565b9250506101206120e688828901611b55565b9150509295509295909350565b600080600080600061014086880312156121105761210f611a6e565b5b600061211e88828901611bca565b955050604061212f88828901611c7b565b94505060c061214088828901611bca565b9350506101006121528882890161204a565b92505061012061216488828901611cef565b9150509295509295909350565b61217a81611b34565b82525050565b60006020820190506121956000830184612171565b92915050565b60008115159050919050565b6121b08161219b565b82525050565b60006020820190506121cb60008301846121a7565b92915050565b6121da81611cc6565b82525050565b60006020820190506121f560008301846121d1565b92915050565b600082825260208201905092915050565b7f4e6f74204f776e65720000000000000000000000000000000000000000000000600082015250565b60006122426009836121fb565b915061224d8261220c565b602082019050919050565b6000602082019050818103600083015261227181612235565b9050919050565b600060029050919050565b600081905092915050565b6000819050919050565b6122a181611b34565b82525050565b60006122b38383612298565b60208301905092915050565b6000602082019050919050565b6122d581612278565b6122df8184612283565b92506122ea8261228e565b8060005b8381101561231b57815161230287826122a7565b965061230d836122bf565b9250506001810190506122ee565b505050505050565b600060029050919050565b600081905092915050565b6000819050919050565b600081905092915050565b61235781612278565b6123618184612343565b925061236c8261228e565b8060005b8381101561239d57815161238487826122a7565b965061238f836122bf565b925050600181019050612370565b505050505050565b60006123b1838361234e565b60408301905092915050565b6000602082019050919050565b6123d381612323565b6123dd818461232e565b92506123e882612339565b8060005b8381101561241957815161240087826123a5565b965061240b836123bd565b9250506001810190506123ec565b505050505050565b60006101408201905061243760008301876122cc565b61244460408301866123ca565b61245160c08301856122cc565b61245f6101008301846122cc565b95945050505050565b6124718161219b565b811461247c57600080fd5b50565b60008151905061248e81612468565b92915050565b6000602082840312156124aa576124a9611a6e565b5b60006124b88482850161247f565b91505092915050565b7f50726f6f66206661696c65640000000000000000000000000000000000000000600082015250565b60006124f7600c836121fb565b9150612502826124c1565b602082019050919050565b60006020820190508181036000830152612526816124ea565b9050919050565b600081905092915050565b50565b600061254860008361252d565b915061255382612538565b600082019050919050565b60006125698261253b565b9150819050919050565b7f65787465726e616c2063616c6c20726576657274656400000000000000000000600082015250565b60006125a96016836121fb565b91506125b482612573565b602082019050919050565b600060208201905081810360008301526125d88161259c565b9050919050565b7f5265636f7665727920686173206e6f7420737461727465640000000000000000600082015250565b60006126156018836121fb565b9150612620826125df565b602082019050919050565b6000602082019050818103600083015261264481612608565b9050919050565b600060019050919050565b600081905092915050565b6000819050919050565b6000602082019050919050565b6126818161264b565b61268b8184612656565b925061269682612661565b8060005b838110156126c75781516126ae87826122a7565b96506126b98361266b565b92505060018101905061269a565b505050505050565b6000610120820190506126e560008301876122cc565b6126f260408301866123ca565b6126ff60c08301856122cc565b61270d610100830184612678565b95945050505050565b7f50617373776f72642070726f6f6620696e76616c696421000000000000000000600082015250565b600061274c6017836121fb565b915061275782612716565b602082019050919050565b6000602082019050818103600083015261277b8161273f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f50726f6f66206973207573656400000000000000000000000000000000000000600082015250565b60006127e7600d836121fb565b91506127f2826127b1565b602082019050919050565b60006020820190508181036000830152612816816127da565b9050919050565b7f57726f6e672070617373776f7264000000000000000000000000000000000000600082015250565b6000612853600e836121fb565b915061285e8261281d565b602082019050919050565b6000602082019050818103600083015261288281612846565b9050919050565b7f4e6f742054727573746565000000000000000000000000000000000000000000600082015250565b60006128bf600b836121fb565b91506128ca82612889565b602082019050919050565b600060208201905081810360008301526128ee816128b2565b9050919050565b7f5265636f7665727920697320696e2070726f6365737300000000000000000000600082015250565b600061292b6016836121fb565b9150612936826128f5565b602082019050919050565b6000602082019050818103600083015261295a8161291e565b9050919050565b7f5a65726f20616464726573730000000000000000000000000000000000000000600082015250565b6000612997600c836121fb565b91506129a282612961565b602082019050919050565b600060208201905081810360008301526129c68161298a565b9050919050565b7f4f776e65722073686f756c64206e6f742062652061207061737420616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612a296022836121fb565b9150612a34826129cd565b604082019050919050565b60006020820190508181036000830152612a5881612a1c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612a9982611b34565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612acb57612aca612a5f565b5b600182019050919050565b7f57726f6e67205265636f7665727920726f756e64206e756d6265720000000000600082015250565b6000612b0c601b836121fb565b9150612b1782612ad6565b602082019050919050565b60006020820190508181036000830152612b3b81612aff565b9050919050565b7f5472757374656520616c726561647920766f7465640000000000000000000000600082015250565b6000612b786015836121fb565b9150612b8382612b42565b602082019050919050565b60006020820190508181036000830152612ba781612b6b565b9050919050565b7f566f746573204e6f7420656e6f75676800000000000000000000000000000000600082015250565b6000612be46010836121fb565b9150612bef82612bae565b602082019050919050565b60006020820190508181036000830152612c1381612bd7565b9050919050565b600081519050919050565b6000612c3082612c1a565b612c3a81856121fb565b9350612c4a818560208601611db1565b612c5381611a7d565b840191505092915050565b60006040820190508181036000830152612c788185612c25565b9050612c876020830184612171565b9392505050565b60006020820190508181036000830152612ca88184612c25565b90509291505056fea26469706673582212208bb482f1e3df70e626773449de492a6aeffb10d0f2e43ac2d938be2cc64c001764736f6c6343000811003360c060405234801561001057600080fd5b50604051610a93380380610a938339818101604052810190610032919061010e565b81608081815250508073ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050505061014e565b600080fd5b6000819050919050565b61008d8161007a565b811461009857600080fd5b50565b6000815190506100aa81610084565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006100db826100b0565b9050919050565b6100eb816100d0565b81146100f657600080fd5b50565b600081519050610108816100e2565b92915050565b6000806040838503121561012557610124610075565b5b60006101338582860161009b565b9250506020610144858286016100f9565b9150509250929050565b60805160a051610921610172600039600061013a01526000606401526109216000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063a9f3402c14610030575b600080fd5b61004a6004803603810190610045919061047f565b610060565b6040516100579190610503565b60405180910390f35b60007f0000000000000000000000000000000000000000000000000000000000000000826000600281106100975761009661051e565b5b6020020151146100dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100d3906105aa565b60405180910390fd5b600054826001600281106100f3576100f261051e565b5b602002015111610138576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161012f90610616565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f5c9d69e868686866040518563ffffffff1660e01b815260040161019794939291906107df565b602060405180830381865afa1580156101b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d89190610852565b610217576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161020e906108cb565b60405180910390fd5b8160016002811061022b5761022a61051e565b5b602002015160008190555060019050949350505050565b6000604051905090565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61029f82610256565b810181811067ffffffffffffffff821117156102be576102bd610267565b5b80604052505050565b60006102d1610242565b90506102dd8282610296565b919050565b600067ffffffffffffffff8211156102fd576102fc610267565b5b602082029050919050565b600080fd5b6000819050919050565b6103208161030d565b811461032b57600080fd5b50565b60008135905061033d81610317565b92915050565b6000610356610351846102e2565b6102c7565b905080602084028301858111156103705761036f610308565b5b835b818110156103995780610385888261032e565b845260208401935050602081019050610372565b5050509392505050565b600082601f8301126103b8576103b7610251565b5b60026103c5848285610343565b91505092915050565b600067ffffffffffffffff8211156103e9576103e8610267565b5b602082029050919050565b6000610407610402846103ce565b6102c7565b9050806040840283018581111561042157610420610308565b5b835b8181101561044a578061043688826103a3565b845260208401935050604081019050610423565b5050509392505050565b600082601f83011261046957610468610251565b5b60026104768482856103f4565b91505092915050565b600080600080610140858703121561049a5761049961024c565b5b60006104a8878288016103a3565b94505060406104b987828801610454565b93505060c06104ca878288016103a3565b9250506101006104dc878288016103a3565b91505092959194509250565b60008115159050919050565b6104fd816104e8565b82525050565b600060208201905061051860008301846104f4565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082825260208201905092915050565b7f496e636f6f7265637420726f6f74000000000000000000000000000000000000600082015250565b6000610594600e8361054d565b915061059f8261055e565b602082019050919050565b600060208201905081810360008301526105c381610587565b9050919050565b7f4f6c642050726f6f660000000000000000000000000000000000000000000000600082015250565b600061060060098361054d565b915061060b826105ca565b602082019050919050565b6000602082019050818103600083015261062f816105f3565b9050919050565b600060029050919050565b600081905092915050565b6000819050919050565b61065f8161030d565b82525050565b60006106718383610656565b60208301905092915050565b6000602082019050919050565b61069381610636565b61069d8184610641565b92506106a88261064c565b8060005b838110156106d95781516106c08782610665565b96506106cb8361067d565b9250506001810190506106ac565b505050505050565b600060029050919050565b600081905092915050565b6000819050919050565b600081905092915050565b61071581610636565b61071f8184610701565b925061072a8261064c565b8060005b8381101561075b5781516107428782610665565b965061074d8361067d565b92505060018101905061072e565b505050505050565b600061076f838361070c565b60408301905092915050565b6000602082019050919050565b610791816106e1565b61079b81846106ec565b92506107a6826106f7565b8060005b838110156107d75781516107be8782610763565b96506107c98361077b565b9250506001810190506107aa565b505050505050565b6000610140820190506107f5600083018761068a565b6108026040830186610788565b61080f60c083018561068a565b61081d61010083018461068a565b95945050505050565b61082f816104e8565b811461083a57600080fd5b50565b60008151905061084c81610826565b92915050565b6000602082840312156108685761086761024c565b5b60006108768482850161083d565b91505092915050565b7f496e76616c69642070726f6f6600000000000000000000000000000000000000600082015250565b60006108b5600d8361054d565b91506108c08261087f565b602082019050919050565b600060208201905081810360008301526108e4816108a8565b905091905056fea2646970667358221220457e741bf8e201e9069441bdd0e48064867d24150340f2c088789ebd006e770d64736f6c63430008110033",
|
|
"deployedBytecode": "0x60806040526004361061007f5760003560e01c8063789bcd081161004e578063789bcd081461016b5780638da5cb5b146101a8578063b21fa1ae146101d3578063e9c4bfe7146101fc57610086565b8063037133f11461008b578063150b7a02146100c857806337dc1813146101055780634f20804b1461012e57610086565b3661008657005b600080fd5b34801561009757600080fd5b506100b260048036038101906100ad9190611d04565b610227565b6040516100bf9190611e14565b60405180910390f35b3480156100d457600080fd5b506100ef60048036038101906100ea9190611eeb565b610459565b6040516100fc9190611fa9565b60405180910390f35b34801561011157600080fd5b5061012c60048036038101906101279190612075565b61046d565b005b34801561013a57600080fd5b50610155600480360381019061015091906120f3565b6107de565b6040516101629190612180565b60405180910390f35b34801561017757600080fd5b50610192600480360381019061018d9190612075565b610e43565b60405161019f91906121b6565b60405180910390f35b3480156101b457600080fd5b506101bd611394565b6040516101ca91906121e0565b60405180910390f35b3480156101df57600080fd5b506101fa60048036038101906101f59190612075565b6113ba565b005b34801561020857600080fd5b50610211611900565b60405161021e9190612180565b60405180910390f35b60603373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146102b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102b090612258565b60405180910390fd5b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9f3402c888888886040518563ffffffff1660e01b815260040161031a9493929190612421565b6020604051808303816000875af1158015610339573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061035d9190612494565b61039c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103939061250d565b60405180910390fd5b6000808473ffffffffffffffffffffffffffffffffffffffff16846040516103c39061255e565b60006040518083038185875af1925050503d8060008114610400576040519150601f19603f3d011682016040523d82523d6000602084013e610405565b606091505b50915091508161044a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610441906125bf565b60405180910390fd5b80925050509695505050505050565b600063150b7a0260e01b9050949350505050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f490612258565b60405180910390fd5b600960009054906101000a900460ff1661054c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105439061262b565b60405180910390fd5b8484848460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b81526004016105af94939291906126cf565b602060405180830381865afa1580156105cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f09190612494565b61062f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062690612762565b60405180910390fd5b600860008560006002811061064757610646612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff16156106a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069f906127fd565b60405180910390fd5b600254866000600181106106bf576106be612782565b5b602002015114610704576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fb90612869565b60405180910390fd5b6000600960006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f500ec1d4b692d3c788bfd78a898de379cfd93ab8177575efc7593f87bd051a07866040516107879190612180565b60405180910390a2600160086000866000600281106107a9576107a8612782565b5b6020020151815260200190815260200160002060006101000a81548160ff021916908315150217905550505050505050505050565b6000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661086c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610863906128d5565b60405180910390fd5b600960009054906101000a900460ff16156108bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b390612941565b60405180910390fd5b8585858560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b815260040161091f94939291906126cf565b602060405180830381865afa15801561093c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109609190612494565b61099f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099690612762565b60405180910390fd5b60086000856000600281106109b7576109b6612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff1615610a18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0f906127fd565b60405180910390fd5b610a966040518060400160405280600c81526020017f7472757374656520686173680000000000000000000000000000000000000000815250600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611906565b610aed6040518060400160405280600581526020017f496e70757400000000000000000000000000000000000000000000000000000081525088600060018110610ae357610ae2612782565b5b6020020151611906565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205487600060018110610b4157610b40612782565b5b602002015114610b86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7d90612869565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec906129ad565b60405180910390fd5b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7990612a3f565b60405180910390fd5b60046000815480929190610c9590612a8e565b91905055506000600a600060045481526020019081526020016000209050868160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806000016000815480929190610d0b90612a8e565b919050555060018160020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f4ae23dc2e5f7892600076b48a0cfdbcc206c2aba4e323da13765339b2b8978d8600454604051610de49190612180565b60405180910390a360045495505060016008600086600060028110610e0c57610e0b612782565b5b6020020151815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505095945050505050565b6000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610ed1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec8906128d5565b60405180910390fd5b600960009054906101000a900460ff16610f20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f179061262b565b60405180910390fd5b8585858560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b8152600401610f8394939291906126cf565b602060405180830381865afa158015610fa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc49190612494565b611003576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ffa90612762565b60405180910390fd5b600860008560006002811061101b5761101a612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff161561107c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611073906127fd565b60405180910390fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054876000600181106110d0576110cf612782565b5b602002015114611115576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110c90612869565b60405180910390fd5b6111536040518060400160405280600581526020017f48657265310000000000000000000000000000000000000000000000000000008152506119a2565b600454861115611198576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118f90612b22565b60405180910390fd5b6111d66040518060400160405280600481526020017f48657265000000000000000000000000000000000000000000000000000000008152506119a2565b6000600a600088815260200190815260200160002090508060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561127c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127390612b8e565b60405180910390fd5b80600001600081548092919061129190612a8e565b919050555060018160020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600195503373ffffffffffffffffffffffffffffffffffffffff167f7f7906f4f6e51fac746e81b4885d9775eb44445765139416bcd03b12b262968a8860405161133a9190612180565b60405180910390a2506001600860008660006002811061135d5761135c612782565b5b6020020151815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505095945050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611446576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143d906128d5565b60405180910390fd5b600960009054906101000a900460ff16611495576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148c9061262b565b60405180910390fd5b8484848460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343753b4d858585856040518563ffffffff1660e01b81526004016114f894939291906126cf565b602060405180830381865afa158015611515573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115399190612494565b611578576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156f90612762565b60405180910390fd5b60086000856000600281106115905761158f612782565b5b6020020151815260200190815260200160002060009054906101000a900460ff16156115f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e8906127fd565b60405180910390fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548660006001811061164557611644612782565b5b60200201511461168a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168190612869565b60405180910390fd5b6000600a60008781526020019081526020016000209050600354816000015410156116ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116e190612bfa565b60405180910390fd5b60018160010160146101000a81548160ff0219169083151502179055506000600960006101000a81548160ff0219169083151502179055506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160076000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fcbaa7c7c351e2d5655fc08d9c383adcf4736af160c800b53df1f1dd221f826c8896040516118a79190612180565b60405180910390a35050600160086000866000600281106118cb576118ca612782565b5b6020020151815260200190815260200160002060006101000a81548160ff021916908315150217905550505050505050505050565b60045481565b61199e828260405160240161191c929190612c5e565b6040516020818303038152906040527fb60e72cc000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611a3b565b5050565b611a38816040516024016119b69190612c8e565b6040516020818303038152906040527f41304fac000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611a3b565b50565b60008151905060006a636f6e736f6c652e6c6f679050602083016000808483855afa5050505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611ac682611a7d565b810181811067ffffffffffffffff82111715611ae557611ae4611a8e565b5b80604052505050565b6000611af8611a64565b9050611b048282611abd565b919050565b600067ffffffffffffffff821115611b2457611b23611a8e565b5b602082029050919050565b600080fd5b6000819050919050565b611b4781611b34565b8114611b5257600080fd5b50565b600081359050611b6481611b3e565b92915050565b6000611b7d611b7884611b09565b611aee565b90508060208402830185811115611b9757611b96611b2f565b5b835b81811015611bc05780611bac8882611b55565b845260208401935050602081019050611b99565b5050509392505050565b600082601f830112611bdf57611bde611a78565b5b6002611bec848285611b6a565b91505092915050565b600067ffffffffffffffff821115611c1057611c0f611a8e565b5b602082029050919050565b6000611c2e611c2984611bf5565b611aee565b90508060408402830185811115611c4857611c47611b2f565b5b835b81811015611c715780611c5d8882611bca565b845260208401935050604081019050611c4a565b5050509392505050565b600082601f830112611c9057611c8f611a78565b5b6002611c9d848285611c1b565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611cd182611ca6565b9050919050565b611ce181611cc6565b8114611cec57600080fd5b50565b600081359050611cfe81611cd8565b92915050565b6000806000806000806101808789031215611d2257611d21611a6e565b5b6000611d3089828a01611bca565b9650506040611d4189828a01611c7b565b95505060c0611d5289828a01611bca565b945050610100611d6489828a01611bca565b935050610140611d7689828a01611cef565b925050610160611d8889828a01611b55565b9150509295509295509295565b600081519050919050565b600082825260208201905092915050565b60005b83811015611dcf578082015181840152602081019050611db4565b60008484015250505050565b6000611de682611d95565b611df08185611da0565b9350611e00818560208601611db1565b611e0981611a7d565b840191505092915050565b60006020820190508181036000830152611e2e8184611ddb565b905092915050565b600080fd5b600067ffffffffffffffff821115611e5657611e55611a8e565b5b611e5f82611a7d565b9050602081019050919050565b82818337600083830152505050565b6000611e8e611e8984611e3b565b611aee565b905082815260208101848484011115611eaa57611ea9611e36565b5b611eb5848285611e6c565b509392505050565b600082601f830112611ed257611ed1611a78565b5b8135611ee2848260208601611e7b565b91505092915050565b60008060008060808587031215611f0557611f04611a6e565b5b6000611f1387828801611cef565b9450506020611f2487828801611cef565b9350506040611f3587828801611b55565b925050606085013567ffffffffffffffff811115611f5657611f55611a73565b5b611f6287828801611ebd565b91505092959194509250565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611fa381611f6e565b82525050565b6000602082019050611fbe6000830184611f9a565b92915050565b600067ffffffffffffffff821115611fdf57611fde611a8e565b5b602082029050919050565b6000611ffd611ff884611fc4565b611aee565b9050806020840283018581111561201757612016611b2f565b5b835b81811015612040578061202c8882611b55565b845260208401935050602081019050612019565b5050509392505050565b600082601f83011261205f5761205e611a78565b5b600161206c848285611fea565b91505092915050565b6000806000806000610140868803121561209257612091611a6e565b5b60006120a088828901611bca565b95505060406120b188828901611c7b565b94505060c06120c288828901611bca565b9350506101006120d48882890161204a565b9250506101206120e688828901611b55565b9150509295509295909350565b600080600080600061014086880312156121105761210f611a6e565b5b600061211e88828901611bca565b955050604061212f88828901611c7b565b94505060c061214088828901611bca565b9350506101006121528882890161204a565b92505061012061216488828901611cef565b9150509295509295909350565b61217a81611b34565b82525050565b60006020820190506121956000830184612171565b92915050565b60008115159050919050565b6121b08161219b565b82525050565b60006020820190506121cb60008301846121a7565b92915050565b6121da81611cc6565b82525050565b60006020820190506121f560008301846121d1565b92915050565b600082825260208201905092915050565b7f4e6f74204f776e65720000000000000000000000000000000000000000000000600082015250565b60006122426009836121fb565b915061224d8261220c565b602082019050919050565b6000602082019050818103600083015261227181612235565b9050919050565b600060029050919050565b600081905092915050565b6000819050919050565b6122a181611b34565b82525050565b60006122b38383612298565b60208301905092915050565b6000602082019050919050565b6122d581612278565b6122df8184612283565b92506122ea8261228e565b8060005b8381101561231b57815161230287826122a7565b965061230d836122bf565b9250506001810190506122ee565b505050505050565b600060029050919050565b600081905092915050565b6000819050919050565b600081905092915050565b61235781612278565b6123618184612343565b925061236c8261228e565b8060005b8381101561239d57815161238487826122a7565b965061238f836122bf565b925050600181019050612370565b505050505050565b60006123b1838361234e565b60408301905092915050565b6000602082019050919050565b6123d381612323565b6123dd818461232e565b92506123e882612339565b8060005b8381101561241957815161240087826123a5565b965061240b836123bd565b9250506001810190506123ec565b505050505050565b60006101408201905061243760008301876122cc565b61244460408301866123ca565b61245160c08301856122cc565b61245f6101008301846122cc565b95945050505050565b6124718161219b565b811461247c57600080fd5b50565b60008151905061248e81612468565b92915050565b6000602082840312156124aa576124a9611a6e565b5b60006124b88482850161247f565b91505092915050565b7f50726f6f66206661696c65640000000000000000000000000000000000000000600082015250565b60006124f7600c836121fb565b9150612502826124c1565b602082019050919050565b60006020820190508181036000830152612526816124ea565b9050919050565b600081905092915050565b50565b600061254860008361252d565b915061255382612538565b600082019050919050565b60006125698261253b565b9150819050919050565b7f65787465726e616c2063616c6c20726576657274656400000000000000000000600082015250565b60006125a96016836121fb565b91506125b482612573565b602082019050919050565b600060208201905081810360008301526125d88161259c565b9050919050565b7f5265636f7665727920686173206e6f7420737461727465640000000000000000600082015250565b60006126156018836121fb565b9150612620826125df565b602082019050919050565b6000602082019050818103600083015261264481612608565b9050919050565b600060019050919050565b600081905092915050565b6000819050919050565b6000602082019050919050565b6126818161264b565b61268b8184612656565b925061269682612661565b8060005b838110156126c75781516126ae87826122a7565b96506126b98361266b565b92505060018101905061269a565b505050505050565b6000610120820190506126e560008301876122cc565b6126f260408301866123ca565b6126ff60c08301856122cc565b61270d610100830184612678565b95945050505050565b7f50617373776f72642070726f6f6620696e76616c696421000000000000000000600082015250565b600061274c6017836121fb565b915061275782612716565b602082019050919050565b6000602082019050818103600083015261277b8161273f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f50726f6f66206973207573656400000000000000000000000000000000000000600082015250565b60006127e7600d836121fb565b91506127f2826127b1565b602082019050919050565b60006020820190508181036000830152612816816127da565b9050919050565b7f57726f6e672070617373776f7264000000000000000000000000000000000000600082015250565b6000612853600e836121fb565b915061285e8261281d565b602082019050919050565b6000602082019050818103600083015261288281612846565b9050919050565b7f4e6f742054727573746565000000000000000000000000000000000000000000600082015250565b60006128bf600b836121fb565b91506128ca82612889565b602082019050919050565b600060208201905081810360008301526128ee816128b2565b9050919050565b7f5265636f7665727920697320696e2070726f6365737300000000000000000000600082015250565b600061292b6016836121fb565b9150612936826128f5565b602082019050919050565b6000602082019050818103600083015261295a8161291e565b9050919050565b7f5a65726f20616464726573730000000000000000000000000000000000000000600082015250565b6000612997600c836121fb565b91506129a282612961565b602082019050919050565b600060208201905081810360008301526129c68161298a565b9050919050565b7f4f776e65722073686f756c64206e6f742062652061207061737420616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612a296022836121fb565b9150612a34826129cd565b604082019050919050565b60006020820190508181036000830152612a5881612a1c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612a9982611b34565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612acb57612aca612a5f565b5b600182019050919050565b7f57726f6e67205265636f7665727920726f756e64206e756d6265720000000000600082015250565b6000612b0c601b836121fb565b9150612b1782612ad6565b602082019050919050565b60006020820190508181036000830152612b3b81612aff565b9050919050565b7f5472757374656520616c726561647920766f7465640000000000000000000000600082015250565b6000612b786015836121fb565b9150612b8382612b42565b602082019050919050565b60006020820190508181036000830152612ba781612b6b565b9050919050565b7f566f746573204e6f7420656e6f75676800000000000000000000000000000000600082015250565b6000612be46010836121fb565b9150612bef82612bae565b602082019050919050565b60006020820190508181036000830152612c1381612bd7565b9050919050565b600081519050919050565b6000612c3082612c1a565b612c3a81856121fb565b9350612c4a818560208601611db1565b612c5381611a7d565b840191505092915050565b60006040820190508181036000830152612c788185612c25565b9050612c876020830184612171565b9392505050565b60006020820190508181036000830152612ca88184612c25565b90509291505056fea26469706673582212208bb482f1e3df70e626773449de492a6aeffb10d0f2e43ac2d938be2cc64c001764736f6c63430008110033",
|
|
"linkReferences": {},
|
|
"deployedLinkReferences": {}
|
|
}
|