@verified-network/verified-sdk 1.6.2 → 1.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/abi/custody/Vault.json +591 -591
- package/dist/abi/loans/compound/VerifiedMarkets.json +2291 -1978
- package/dist/contractAddress/index.js +2 -2
- package/package.json +1 -1
|
@@ -430,12 +430,12 @@
|
|
|
430
430
|
"type": "function"
|
|
431
431
|
}
|
|
432
432
|
],
|
|
433
|
-
"metadata": "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"}],\"name\":\"removeParticipant\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getVaults\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_txid\",\"type\":\"uint256\"}],\"name\":\"checkQuorum\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_shard\",\"type\":\"string\"}],\"name\":\"addParticipant\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"}],\"name\":\"createVault\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_tx\",\"type\":\"uint256\"},{\"name\":\"_pin\",\"type\":\"uint256\"}],\"name\":\"signTransaction\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_txid\",\"type\":\"uint256\"}],\"name\":\"getShards\",\"outputs\":[{\"name\":\"\",\"type\":\"string[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"}],\"name\":\"promptSignatures\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_transferee\",\"type\":\"address\"}],\"name\":\"transferVault\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_minParticipants\",\"type\":\"uint256\"}],\"name\":\"defineQuorum\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_pin\",\"type\":\"uint256\"}],\"name\":\"confirmParticipant\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_pin\",\"type\":\"uint256\"}],\"name\":\"getCreator\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"creator\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"participant\",\"type\":\"bytes32\"}],\"name\":\"NewParticipant\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"creator\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"participant\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"txid\",\"type\":\"uint256\"}],\"name\":\"NewTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"creator\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"participant\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"txid\",\"type\":\"uint256\"}],\"name\":\"SignTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"addParticipant(bytes32,string,bytes32,string)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"vault participant's username, eg participant@email.com\\r\",\"_shard\":\"the private key shard of the participant\\r\"}},\"checkQuorum(bytes32,string,bytes32,uint256)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"vault participant's username, eg participant@email.com\\r\",\"_txid\":\"transaction identifier\\r\"}},\"confirmParticipant(bytes32,string,bytes32,uint256)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"the vault's participant (eg, participant@email.com)\\r\",\"_pin\":\"the PIN number of the participant\\r\"}},\"createVault(bytes32,string)\":{\"params\":{\"_creator\":\"vault creator's username, eg, creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\"}},\"defineQuorum(bytes32,string,uint256)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_minParticipants\":\"the minimum number of co-signers\\r\"}},\"getCreator(bytes32,uint256)\":{\"params\":{\"_creator\":\"the vault creator (eg, creator@email.com)\\r\"},\"return\":\"the vault creator's unique ID\\r\"},\"getShards(bytes32,string,uint256)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_txid\":\"transaction identifier \\r\"}},\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"promptSignatures(bytes32,string)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\"}},\"removeParticipant(bytes32,string,bytes32)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"vault participant's username, eg participant@email.com\\r\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"signTransaction(bytes32,string,bytes32,uint256,uint256)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"the vault's participant (eg, participant@email.com)\\r\",\"_pin\":\"the PIN number of the signer (participant)\\r\",\"_tx\":\"transaction identifier\\r\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"transferVault(bytes32,string,address)\":{\"params\":{\"_creator\":\"vault to transfer\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_transferee\":\"address of the new vault operator\\r\"}}}},\"userdoc\":{\"methods\":{\"addParticipant(bytes32,string,bytes32,string)\":{\"notice\":\"This function adds a participant to a vault that belongs to its creator\\r\"},\"checkQuorum(bytes32,string,bytes32,uint256)\":{\"notice\":\"This function lets the creator check if quorum has been achieved for a particular transaction\\r\"},\"confirmParticipant(bytes32,string,bytes32,uint256)\":{\"notice\":\"This function confirms a participant in the vault when the participant sends its private key shard and PIN\\r\"},\"createVault(bytes32,string)\":{\"notice\":\"This function creates a vault for the creator\\r\"},\"defineQuorum(bytes32,string,uint256)\":{\"notice\":\"This function defines the number of participants required to co-sign a transaction\\r\"},\"getCreator(bytes32,uint256)\":{\"notice\":\"This function returns the vault creator's unique ID (eg, Google/APNS messaging token)\\r\"},\"getShards(bytes32,string,uint256)\":{\"notice\":\"This function gets the shard for a participant\\r\"},\"getVaults()\":{\"notice\":\"This function returns list of vault creators\\r\"},\"promptSignatures(bytes32,string)\":{\"notice\":\"This function prompts participants to co-sign a transaction on the vault (ie, the creator's address secured by the quorum of participants)\\r\"},\"removeParticipant(bytes32,string,bytes32)\":{\"notice\":\"This function removes a participant in a vault that belongs to its creator\\r\"},\"signTransaction(bytes32,string,bytes32,uint256,uint256)\":{\"notice\":\"This function lets a participant co-sign a transaction\\r\"},\"transferVault(bytes32,string,address)\":{\"notice\":\"This function transfers a vault from the transferor (msg.sender) to transferee\\r\"}}}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Vault.sol\":\"Vault\"},\"evmVersion\":\"petersburg\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x3491510fa4862af1a43f6c860d9cf7392240196540cd3c0eea79d374d419c5a1\",\"urls\":[\"bzzr://5cddbf3b74b775a8670757a6b8e108dac17dac20253f35f4c729e9cb6bea4ed3\"]},\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzzr://b4c855b32d75f2a4969bfbd530b6934b69f12f28584b3746967e1ca64e024bd9\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0x9bfec92e36234ecc99b5d37230acb6cd1f99560233753162204104a4897e8721\",\"urls\":[\"bzzr://f75d88b16fe25a9e19b3512691c496e2bb6d8451bc9a636196c4e17ca9b40201\"]},\"project:/contracts/IVault.sol\":{\"keccak256\":\"0x4b738220cb322b7e7faa99f85df5f589adfe566e3c14f3b1c822505d2fc3a5f5\",\"urls\":[\"bzzr://e8f52d43059b62b1dce42a5f5dfd02c588996f83039d81586a3a27a358963fbb\"]},\"project:/contracts/Vault.sol\":{\"keccak256\":\"0xb3b38ae7ca8a2841325f7fad6402f110df0584bc818152218484df79da6d98fb\",\"urls\":[\"bzzr://e8091817dea6462512a996d63af55700dbc071e7b855357618cdc1a4373731c3\"]}},\"version\":1}",
|
|
434
|
-
"bytecode": "0x60806040523480156200001157600080fd5b5062000028336200002e60201b62000d8d1760201c565b620001bb565b600054610100900460ff1680620000505750620000506200013360201b60201c565b806200005f575060005460ff16155b620000a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000098906200019a565b60405180910390fd5b600054610100900460ff16158015620000cd576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a380156200012f576000805461ff00191690555b5050565b303b1590565b600062000148602e83620001b2565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b60208082528101620001ac8162000139565b92915050565b90815260200190565b611ed480620001cb6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063afa7777a116100a2578063dbcc0ef611610071578063dbcc0ef614610207578063e70eedb01461021a578063f2fde38b1461022d578063f62d871814610240578063fcae7efd146102535761010b565b8063afa7777a146101ae578063b418cd88146101c1578063c4d66de8146101e1578063d29da2a7146101f45761010b565b806388a563a7116100de57806388a563a71461016b5780638c4b3bcd1461017e5780638da5cb5b146101915780638f32d59b146101a65761010b565b80633136abd31461011057806344d00f8214610125578063715018a61461014357806378632fb21461014b575b600080fd5b61012361011e3660046117b3565b610273565b005b61012d6103c7565b60405161013a9190611d4c565b60405180910390f35b610123610429565b61015e6101593660046118aa565b61049a565b60405161013a9190611d6e565b610123610179366004611811565b61062d565b61012361018c3660046116f3565b610785565b61019961080f565b60405161013a9190611d3e565b61015e61081e565b6101236101bc366004611928565b610844565b6101d46101cf3660046117b3565b610a79565b60405161013a9190611d5d565b6101236101ef3660046116cd565b610d8d565b6101236102023660046116f3565b610e63565b610123610215366004611749565b61105d565b6101236102283660046117b3565b6111e2565b61012361023b3660046116cd565b6112ab565b61012361024e3660046118aa565b6112de565b6102666102613660046119b8565b6113c9565b60405161013a9190611dbf565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516102bb9250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926102ed929101611d32565b604051602081830303815290604052805190602001201461032c57604051600160e51b62461bcd02815260040161032390611e10565b60405180910390fd5b6000868152606a60209081526040808320868452909152902054156103bf576000868152606960209081526040808320606a8352818420878552909252909120548154811061037757fe5b60009182526020808320909101829055878252606c8152604080832086845290915281206103a491611534565b6000868152606b602090815260408083208684529091528120555b505050505050565b3360009081526067602090815260409182902080548351818402810184019094528084526060939283018282801561041e57602002820191906000526020600020905b81548152602001906001019080831161040a575b505050505090505b90565b61043161081e565b61045057604051600160e51b62461bcd02815260040161032390611de0565b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b60008585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516104e49250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610516929101611d32565b604051602081830303815290604052805190602001201461054c57604051600160e51b62461bcd02815260040161032390611e10565b6000888152606b6020908152604080832088845290915290205461056f57600080fd5b6000805b60008a8152606e602052604090205481101561060b5760008a8152606e602052604090208054879190839081106105a657fe5b90600052602060002090600202016000015414156106035760008a8152606d6020908152604080832054606e9092529091208054839081106105e457fe5b9060005260206000209060020201600101805490501061060357600191505b600101610573565b50801561061c576001935050610622565b60009350505b505095945050505050565b8585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516106759250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926106a7929101611d32565b60405160208183030381529060405280519060200120146106dd57604051600160e51b62461bcd02815260040161032390611e10565b6000888152606c602090815260408083208884529091529020610701908585611578565b508488146107425760008881526069602081815260408084208054606a84528286208b87528452918520829055928252600181018355918352909120018590555b7faa6e23bdac31ae314e8eec6a579fd0418f7b5f0bca74e9ef11e78373cec74dd58886604051610773929190611d7c565b60405180910390a15050505050505050565b6000838152606960205260409020541561079e57600080fd5b336000908152606760209081526040808320805460018101825590845282842001869055858352606890915290206107d7908383611578565b50505060008181526069602081815260408084208054606a845282862084529185208290559282526001810183559183529091200155565b6033546001600160a01b031690565b6033546000906001600160a01b03166108356114a5565b6001600160a01b031614905090565b8285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161088c9250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926108be929101611d32565b60405160208183030381529060405280519060200120146108f457604051600160e51b62461bcd02815260040161032390611e10565b6000888152606b60209081526040808320888452909152902054831461091957600080fd5b60005b6000898152606e6020526040902054811015610a45576000898152606e6020526040902080548691908390811061094f57fe5b9060005260206000209060020201600001541415610a3d5760005b60008a8152606e6020526040902080548390811061098457fe5b906000526020600020906002020160010180549050811015610a3b5760008a8152606e602052604090208054839081106109ba57fe5b906000526020600020906002020160010181815481106109d657fe5b906000526020600020015460001415610a335760008a8152606e60205260409020805488919084908110610a0657fe5b90600052602060002090600202016001018281548110610a2257fe5b600091825260209091200155610a3b565b60010161096a565b505b60010161091c565b507faff273650e3a4ea06a9841f55dd08ea83018f0c09836f109ccba14823e59de4788868660405161077393929190611d97565b60608484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610ac39250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610af5929101611d32565b6040516020818303038152906040528051906020012014610b2b57604051600160e51b62461bcd02815260040161032390611e10565b60005b6000888152606e6020526040902054811015610d81576000888152606e60205260409020805486919083908110610b6157fe5b9060005260206000209060020201600001541415610d79576000888152606d6020908152604080832054606e909252909120805483908110610b9f57fe5b90600052602060002090600202016001018054905010610d79576000888152606e6020526040902080546060919083908110610bd757fe5b906000526020600020906002020160010180549050604051908082528060200260200182016040528015610c1f57816020015b6060815260200190600190039081610c0a5790505b50905060005b60008a8152606e60205260409020805484908110610c3f57fe5b906000526020600020906002020160010180549050811015610d6f5760008a8152606c60209081526040808320606e9092528220805491929186908110610c8257fe5b90600052602060002090600202016001018381548110610c9e57fe5b906000526020600020015481526020019081526020016000208054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d4b5780601f10610d2057610100808354040283529160200191610d4b565b820191906000526020600020905b815481529060010190602001808311610d2e57829003601f168201915b5050505050828281518110610d5c57fe5b6020908102919091010152600101610c25565b509350610d839050565b600101610b2e565b505b5050949350505050565b600054610100900460ff1680610da65750610da66114a9565b80610db4575060005460ff16155b610dd357604051600160e51b62461bcd02815260040161032390611df0565b600054610100900460ff16158015610dfe576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610e5f576000805461ff00191690555b5050565b8282828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610eab9250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610edd929101611d32565b6040516020818303038152906040528051906020012014610f1357604051600160e51b62461bcd02815260040161032390611e10565b60008581526069602090815260409182902054825181815281830281019092019092526060918015610f4f578160200160208202803883390190505b5090506066544214610f615742610f68565b6066546001015b606655610f736115f6565b506040805180820182526066548152602080820184815260008a8152606e83529384208054600181810180845592875295849020855160029092020190815591518051949591948694610fca938501920190611610565b506000925050505b60008881526069602052604090205481101561105357600088815260696020526040902080547f7f8d3f14b960b3bcf34baea4b46178e331b54a33e565d7d50d77cdfe9e926fe8918a918490811061102657fe5b906000526020600020015460665460405161104393929190611d97565b60405180910390a1600101610fd2565b5050505050505050565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516110a59250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926110d7929101611d32565b604051602081830303815290604052805190602001201461110d57604051600160e51b62461bcd02815260040161032390611e10565b6000805b3360009081526067602052604090205481101561118a5733600090815260676020526040902080548991908390811061114657fe5b90600052602060002001541415611182573360009081526067602052604090208054600193508290811061117657fe5b60009182526020822001555b600101611111565b506001811515146111b057604051600160e51b62461bcd02815260040161032390611e10565b5050506001600160a01b0316600090815260676020908152604082208054600181018255908352912001929092555050565b8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161122a9250839150602001611d26565b60408051601f19818403018152828252805160209182012060008681526068835292909220919261125c929101611d32565b604051602081830303815290604052805190602001201461129257604051600160e51b62461bcd02815260040161032390611e10565b50506000938452606d6020526040909320929092555050565b6112b361081e565b6112d257604051600160e51b62461bcd02815260040161032390611de0565b6112db816114af565b50565b8184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516113269250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192611358929101611d32565b604051602081830303815290604052805190602001201461138e57604051600160e51b62461bcd02815260040161032390611e10565b6000878152606960205260409020546113a657600080fd5b50506000948552606b602090815260408087209387529290529320929092555050565b6000828152606b60209081526040808320909152902054606090821461140457604051600160e51b62461bcd02815260040161032390611e00565b60008381526068602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050505090505b92915050565b3390565b303b1590565b6001600160a01b0381166114d857604051600160e51b62461bcd02815260040161032390611dd0565b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b50805460018160011615610100020316600290046000825580601f1061155a57506112db565b601f0160209004906000526020600020908101906112db919061164b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115b95782800160ff198235161785556115e6565b828001600101855582156115e6579182015b828111156115e65782358255916020019190600101906115cb565b506115f292915061164b565b5090565b604051806040016040528060008152602001606081525090565b8280548282559060005260206000209081019282156115e6579160200282015b828111156115e6578251825591602001919060010190611630565b61042691905b808211156115f25760008155600101611651565b60006116718235611e44565b9392505050565b60006116718235610426565b60008083601f84011261169657600080fd5b50813567ffffffffffffffff8111156116ae57600080fd5b6020830191508360018202830111156116c657600080fd5b9250929050565b6000602082840312156116df57600080fd5b60006116eb8484611665565b949350505050565b60008060006040848603121561170857600080fd5b60006117148686611678565b935050602084013567ffffffffffffffff81111561173157600080fd5b61173d86828701611684565b92509250509250925092565b6000806000806060858703121561175f57600080fd5b600061176b8787611678565b945050602085013567ffffffffffffffff81111561178857600080fd5b61179487828801611684565b935093505060406117a787828801611665565b91505092959194509250565b600080600080606085870312156117c957600080fd5b60006117d58787611678565b945050602085013567ffffffffffffffff8111156117f257600080fd5b6117fe87828801611684565b935093505060406117a787828801611678565b6000806000806000806080878903121561182a57600080fd5b60006118368989611678565b965050602087013567ffffffffffffffff81111561185357600080fd5b61185f89828a01611684565b9550955050604061187289828a01611678565b935050606087013567ffffffffffffffff81111561188f57600080fd5b61189b89828a01611684565b92509250509295509295509295565b6000806000806000608086880312156118c257600080fd5b60006118ce8888611678565b955050602086013567ffffffffffffffff8111156118eb57600080fd5b6118f788828901611684565b9450945050604061190a88828901611678565b925050606061191b88828901611678565b9150509295509295909350565b60008060008060008060a0878903121561194157600080fd5b600061194d8989611678565b965050602087013567ffffffffffffffff81111561196a57600080fd5b61197689828a01611684565b9550955050604061198989828a01611678565b935050606061199a89828a01611678565b92505060806119ab89828a01611678565b9150509295509295509295565b600080604083850312156119cb57600080fd5b60006119d78585611678565b92505060206119e885828601611678565b9150509250929050565b60006119fe8383611ae9565b505060200190565b60006116718383611af2565b611a1b81611e44565b82525050565b6000611a2c82611e32565b611a368185611e36565b9350611a4183611e20565b60005b82811015611a6c57611a578683516119f2565b9550611a6282611e20565b9150600101611a44565b5093949350505050565b6000611a8182611e32565b611a8b8185611e36565b935083602082028501611a9d85611e20565b60005b84811015611ad4578383038852611ab8838351611a06565b9250611ac382611e20565b602098909801979150600101611aa0565b50909695505050505050565b611a1b81611e4f565b611a1b81610426565b6000611afd82611e32565b611b078185611e36565b9350611b17818560208601611e60565b611b2081611e90565b9093019392505050565b6000611b3582611e32565b611b3f8185611e3f565b9350611b4f818560208601611e60565b9290920192915050565b600081546001811660008114611b765760018114611b9957611bd8565b607f6002830416611b878187611e3f565b60ff1984168152955085019250611bd8565b60028204611ba78187611e3f565b9550611bb285611e26565b60005b82811015611bd157815488820152600190910190602001611bb5565b5050850192505b505092915050565b6000611bed602683611e36565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b6000611c38602083611e36565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b6000611c71602e83611e36565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000611cd0600b83611e36565b600160a91b6a24b73b30b634b2102824a702815260200192915050565b6000611cfa601283611e36565b7f4e6f7420612076616c6964207369676e65720000000000000000000000000000815260200192915050565b60006116718284611b2a565b60006116718284611b59565b6020810161149f8284611a12565b602080825281016116718184611a21565b602080825281016116718184611a76565b6020810161149f8284611ae0565b60408101611d8a8285611ae9565b6116716020830184611ae9565b60608101611da58286611ae9565b611db26020830185611ae9565b6116eb6040830184611ae9565b602080825281016116718184611af2565b6020808252810161149f81611be0565b6020808252810161149f81611c2b565b6020808252810161149f81611c64565b6020808252810161149f81611cc3565b6020808252810161149f81611ced565b60200190565b60009081526020902090565b5190565b90815260200190565b919050565b600061149f82611e54565b151590565b6001600160a01b031690565b60005b83811015611e7b578181015183820152602001611e63565b83811115611e8a576000848401525b50505050565b601f01601f19169056fea265627a7a72305820ecb3ecb5dc04f9dfd61a0fbc8e69f7f957c756e20187a65503a1c9251e5e3b6e6c6578706572696d656e74616cf50037",
|
|
435
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c8063afa7777a116100a2578063dbcc0ef611610071578063dbcc0ef614610207578063e70eedb01461021a578063f2fde38b1461022d578063f62d871814610240578063fcae7efd146102535761010b565b8063afa7777a146101ae578063b418cd88146101c1578063c4d66de8146101e1578063d29da2a7146101f45761010b565b806388a563a7116100de57806388a563a71461016b5780638c4b3bcd1461017e5780638da5cb5b146101915780638f32d59b146101a65761010b565b80633136abd31461011057806344d00f8214610125578063715018a61461014357806378632fb21461014b575b600080fd5b61012361011e3660046117b3565b610273565b005b61012d6103c7565b60405161013a9190611d4c565b60405180910390f35b610123610429565b61015e6101593660046118aa565b61049a565b60405161013a9190611d6e565b610123610179366004611811565b61062d565b61012361018c3660046116f3565b610785565b61019961080f565b60405161013a9190611d3e565b61015e61081e565b6101236101bc366004611928565b610844565b6101d46101cf3660046117b3565b610a79565b60405161013a9190611d5d565b6101236101ef3660046116cd565b610d8d565b6101236102023660046116f3565b610e63565b610123610215366004611749565b61105d565b6101236102283660046117b3565b6111e2565b61012361023b3660046116cd565b6112ab565b61012361024e3660046118aa565b6112de565b6102666102613660046119b8565b6113c9565b60405161013a9190611dbf565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516102bb9250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926102ed929101611d32565b604051602081830303815290604052805190602001201461032c57604051600160e51b62461bcd02815260040161032390611e10565b60405180910390fd5b6000868152606a60209081526040808320868452909152902054156103bf576000868152606960209081526040808320606a8352818420878552909252909120548154811061037757fe5b60009182526020808320909101829055878252606c8152604080832086845290915281206103a491611534565b6000868152606b602090815260408083208684529091528120555b505050505050565b3360009081526067602090815260409182902080548351818402810184019094528084526060939283018282801561041e57602002820191906000526020600020905b81548152602001906001019080831161040a575b505050505090505b90565b61043161081e565b61045057604051600160e51b62461bcd02815260040161032390611de0565b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b60008585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516104e49250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610516929101611d32565b604051602081830303815290604052805190602001201461054c57604051600160e51b62461bcd02815260040161032390611e10565b6000888152606b6020908152604080832088845290915290205461056f57600080fd5b6000805b60008a8152606e602052604090205481101561060b5760008a8152606e602052604090208054879190839081106105a657fe5b90600052602060002090600202016000015414156106035760008a8152606d6020908152604080832054606e9092529091208054839081106105e457fe5b9060005260206000209060020201600101805490501061060357600191505b600101610573565b50801561061c576001935050610622565b60009350505b505095945050505050565b8585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516106759250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926106a7929101611d32565b60405160208183030381529060405280519060200120146106dd57604051600160e51b62461bcd02815260040161032390611e10565b6000888152606c602090815260408083208884529091529020610701908585611578565b508488146107425760008881526069602081815260408084208054606a84528286208b87528452918520829055928252600181018355918352909120018590555b7faa6e23bdac31ae314e8eec6a579fd0418f7b5f0bca74e9ef11e78373cec74dd58886604051610773929190611d7c565b60405180910390a15050505050505050565b6000838152606960205260409020541561079e57600080fd5b336000908152606760209081526040808320805460018101825590845282842001869055858352606890915290206107d7908383611578565b50505060008181526069602081815260408084208054606a845282862084529185208290559282526001810183559183529091200155565b6033546001600160a01b031690565b6033546000906001600160a01b03166108356114a5565b6001600160a01b031614905090565b8285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161088c9250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926108be929101611d32565b60405160208183030381529060405280519060200120146108f457604051600160e51b62461bcd02815260040161032390611e10565b6000888152606b60209081526040808320888452909152902054831461091957600080fd5b60005b6000898152606e6020526040902054811015610a45576000898152606e6020526040902080548691908390811061094f57fe5b9060005260206000209060020201600001541415610a3d5760005b60008a8152606e6020526040902080548390811061098457fe5b906000526020600020906002020160010180549050811015610a3b5760008a8152606e602052604090208054839081106109ba57fe5b906000526020600020906002020160010181815481106109d657fe5b906000526020600020015460001415610a335760008a8152606e60205260409020805488919084908110610a0657fe5b90600052602060002090600202016001018281548110610a2257fe5b600091825260209091200155610a3b565b60010161096a565b505b60010161091c565b507faff273650e3a4ea06a9841f55dd08ea83018f0c09836f109ccba14823e59de4788868660405161077393929190611d97565b60608484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610ac39250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610af5929101611d32565b6040516020818303038152906040528051906020012014610b2b57604051600160e51b62461bcd02815260040161032390611e10565b60005b6000888152606e6020526040902054811015610d81576000888152606e60205260409020805486919083908110610b6157fe5b9060005260206000209060020201600001541415610d79576000888152606d6020908152604080832054606e909252909120805483908110610b9f57fe5b90600052602060002090600202016001018054905010610d79576000888152606e6020526040902080546060919083908110610bd757fe5b906000526020600020906002020160010180549050604051908082528060200260200182016040528015610c1f57816020015b6060815260200190600190039081610c0a5790505b50905060005b60008a8152606e60205260409020805484908110610c3f57fe5b906000526020600020906002020160010180549050811015610d6f5760008a8152606c60209081526040808320606e9092528220805491929186908110610c8257fe5b90600052602060002090600202016001018381548110610c9e57fe5b906000526020600020015481526020019081526020016000208054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d4b5780601f10610d2057610100808354040283529160200191610d4b565b820191906000526020600020905b815481529060010190602001808311610d2e57829003601f168201915b5050505050828281518110610d5c57fe5b6020908102919091010152600101610c25565b509350610d839050565b600101610b2e565b505b5050949350505050565b600054610100900460ff1680610da65750610da66114a9565b80610db4575060005460ff16155b610dd357604051600160e51b62461bcd02815260040161032390611df0565b600054610100900460ff16158015610dfe576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610e5f576000805461ff00191690555b5050565b8282828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610eab9250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610edd929101611d32565b6040516020818303038152906040528051906020012014610f1357604051600160e51b62461bcd02815260040161032390611e10565b60008581526069602090815260409182902054825181815281830281019092019092526060918015610f4f578160200160208202803883390190505b5090506066544214610f615742610f68565b6066546001015b606655610f736115f6565b506040805180820182526066548152602080820184815260008a8152606e83529384208054600181810180845592875295849020855160029092020190815591518051949591948694610fca938501920190611610565b506000925050505b60008881526069602052604090205481101561105357600088815260696020526040902080547f7f8d3f14b960b3bcf34baea4b46178e331b54a33e565d7d50d77cdfe9e926fe8918a918490811061102657fe5b906000526020600020015460665460405161104393929190611d97565b60405180910390a1600101610fd2565b5050505050505050565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516110a59250839150602001611d26565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926110d7929101611d32565b604051602081830303815290604052805190602001201461110d57604051600160e51b62461bcd02815260040161032390611e10565b6000805b3360009081526067602052604090205481101561118a5733600090815260676020526040902080548991908390811061114657fe5b90600052602060002001541415611182573360009081526067602052604090208054600193508290811061117657fe5b60009182526020822001555b600101611111565b506001811515146111b057604051600160e51b62461bcd02815260040161032390611e10565b5050506001600160a01b0316600090815260676020908152604082208054600181018255908352912001929092555050565b8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161122a9250839150602001611d26565b60408051601f19818403018152828252805160209182012060008681526068835292909220919261125c929101611d32565b604051602081830303815290604052805190602001201461129257604051600160e51b62461bcd02815260040161032390611e10565b50506000938452606d6020526040909320929092555050565b6112b361081e565b6112d257604051600160e51b62461bcd02815260040161032390611de0565b6112db816114af565b50565b8184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516113269250839150602001611d26565b60408051601f198184030181528282528051602091820120600086815260688352929092209192611358929101611d32565b604051602081830303815290604052805190602001201461138e57604051600160e51b62461bcd02815260040161032390611e10565b6000878152606960205260409020546113a657600080fd5b50506000948552606b602090815260408087209387529290529320929092555050565b6000828152606b60209081526040808320909152902054606090821461140457604051600160e51b62461bcd02815260040161032390611e00565b60008381526068602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050505090505b92915050565b3390565b303b1590565b6001600160a01b0381166114d857604051600160e51b62461bcd02815260040161032390611dd0565b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b50805460018160011615610100020316600290046000825580601f1061155a57506112db565b601f0160209004906000526020600020908101906112db919061164b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115b95782800160ff198235161785556115e6565b828001600101855582156115e6579182015b828111156115e65782358255916020019190600101906115cb565b506115f292915061164b565b5090565b604051806040016040528060008152602001606081525090565b8280548282559060005260206000209081019282156115e6579160200282015b828111156115e6578251825591602001919060010190611630565b61042691905b808211156115f25760008155600101611651565b60006116718235611e44565b9392505050565b60006116718235610426565b60008083601f84011261169657600080fd5b50813567ffffffffffffffff8111156116ae57600080fd5b6020830191508360018202830111156116c657600080fd5b9250929050565b6000602082840312156116df57600080fd5b60006116eb8484611665565b949350505050565b60008060006040848603121561170857600080fd5b60006117148686611678565b935050602084013567ffffffffffffffff81111561173157600080fd5b61173d86828701611684565b92509250509250925092565b6000806000806060858703121561175f57600080fd5b600061176b8787611678565b945050602085013567ffffffffffffffff81111561178857600080fd5b61179487828801611684565b935093505060406117a787828801611665565b91505092959194509250565b600080600080606085870312156117c957600080fd5b60006117d58787611678565b945050602085013567ffffffffffffffff8111156117f257600080fd5b6117fe87828801611684565b935093505060406117a787828801611678565b6000806000806000806080878903121561182a57600080fd5b60006118368989611678565b965050602087013567ffffffffffffffff81111561185357600080fd5b61185f89828a01611684565b9550955050604061187289828a01611678565b935050606087013567ffffffffffffffff81111561188f57600080fd5b61189b89828a01611684565b92509250509295509295509295565b6000806000806000608086880312156118c257600080fd5b60006118ce8888611678565b955050602086013567ffffffffffffffff8111156118eb57600080fd5b6118f788828901611684565b9450945050604061190a88828901611678565b925050606061191b88828901611678565b9150509295509295909350565b60008060008060008060a0878903121561194157600080fd5b600061194d8989611678565b965050602087013567ffffffffffffffff81111561196a57600080fd5b61197689828a01611684565b9550955050604061198989828a01611678565b935050606061199a89828a01611678565b92505060806119ab89828a01611678565b9150509295509295509295565b600080604083850312156119cb57600080fd5b60006119d78585611678565b92505060206119e885828601611678565b9150509250929050565b60006119fe8383611ae9565b505060200190565b60006116718383611af2565b611a1b81611e44565b82525050565b6000611a2c82611e32565b611a368185611e36565b9350611a4183611e20565b60005b82811015611a6c57611a578683516119f2565b9550611a6282611e20565b9150600101611a44565b5093949350505050565b6000611a8182611e32565b611a8b8185611e36565b935083602082028501611a9d85611e20565b60005b84811015611ad4578383038852611ab8838351611a06565b9250611ac382611e20565b602098909801979150600101611aa0565b50909695505050505050565b611a1b81611e4f565b611a1b81610426565b6000611afd82611e32565b611b078185611e36565b9350611b17818560208601611e60565b611b2081611e90565b9093019392505050565b6000611b3582611e32565b611b3f8185611e3f565b9350611b4f818560208601611e60565b9290920192915050565b600081546001811660008114611b765760018114611b9957611bd8565b607f6002830416611b878187611e3f565b60ff1984168152955085019250611bd8565b60028204611ba78187611e3f565b9550611bb285611e26565b60005b82811015611bd157815488820152600190910190602001611bb5565b5050850192505b505092915050565b6000611bed602683611e36565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b6000611c38602083611e36565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b6000611c71602e83611e36565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000611cd0600b83611e36565b600160a91b6a24b73b30b634b2102824a702815260200192915050565b6000611cfa601283611e36565b7f4e6f7420612076616c6964207369676e65720000000000000000000000000000815260200192915050565b60006116718284611b2a565b60006116718284611b59565b6020810161149f8284611a12565b602080825281016116718184611a21565b602080825281016116718184611a76565b6020810161149f8284611ae0565b60408101611d8a8285611ae9565b6116716020830184611ae9565b60608101611da58286611ae9565b611db26020830185611ae9565b6116eb6040830184611ae9565b602080825281016116718184611af2565b6020808252810161149f81611be0565b6020808252810161149f81611c2b565b6020808252810161149f81611c64565b6020808252810161149f81611cc3565b6020808252810161149f81611ced565b60200190565b60009081526020902090565b5190565b90815260200190565b919050565b600061149f82611e54565b151590565b6001600160a01b031690565b60005b83811015611e7b578181015183820152602001611e63565b83811115611e8a576000848401525b50505050565b601f01601f19169056fea265627a7a72305820ecb3ecb5dc04f9dfd61a0fbc8e69f7f957c756e20187a65503a1c9251e5e3b6e6c6578706572696d656e74616cf50037",
|
|
436
|
-
"sourceMap": "321:
|
|
437
|
-
"deployedSourceMap": "321:11417:5:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;321:11417:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5887:369;;;;;;;;;:::i;:::-;;3203:105;;;:::i;:::-;;;;;;;;;;;;;;;;1746:137:1;;;:::i;9997:597:5:-;;;;;;;;;:::i;:::-;;;;;;;;4993:525;;;;;;;;;:::i;2812:311::-;;;;;;;;;:::i;959:77:1:-;;;:::i;:::-;;;;;;;;1310:92;;;:::i;8840:724:5:-;;;;;;;;;:::i;10901:832::-;;;;;;;;;:::i;:::-;;;;;;;;741:142:1;;;;;;;;;:::i;7826:564:5:-;;;;;;;;;:::i;3644:469::-;;;;;;;;;:::i;7304:176::-;;;;;;;;;:::i;2032:107:1:-;;;;;;;;;:::i;6707:241:5:-;;;;;;;;;:::i;4348:215::-;;;;;;;;;:::i;:::-;;;;;;;;5887:369;5986:8;5996:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;;;;;;;;;6060:1;6024:19;;;:9;:19;;;;;;;;:33;;;;;;;;;:37;6021:228;;6084:16;;;;:6;:16;;;;;;;;6101:9;:19;;;;;:33;;;;;;;;;;6084:51;;;;;;;;;;;;;;;;;;;6077:58;;;6157:16;;;:6;:16;;;;;;:30;;;;;;;;6150:37;;;:::i;:::-;6209:14;;;;:4;:14;;;;;;;;:28;;;;;;;;6202:35;6021:228;5887:369;;;;;;:::o;3203:105::-;3289:10;3281:19;;;;:7;:19;;;;;;;;;3274:26;;;;;;;;;;;;;;;;;3246:16;;3274:26;;;3281:19;3274:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3203:105;;:::o;1746:137:1:-;1163:9;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;1828:6;;1807:40;;1844:1;;-1:-1:-1;;;;;1828:6:1;;1807:40;;1844:1;;1807:40;1857:6;:19;;-1:-1:-1;;;;;;1857:19:1;;;1746:137::o;9997:597:5:-;10142:4;10105:8;10115:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;10166:14;;;;:4;:14;;;;;;;;:28;;;;;;;;;10158:40;;;;;;10209:12;;10240:259;10256:22;;;;:12;:22;;;;;:29;10254:31;;10240:259;;;10309:22;;;;:12;:22;;;;;:25;;10345:5;;10309:22;10332:1;;10309:25;;;;;;;;;;;;;;;;:34;;;:41;10306:182;;;10419:16;;;;:6;:16;;;;;;;;;10373:12;:22;;;;;;:25;;10396:1;;10373:25;;;;;;;;;;;;;;;;:35;;:42;;;;:62;10370:102;;10468:4;10458:14;;10370:102;10287:3;;10240:259;;;;10512:7;10509:77;;;10541:4;10534:11;;;;;10509:77;10581:5;10574:12;;;2469:1;9997:597;;;;;;;;;:::o;4993:525::-;5113:8;5123:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;5239:16;;;;:6;:16;;;;;;;;:30;;;;;;;;:39;;5272:6;;5239:39;:::i;:::-;;5302:12;5292:8;:22;5289:168;;5366:16;;;;:6;:16;;;;;;;;:23;;5330:9;:19;;;;;:33;;;;;;;;:59;;;5404:16;;;39:1:-1;23:18;;45:23;;5404:35:5;;;;;;;;;;5289:168;5472:38;5487:8;5497:12;5472:38;;;;;;;;;;;;;;;;4993:525;;;;;;;;:::o;2812:311::-;2900:16;;;;:6;:16;;;;;:23;:26;2892:35;;;;;;2946:10;2938:19;;;;:7;:19;;;;;;;;27:10:-1;;39:1;23:18;;45:23;;2938:34:5;;;;;;;;;;2983:18;;;:8;:18;;;;;:24;;3004:3;;2983:24;:::i;:::-;-1:-1:-1;;;3050:16:5;;;;:6;:16;;;;;;;;:23;;3018:9;:19;;;;;:29;;;;;:55;;;3084:16;;;39:1:-1;23:18;;45:23;;3084:31:5;;;;;;;;2812:311::o;959:77:1:-;1023:6;;-1:-1:-1;;;;;1023:6:1;959:77;:::o;1310:92::-;1389:6;;1350:4;;-1:-1:-1;;;;;1389:6:1;1373:12;:10;:12::i;:::-;-1:-1:-1;;;;;1373:22:1;;1366:29;;1310:92;:::o;8840:724:5:-;8964:12;8978:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;9011:14;;;;:4;:14;;;;;;;;:28;;;;;;;;;:34;;9003:43;;;;;;9061:6;9057:440;9073:22;;;;:12;:22;;;;;:29;9071:31;;9057:440;;;9126:22;;;;:12;:22;;;;;:25;;9162:3;;9126:22;9149:1;;9126:25;;;;;;;;;;;;;;;;:34;;;:39;9123:363;;;9189:6;9185:286;9201:22;;;;:12;:22;;;;;:25;;9224:1;;9201:25;;;;;;;;;;;;;;;;:35;;:42;;;;9199:1;:44;9185:286;;;9275:22;;;;:12;:22;;;;;:25;;9298:1;;9275:25;;;;;;;;;;;;;;;;:35;;9311:1;9275:38;;;;;;;;;;;;;;;;:42;;9272:180;;;9345:22;;;;:12;:22;;;;;:25;;9384:12;;9345:22;9368:1;;9345:25;;;;;;;;;;;;;;;;:35;;9381:1;9345:38;;;;;;;;;;;;;;;;;:51;9423:5;;9272:180;9245:3;;9185:286;;;;9123:363;9104:3;;9057:440;;;;9512:44;9528:8;9538:12;9552:3;9512:44;;;;;;;;;10901:832;11022:15;10985:8;10995:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;11053:6;11049:677;11065:22;;;;:12;:22;;;;;:29;11063:31;;11049:677;;;11118:22;;;;:12;:22;;;;;:25;;11154:5;;11118:22;11141:1;;11118:25;;;;;;;;;;;;;;;;:34;;;:41;11115:600;;;11228:16;;;;:6;:16;;;;;;;;;11182:12;:22;;;;;;:25;;11205:1;;11182:25;;;;;;;;;;;;;;;;:35;;:42;;;;:62;11179:521;;11309:22;;;;:12;:22;;;;;:25;;11268;;11309:22;11332:1;;11309:25;;;;;;;;;;;;;;;;:35;;:42;;;;11296:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11268:84:5;-1:-1:-1;11379:6:5;11375:210;11391:22;;;;:12;:22;;;;;:25;;11414:1;;11391:25;;;;;;;;;;;;;;;;:35;;:42;;;;11389:1;:44;11375:210;;;11481:16;;;;:6;:16;;;;;;;;11498:12;:22;;;;;:25;;11481:16;;;11521:1;;11498:25;;;;;;;;;;;;;;;;:35;;11534:1;11498:38;;;;;;;;;;;;;;;;11481:56;;;;;;;;;;;11466:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;11476:1;11466:12;;;;;;;;;;;;;;;;;:71;11435:3;;11375:210;;;-1:-1:-1;11671:9:5;-1:-1:-1;11664:16:5;;-1:-1:-1;11664:16:5;11179:521;11096:3;;11049:677;;;;2469:1;10901:832;;;;;;;;:::o;741:142:1:-;1024:12:2;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:2;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;;;1016:106:2;;;;;;;;;1129:19;1152:12;;;;;;1151:13;1170:80;;;;1198:12;:19;;-1:-1:-1;;;;1198:19:2;;;;;1225:18;1213:4;1225:18;;;1170:80;806:6:1;:15;;-1:-1:-1;;;;;;806:15:1;-1:-1:-1;;;;;806:15:1;;;;;;;;;;;836:40;;869:6;;;-1:-1:-1;;836:40:1;;-1:-1:-1;;836:40:1;1268:14:2;1264:55;;;1307:5;1292:20;;-1:-1:-1;;1292:20:2;;;1264:55;741:142:1;;:::o;7826:564:5:-;7902:8;7912:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;7973:16;;;;:6;:16;;;;;;;;;:23;7959:38;;;;;;;;;;;;;;;;7937:19;;7959:38;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;7959:38:5;;7937:60;;8034:4;;8015:15;:23;:52;;8052:15;8015:52;;;8041:4;;8048:1;8041:8;8015:52;8008:4;:59;8078:28;;:::i;:::-;-1:-1:-1;8109:83:5;;;;;;;;8147:4;;8109:83;;;;;;;;;-1:-1:-1;8203:22:5;;;:12;:22;;;;;27:10:-1;;39:1;23:18;;;45:23;;;8203:38:5;;;;;;;;;;;;;;;;;;;;;8109:83;;23:18:-1;;8109:83:5;;8203:38;;;;;;;;:::i;:::-;-1:-1:-1;8256:9:5;;-1:-1:-1;;;8252:131:5;8271:16;;;;:6;:16;;;;;:23;8269:25;;8252:131;;;8345:16;;;;:6;:16;;;;;:19;;8320:51;;8335:8;;8362:1;;8345:19;;;;;;;;;;;;;;8366:4;;8320:51;;;;;;;;;;;;;;;;;8296:3;;8252:131;;;;2469:1;;7826:564;;;;;:::o;3644:469::-;3738:8;3748:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;3773:10;;3802:205;3826:10;3818:19;;;;:7;:19;;;;;:26;3816:28;;3802:205;;;3876:10;3868:19;;;;:7;:19;;;;;:22;;3892:8;;3868:19;3888:1;;3868:22;;;;;;;;;;;;;;:32;3865:131;;;3966:10;3958:19;;;;:7;:19;;;;;:22;;3928:4;;-1:-1:-1;3978:1:5;;3958:22;;;;;;;;;;;;;;3951:29;3865:131;3846:3;;3802:205;;;-1:-1:-1;4032:4:5;4025:11;;;;4017:42;;;;-1:-1:-1;;;;;4017:42:5;;;;;;;;;-1:-1:-1;;;;;;;;4070:20:5;;;;;:7;:20;;;;;;;27:10:-1;;39:1;23:18;;45:23;;4070:35:5;;;;;;;;;;-1:-1:-1;;3644:469:5:o;7304:176::-;7402:8;7412:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;-1:-1:-1;;7437:16:5;;;;:6;:16;;;;;;:35;;;;-1:-1:-1;;7304:176:5:o;2032:107:1:-;1163:9;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;2104:28;2123:8;2104:18;:28::i;:::-;2032:107;:::o;6707:241:5:-;6821:12;6835:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;6892:1;6868:16;;;:6;:16;;;;;:23;6860:34;;;;;;-1:-1:-1;;6905:14:5;;;;:4;:14;;;;;;;;:28;;;;;;;;:35;;;;-1:-1:-1;;6707:241:5:o;4348:215::-;4460:14;;;;:4;:14;;;;;;;;:24;;;;;;4422:13;;4460:32;;4452:56;;;;-1:-1:-1;;;;;4452:56:5;;;;;;;;;4529:18;;;;:8;:18;;;;;;;;;4522:25;;;;;;-1:-1:-1;;4522:25:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4529:18;;4522:25;;4529:18;4522:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4348:215;;;;;:::o;867:96:0:-;946:10;867:96;:::o;1409:498:2:-;1820:4;1864:17;1895:7;1409:498;:::o;2240:225:1:-;-1:-1:-1;;;;;2313:22:1;;2305:73;;;;-1:-1:-1;;;;;2305:73:1;;;;;;;;;2414:6;;2393:38;;-1:-1:-1;;;;;2393:38:1;;;;2414:6;;2393:38;;2414:6;;2393:38;2441:6;:17;;-1:-1:-1;;;;;;2441:17:1;-1:-1:-1;;;;;2441:17:1;;;;;;;;;;2240:225::o;321:11417:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;321:11417:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;321:11417:5;;;-1:-1:-1;321:11417:5;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:118:-1;;72:46;110:6;97:20;72:46;;;63:55;57:66;-1:-1;;;57:66;130:118;;197:46;235:6;222:20;197:46;;270:336;;;385:3;378:4;370:6;366:17;362:27;352:2;;403:1;400;393:12;352:2;-1:-1;423:20;;463:18;452:30;;449:2;;;495:1;492;485:12;449:2;529:4;521:6;517:17;505:29;;579:3;572;564:6;560:16;550:8;546:31;543:40;540:2;;;596:1;593;586:12;540:2;345:261;;;;;;739:241;;843:2;831:9;822:7;818:23;814:32;811:2;;;859:1;856;849:12;811:2;894:1;911:53;956:7;936:9;911:53;;;901:63;805:175;-1:-1;;;;805:175;987:492;;;;1128:2;1116:9;1107:7;1103:23;1099:32;1096:2;;;1144:1;1141;1134:12;1096:2;1179:1;1196:53;1241:7;1221:9;1196:53;;;1186:63;;1158:97;1314:2;1303:9;1299:18;1286:32;1338:18;1330:6;1327:30;1324:2;;;1370:1;1367;1360:12;1324:2;1398:65;1455:7;1446:6;1435:9;1431:22;1398:65;;;1388:75;;;;1265:204;1090:389;;;;;;1486:617;;;;;1644:2;1632:9;1623:7;1619:23;1615:32;1612:2;;;1660:1;1657;1650:12;1612:2;1695:1;1712:53;1757:7;1737:9;1712:53;;;1702:63;;1674:97;1830:2;1819:9;1815:18;1802:32;1854:18;1846:6;1843:30;1840:2;;;1886:1;1883;1876:12;1840:2;1914:65;1971:7;1962:6;1951:9;1947:22;1914:65;;;1904:75;;;;1781:204;2016:2;2034:53;2079:7;2070:6;2059:9;2055:22;2034:53;;;2024:63;;1995:98;1606:497;;;;;;;;2110:617;;;;;2268:2;2256:9;2247:7;2243:23;2239:32;2236:2;;;2284:1;2281;2274:12;2236:2;2319:1;2336:53;2381:7;2361:9;2336:53;;;2326:63;;2298:97;2454:2;2443:9;2439:18;2426:32;2478:18;2470:6;2467:30;2464:2;;;2510:1;2507;2500:12;2464:2;2538:65;2595:7;2586:6;2575:9;2571:22;2538:65;;;2528:75;;;;2405:204;2640:2;2658:53;2703:7;2694:6;2683:9;2679:22;2658:53;;2734:869;;;;;;;2929:3;2917:9;2908:7;2904:23;2900:33;2897:2;;;2946:1;2943;2936:12;2897:2;2981:1;2998:53;3043:7;3023:9;2998:53;;;2988:63;;2960:97;3116:2;3105:9;3101:18;3088:32;3140:18;3132:6;3129:30;3126:2;;;3172:1;3169;3162:12;3126:2;3200:65;3257:7;3248:6;3237:9;3233:22;3200:65;;;3190:75;;;;3067:204;3302:2;3320:53;3365:7;3356:6;3345:9;3341:22;3320:53;;;3310:63;;3281:98;3438:2;3427:9;3423:18;3410:32;3462:18;3454:6;3451:30;3448:2;;;3494:1;3491;3484:12;3448:2;3522:65;3579:7;3570:6;3559:9;3555:22;3522:65;;;3512:75;;;;3389:204;2891:712;;;;;;;;;3610:743;;;;;;3785:3;3773:9;3764:7;3760:23;3756:33;3753:2;;;3802:1;3799;3792:12;3753:2;3837:1;3854:53;3899:7;3879:9;3854:53;;;3844:63;;3816:97;3972:2;3961:9;3957:18;3944:32;3996:18;3988:6;3985:30;3982:2;;;4028:1;4025;4018:12;3982:2;4056:65;4113:7;4104:6;4093:9;4089:22;4056:65;;;4046:75;;;;3923:204;4158:2;4176:53;4221:7;4212:6;4201:9;4197:22;4176:53;;;4166:63;;4137:98;4266:2;4284:53;4329:7;4320:6;4309:9;4305:22;4284:53;;;4274:63;;4245:98;3747:606;;;;;;;;;4360:869;;;;;;;4552:3;4540:9;4531:7;4527:23;4523:33;4520:2;;;4569:1;4566;4559:12;4520:2;4604:1;4621:53;4666:7;4646:9;4621:53;;;4611:63;;4583:97;4739:2;4728:9;4724:18;4711:32;4763:18;4755:6;4752:30;4749:2;;;4795:1;4792;4785:12;4749:2;4823:65;4880:7;4871:6;4860:9;4856:22;4823:65;;;4813:75;;;;4690:204;4925:2;4943:53;4988:7;4979:6;4968:9;4964:22;4943:53;;;4933:63;;4904:98;5033:2;5051:53;5096:7;5087:6;5076:9;5072:22;5051:53;;;5041:63;;5012:98;5141:3;5160:53;5205:7;5196:6;5185:9;5181:22;5160:53;;;5150:63;;5120:99;4514:715;;;;;;;;;5860:366;;;5981:2;5969:9;5960:7;5956:23;5952:32;5949:2;;;5997:1;5994;5987:12;5949:2;6032:1;6049:53;6094:7;6074:9;6049:53;;;6039:63;;6011:97;6139:2;6157:53;6202:7;6193:6;6182:9;6178:22;6157:53;;;6147:63;;6118:98;5943:283;;;;;;6234:173;;6321:46;6363:3;6355:6;6321:46;;;-1:-1;;6396:4;6387:14;;6314:93;6416:181;;6529:62;6587:3;6579:6;6529:62;;6605:120;6688:31;6713:5;6688:31;;;6683:3;6676:44;6670:55;;;6763:621;;6908:54;6956:5;6908:54;;;6975:86;7054:6;7049:3;6975:86;;;6968:93;;7081:56;7131:5;7081:56;;;7158:1;7143:219;7168:6;7165:1;7162:13;7143:219;;;7215:63;7274:3;7265:6;7259:13;7215:63;;;7208:70;;7295:60;7348:6;7295:60;;;7285:70;-1:-1;7190:1;7183:9;7143:219;;;-1:-1;7375:3;;6887:497;-1:-1;;;;6887:497;7421:827;;7578:60;7632:5;7578:60;;;7651:92;7736:6;7731:3;7651:92;;;7644:99;;7766:3;7808:4;7800:6;7796:17;7791:3;7787:27;7834:62;7890:5;7834:62;;;7917:1;7902:307;7927:6;7924:1;7921:13;7902:307;;;7989:9;7983:4;7979:20;7974:3;7967:33;8015:76;8086:4;8077:6;8071:13;8015:76;;;8007:84;;8108:66;8167:6;8108:66;;;8197:4;8188:14;;;;;8098:76;-1:-1;7949:1;7942:9;7902:307;;;-1:-1;8222:4;;7557:691;-1:-1;;;;;;7557:691;8256:111;8333:28;8355:5;8333:28;;8374:110;8447:31;8472:5;8447:31;;8618:347;;8730:39;8763:5;8730:39;;;8781:71;8845:6;8840:3;8781:71;;;8774:78;;8857:52;8902:6;8897:3;8890:4;8883:5;8879:16;8857:52;;;8930:29;8952:6;8930:29;;;8921:39;;;;8710:255;-1:-1;;;8710:255;8972:360;;9102:39;9135:5;9102:39;;;9153:89;9235:6;9230:3;9153:89;;;9146:96;;9247:52;9292:6;9287:3;9280:4;9273:5;9269:16;9247:52;;;9311:16;;;;;9082:250;-1:-1;;9082:250;9690:884;;9827:5;9821:12;9861:1;9850:9;9846:17;9874:1;9869:268;;;;10148:1;10143:425;;;;9839:729;;9869:268;9947:4;9943:1;9932:9;9928:17;9924:28;9966:89;10048:6;10043:3;9966:89;;;-1:-1;;10074:25;;10062:38;;9959:96;-1:-1;10114:16;;;-1:-1;9869:268;;10143:425;10212:1;10201:9;10197:17;10228:89;10310:6;10305:3;10228:89;;;10221:96;;10339:38;10371:5;10339:38;;;10393:1;10401:130;10415:6;10412:1;10409:13;10401:130;;;10474:14;;10461:11;;;10454:35;10521:1;10508:15;;;;10437:4;10430:12;10401:130;;;-1:-1;;10545:16;;;-1:-1;9839:729;;9797:777;;;;;;10583:465;;10743:67;10807:2;10802:3;10743:67;;;10843:66;10823:87;;-1:-1;;;;;10939:2;10930:12;;10923:88;11039:2;11030:12;;10729:319;-1:-1;;10729:319;11057:364;;11217:67;11281:2;11276:3;11217:67;;;11317:66;11297:87;;11412:2;11403:12;;11203:218;-1:-1;;11203:218;11430:465;;11590:67;11654:2;11649:3;11590:67;;;11690:66;11670:87;;11791:66;11786:2;11777:12;;11770:88;11886:2;11877:12;;11576:319;-1:-1;;11576:319;11904:364;;12064:67;12128:2;12123:3;12064:67;;;-1:-1;;;;;12144:87;;12259:2;12250:12;;12050:218;-1:-1;;12050:218;12277:364;;12437:67;12501:2;12496:3;12437:67;;;12537:66;12517:87;;12632:2;12623:12;;12423:218;-1:-1;;12423:218;12776:266;;12922:95;13013:3;13004:6;12922:95;;13049:260;;13192:92;13280:3;13271:6;13192:92;;13316:213;13434:2;13419:18;;13448:71;13423:9;13492:6;13448:71;;13536:361;13704:2;13718:47;;;13689:18;;13779:108;13689:18;13873:6;13779:108;;13904:385;14084:2;14098:47;;;14069:18;;14159:120;14069:18;14265:6;14159:120;;14296:201;14408:2;14393:18;;14422:65;14397:9;14460:6;14422:65;;14504:324;14650:2;14635:18;;14664:71;14639:9;14708:6;14664:71;;;14746:72;14814:2;14803:9;14799:18;14790:6;14746:72;;14835:435;15009:2;14994:18;;15023:71;14998:9;15067:6;15023:71;;;15105:72;15173:2;15162:9;15158:18;15149:6;15105:72;;;15188;15256:2;15245:9;15241:18;15232:6;15188:72;;15277:301;15415:2;15429:47;;;15400:18;;15490:78;15400:18;15554:6;15490:78;;15585:407;15776:2;15790:47;;;15761:18;;15851:131;15761:18;15851:131;;15999:407;16190:2;16204:47;;;16175:18;;16265:131;16175:18;16265:131;;16413:407;16604:2;16618:47;;;16589:18;;16679:131;16589:18;16679:131;;16827:407;17018:2;17032:47;;;17003:18;;17093:131;17003:18;17093:131;;17241:407;17432:2;17446:47;;;17417:18;;17507:131;17417:18;17507:131;;17657:121;17766:4;17754:17;;17735:43;17927:126;;17994:15;;;18041:4;18028:18;;;17986:67;18062:107;18152:12;;18136:33;18759:178;18877:19;;;18926:4;18917:14;;18870:67;19473:145;19609:3;19587:31;-1:-1;19587:31;19626:105;;19695:31;19720:5;19695:31;;19738:92;19811:13;19804:21;;19787:43;19923:128;-1:-1;;;;;19992:54;;19975:76;20564:268;20629:1;20636:101;20650:6;20647:1;20644:13;20636:101;;;20717:11;;;20711:18;20698:11;;;20691:39;20672:2;20665:10;20636:101;;;20752:6;20749:1;20746:13;20743:2;;;20817:1;20808:6;20803:3;20799:16;20792:27;20743:2;20613:219;;;;;20840:97;20928:2;20908:14;-1:-1;;20904:28;;20888:49",
|
|
438
|
-
"source": "// Implementation of the Verified custody vault\r\n// Manages accounts, participants and vault policies\r\n// (c) Kallol Borah, Verified Network, 2021\r\n\r\npragma solidity 0.5.7;\r\npragma experimental ABIEncoderV2;\r\n\r\nimport \"./IVault.sol\";\r\nimport \"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\";\r\n\r\ncontract Vault is IVault, Ownable {\r\n\r\n //counter for block timestamp nonce\r\n uint256 private txid;\r\n\r\n //mapping of signer address to creator bytes32 id\r\n mapping(address => bytes32[]) private signers;\r\n\r\n //mapping signer (its bytes32 ID, eg creator@vault.com) to its token (eg, Google/Apple push notification token)\r\n mapping(bytes32 => string) private creators;\r\n\r\n //creating vault by mapping its creator (bytes32 ID, eg, creator@vault.com) to participants (bytes32 IDs, eg, participant@email.com) in the vault\r\n mapping(bytes32 => bytes32[]) private vaults;\r\n\r\n //positional index of cosigners for vault. Mapping of vault creator to participant to its position\r\n mapping(bytes32 => mapping(bytes32 => uint256)) private cosigners;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to participants (bytes32 ID, eg, participant@email.com) to their pin (uint256)\r\n mapping(bytes32 => mapping(bytes32 => uint256)) private pins;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to participants (bytes32 ID, eg, participant@email.com) to their key shard (string)\r\n mapping(bytes32 => mapping(bytes32 => string)) private shards;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to number of minimum co-signers required for quorum (uint256)\r\n mapping(bytes32 => uint256) private quorum;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to transactions\r\n mapping(bytes32 => transaction[]) private transactions;\r\n\r\n //event that helps notify a participant to confirm PIN and shard\r\n event NewParticipant(bytes32 creator, bytes32 participant);\r\n\r\n //event that helps notify a participant to co-sign a transaction\r\n event NewTransaction(bytes32 creator, bytes32 participant, uint256 txid);\r\n\r\n //event that helps notify a creator that a transaction has been signed\r\n event SignTransaction(bytes32 creator, bytes32 participant, uint256 txid);\r\n\r\n // modifiers\r\n modifier onlySigner(bytes32 _creator, string memory _id) {\r\n require(keccak256(abi.encodePacked(creators[_creator])) == keccak256(abi.encodePacked(_id)), 'Not a valid signer');\r\n _;\r\n }\r\n\r\n constructor() public{\r\n Ownable.initialize(msg.sender);\r\n }\r\n\r\n /**\r\n This function creates a vault for the creator\r\n @param _creator vault creator's username, eg, creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n */\r\n function createVault(bytes32 _creator, string calldata _id) external {\r\n require(vaults[_creator].length==0);\r\n signers[msg.sender].push(_creator);\r\n creators[_creator] = _id;\r\n cosigners[_creator][_creator] = vaults[_creator].length;\r\n vaults[_creator].push(_creator);\r\n }\r\n\r\n /**\r\n This function returns list of vault creators\r\n */\r\n function getVaults() external view returns(bytes32[] memory){\r\n return signers[msg.sender];\r\n }\r\n\r\n /**\r\n This function transfers a vault from the transferor (msg.sender) to transferee\r\n @param _creator vault to transfer\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _transferee address of the new vault operator\r\n */\r\n function transferVault(bytes32 _creator, string calldata _id, address _transferee) onlySigner(_creator, _id) external {\r\n bool found = false;\r\n for(uint i=0; i<signers[msg.sender].length; i++){\r\n if(signers[msg.sender][i]==_creator){\r\n found = true;\r\n delete signers[msg.sender][i];\r\n }\r\n }\r\n require(found==true, 'Not a valid signer');\r\n signers[_transferee].push(_creator);\r\n }\r\n\r\n /**\r\n This function returns the vault creator's unique ID (eg, Google/APNS messaging token)\r\n @param _creator the vault creator (eg, creator@email.com)\r\n @return the vault creator's unique ID\r\n */\r\n function getCreator(bytes32 _creator, uint256 _pin) external view returns(string memory){ \r\n require(pins[_creator][_creator] == _pin, \"Invalid PIN\"); \r\n return creators[_creator]; \r\n }\r\n\r\n /**\r\n This function adds a participant to a vault that belongs to its creator\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant vault participant's username, eg participant@email.com\r\n @param _shard the private key shard of the participant\r\n */\r\n function addParticipant(bytes32 _creator, string calldata _id, bytes32 _participant, string calldata _shard) onlySigner(_creator, _id) external {\r\n //require(vaults[_participant].length>0); //participant does not have a vault yet\r\n shards[_creator][_participant] = _shard;\r\n if(_creator!=_participant){\r\n cosigners[_creator][_participant] = vaults[_creator].length;\r\n vaults[_creator].push(_participant); \r\n }\r\n emit NewParticipant(_creator, _participant);\r\n }\r\n\r\n /**\r\n This function removes a participant in a vault that belongs to its creator\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant vault participant's username, eg participant@email.com\r\n */\r\n function removeParticipant(bytes32 _creator, string calldata _id, bytes32 _participant) onlySigner(_creator, _id) external {\r\n if(cosigners[_creator][_participant] > 0){\r\n delete vaults[_creator][cosigners[_creator][_participant]];\r\n delete shards[_creator][_participant];\r\n delete pins[_creator][_participant];\r\n }\r\n } \r\n\r\n /**\r\n This function confirms a participant in the vault when the participant sends its private key shard and PIN\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant the vault's participant (eg, participant@email.com)\r\n @param _pin the PIN number of the participant\r\n */\r\n function confirmParticipant(bytes32 _creator, string calldata _id, bytes32 _participant, uint256 _pin) onlySigner(_participant, _id) external {\r\n require(vaults[_creator].length>0);\r\n pins[_creator][_participant] = _pin;\r\n }\r\n\r\n /**\r\n This function defines the number of participants required to co-sign a transaction\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _minParticipants the minimum number of co-signers\r\n */\r\n function defineQuorum(bytes32 _creator, string calldata _id, uint256 _minParticipants) onlySigner(_creator, _id) external {\r\n quorum[_creator] = _minParticipants;\r\n }\r\n\r\n /**\r\n This function prompts participants to co-sign a transaction on the vault (ie, the creator's address secured by the quorum of participants)\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n */\r\n function promptSignatures(bytes32 _creator, string calldata _id) onlySigner(_creator, _id) external {\r\n bytes32[] memory cs = new bytes32[](vaults[_creator].length);\r\n txid = block.timestamp == txid ? txid + 1 : block.timestamp;\r\n transaction memory currentTx = transaction({\r\n datetime : txid,\r\n cosigners : cs\r\n });\r\n transactions[_creator].push(currentTx);\r\n for(uint256 i=0; i<vaults[_creator].length; i++){\r\n emit NewTransaction(_creator, vaults[_creator][i], txid);\r\n }\r\n }\r\n\r\n /**\r\n This function lets a participant co-sign a transaction\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant the vault's participant (eg, participant@email.com)\r\n @param _tx transaction identifier\r\n @param _pin the PIN number of the signer (participant)\r\n */\r\n function signTransaction(bytes32 _creator, string calldata _id, bytes32 _participant, uint256 _tx, uint256 _pin) onlySigner(_participant, _id) external {\r\n require(pins[_creator][_participant]==_pin);\r\n for(uint i=0; i<transactions[_creator].length; i++){\r\n if(transactions[_creator][i].datetime==_tx){\r\n for(uint j=0; j<transactions[_creator][i].cosigners.length; j++){\r\n if(transactions[_creator][i].cosigners[j]==\"\"){\r\n transactions[_creator][i].cosigners[j]=_participant;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n emit SignTransaction(_creator, _participant, _tx);\r\n }\r\n\r\n /**\r\n This function lets the creator check if quorum has been achieved for a particular transaction\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant vault participant's username, eg participant@email.com\r\n @param _txid transaction identifier\r\n */\r\n function checkQuorum(bytes32 _creator, string calldata _id, bytes32 _participant, uint256 _txid) onlySigner(_creator, _id) external view returns(bool){\r\n require(pins[_creator][_participant]!=0);\r\n bool _quorum = false;\r\n for(uint i=0; i<transactions[_creator].length; i++){\r\n if(transactions[_creator][i].datetime==_txid){\r\n if(transactions[_creator][i].cosigners.length >= quorum[_creator])\r\n _quorum = true;\r\n }\r\n }\r\n if(_quorum)\r\n return true;\r\n else\r\n return false;\r\n }\r\n \r\n /**\r\n This function gets the shard for a participant\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _txid transaction identifier \r\n */\r\n function getShards(bytes32 _creator, string calldata _id, uint256 _txid) onlySigner(_creator, _id) external view returns(string[] memory){\r\n for(uint i=0; i<transactions[_creator].length; i++){\r\n if(transactions[_creator][i].datetime==_txid){\r\n if(transactions[_creator][i].cosigners.length >= quorum[_creator]){\r\n string[] memory keyShards = new string[](transactions[_creator][i].cosigners.length);\r\n for(uint j=0; j<transactions[_creator][i].cosigners.length; j++){\r\n keyShards[j] = shards[_creator][transactions[_creator][i].cosigners[j]]; \r\n }\r\n //delete transactions[_creator][i];\r\n return keyShards;\r\n }\r\n }\r\n }\r\n }\r\n\r\n}",
|
|
433
|
+
"metadata": "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"}],\"name\":\"removeParticipant\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getVaults\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_txid\",\"type\":\"uint256\"}],\"name\":\"checkQuorum\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_shard\",\"type\":\"string\"}],\"name\":\"addParticipant\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"}],\"name\":\"createVault\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_tx\",\"type\":\"uint256\"},{\"name\":\"_pin\",\"type\":\"uint256\"}],\"name\":\"signTransaction\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_txid\",\"type\":\"uint256\"}],\"name\":\"getShards\",\"outputs\":[{\"name\":\"\",\"type\":\"string[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"}],\"name\":\"promptSignatures\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_transferee\",\"type\":\"address\"}],\"name\":\"transferVault\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_minParticipants\",\"type\":\"uint256\"}],\"name\":\"defineQuorum\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_id\",\"type\":\"string\"},{\"name\":\"_participant\",\"type\":\"bytes32\"},{\"name\":\"_pin\",\"type\":\"uint256\"}],\"name\":\"confirmParticipant\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_creator\",\"type\":\"bytes32\"},{\"name\":\"_pin\",\"type\":\"uint256\"}],\"name\":\"getCreator\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"creator\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"participant\",\"type\":\"bytes32\"}],\"name\":\"NewParticipant\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"creator\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"participant\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"txid\",\"type\":\"uint256\"}],\"name\":\"NewTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"creator\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"participant\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"txid\",\"type\":\"uint256\"}],\"name\":\"SignTransaction\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"addParticipant(bytes32,string,bytes32,string)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"vault participant's username, eg participant@email.com\\r\",\"_shard\":\"the private key shard of the participant\\r\"}},\"checkQuorum(bytes32,string,bytes32,uint256)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"vault participant's username, eg participant@email.com\\r\",\"_txid\":\"transaction identifier\\r\"}},\"confirmParticipant(bytes32,string,bytes32,uint256)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"the vault's participant (eg, participant@email.com)\\r\",\"_pin\":\"the PIN number of the participant\\r\"}},\"createVault(bytes32,string)\":{\"params\":{\"_creator\":\"vault creator's username, eg, creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\"}},\"defineQuorum(bytes32,string,uint256)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_minParticipants\":\"the minimum number of co-signers\\r\"}},\"getCreator(bytes32,uint256)\":{\"params\":{\"_creator\":\"the vault creator (eg, creator@email.com)\\r\"},\"return\":\"the vault creator's unique ID\\r\"},\"getShards(bytes32,string,uint256)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_txid\":\"transaction identifier \\r\"}},\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"promptSignatures(bytes32,string)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\"}},\"removeParticipant(bytes32,string,bytes32)\":{\"params\":{\"_creator\":\"vault creator's username, eg creator@email.com\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"vault participant's username, eg participant@email.com\\r\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"signTransaction(bytes32,string,bytes32,uint256,uint256)\":{\"params\":{\"_creator\":\"the vault's creator (eg, creator@email.com)\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_participant\":\"the vault's participant (eg, participant@email.com)\\r\",\"_pin\":\"the PIN number of the signer (participant)\\r\",\"_tx\":\"transaction identifier\\r\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"transferVault(bytes32,string,address)\":{\"params\":{\"_creator\":\"vault to transfer\\r\",\"_id\":\"vault creator's unique id using which it can be reached, eg, its Google/APNS token\\r\",\"_transferee\":\"address of the new vault operator\\r\"}}}},\"userdoc\":{\"methods\":{\"addParticipant(bytes32,string,bytes32,string)\":{\"notice\":\"This function adds a participant to a vault that belongs to its creator\\r\"},\"checkQuorum(bytes32,string,bytes32,uint256)\":{\"notice\":\"This function lets the creator check if quorum has been achieved for a particular transaction\\r\"},\"confirmParticipant(bytes32,string,bytes32,uint256)\":{\"notice\":\"This function confirms a participant in the vault when the participant sends its private key shard and PIN\\r\"},\"createVault(bytes32,string)\":{\"notice\":\"This function creates a vault for the creator\\r\"},\"defineQuorum(bytes32,string,uint256)\":{\"notice\":\"This function defines the number of participants required to co-sign a transaction\\r\"},\"getCreator(bytes32,uint256)\":{\"notice\":\"This function returns the vault creator's unique ID (eg, Google/APNS messaging token)\\r\"},\"getShards(bytes32,string,uint256)\":{\"notice\":\"This function gets the shard for a participant\\r\"},\"getVaults()\":{\"notice\":\"This function returns list of vault creators\\r\"},\"promptSignatures(bytes32,string)\":{\"notice\":\"This function prompts participants to co-sign a transaction on the vault (ie, the creator's address secured by the quorum of participants)\\r\"},\"removeParticipant(bytes32,string,bytes32)\":{\"notice\":\"This function removes a participant in a vault that belongs to its creator\\r\"},\"signTransaction(bytes32,string,bytes32,uint256,uint256)\":{\"notice\":\"This function lets a participant co-sign a transaction\\r\"},\"transferVault(bytes32,string,address)\":{\"notice\":\"This function transfers a vault from the transferor (msg.sender) to transferee\\r\"}}}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Vault.sol\":\"Vault\"},\"evmVersion\":\"petersburg\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x3491510fa4862af1a43f6c860d9cf7392240196540cd3c0eea79d374d419c5a1\",\"urls\":[\"bzzr://5cddbf3b74b775a8670757a6b8e108dac17dac20253f35f4c729e9cb6bea4ed3\"]},\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzzr://b4c855b32d75f2a4969bfbd530b6934b69f12f28584b3746967e1ca64e024bd9\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0x9bfec92e36234ecc99b5d37230acb6cd1f99560233753162204104a4897e8721\",\"urls\":[\"bzzr://f75d88b16fe25a9e19b3512691c496e2bb6d8451bc9a636196c4e17ca9b40201\"]},\"project:/contracts/IVault.sol\":{\"keccak256\":\"0x4b738220cb322b7e7faa99f85df5f589adfe566e3c14f3b1c822505d2fc3a5f5\",\"urls\":[\"bzzr://e8f52d43059b62b1dce42a5f5dfd02c588996f83039d81586a3a27a358963fbb\"]},\"project:/contracts/Vault.sol\":{\"keccak256\":\"0xe8193761fabc928fb9b07e4af584678b02a9035a25fe8d344e160ad99ff47d26\",\"urls\":[\"bzzr://22be6532d17480478c4bd2b48b35123d7c245293d46a9faf173c46e624d5aea0\"]}},\"version\":1}",
|
|
434
|
+
"bytecode": "0x60806040523480156200001157600080fd5b5062000028336200002e60201b62000d9f1760201c565b620001bb565b600054610100900460ff1680620000505750620000506200013360201b60201c565b806200005f575060005460ff16155b620000a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000098906200019a565b60405180910390fd5b600054610100900460ff16158015620000cd576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a380156200012f576000805461ff00191690555b5050565b303b1590565b600062000148602e83620001b2565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b60208082528101620001ac8162000139565b92915050565b90815260200190565b611ee680620001cb6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063afa7777a116100a2578063dbcc0ef611610071578063dbcc0ef614610207578063e70eedb01461021a578063f2fde38b1461022d578063f62d871814610240578063fcae7efd146102535761010b565b8063afa7777a146101ae578063b418cd88146101c1578063c4d66de8146101e1578063d29da2a7146101f45761010b565b806388a563a7116100de57806388a563a71461016b5780638c4b3bcd1461017e5780638da5cb5b146101915780638f32d59b146101a65761010b565b80633136abd31461011057806344d00f8214610125578063715018a61461014357806378632fb21461014b575b600080fd5b61012361011e3660046117c5565b610273565b005b61012d6103c7565b60405161013a9190611d5e565b60405180910390f35b610123610429565b61015e6101593660046118bc565b61049a565b60405161013a9190611d80565b610123610179366004611823565b61062d565b61012361018c366004611705565b610785565b61019961080f565b60405161013a9190611d50565b61015e61081e565b6101236101bc36600461193a565b610844565b6101d46101cf3660046117c5565b610a8b565b60405161013a9190611d6f565b6101236101ef3660046116df565b610d9f565b610123610202366004611705565b610e75565b61012361021536600461175b565b61106f565b6101236102283660046117c5565b6111f4565b61012361023b3660046116df565b6112bd565b61012361024e3660046118bc565b6112f0565b6102666102613660046119ca565b6113db565b60405161013a9190611dd1565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516102bb9250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926102ed929101611d44565b604051602081830303815290604052805190602001201461032c57604051600160e51b62461bcd02815260040161032390611e22565b60405180910390fd5b6000868152606a60209081526040808320868452909152902054156103bf576000868152606960209081526040808320606a8352818420878552909252909120548154811061037757fe5b60009182526020808320909101829055878252606c8152604080832086845290915281206103a491611546565b6000868152606b602090815260408083208684529091528120555b505050505050565b3360009081526067602090815260409182902080548351818402810184019094528084526060939283018282801561041e57602002820191906000526020600020905b81548152602001906001019080831161040a575b505050505090505b90565b61043161081e565b61045057604051600160e51b62461bcd02815260040161032390611df2565b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b60008585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516104e49250839150602001611d38565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610516929101611d44565b604051602081830303815290604052805190602001201461054c57604051600160e51b62461bcd02815260040161032390611e22565b6000888152606b6020908152604080832088845290915290205461056f57600080fd5b6000805b60008a8152606e602052604090205481101561060b5760008a8152606e602052604090208054879190839081106105a657fe5b90600052602060002090600202016000015414156106035760008a8152606d6020908152604080832054606e9092529091208054839081106105e457fe5b9060005260206000209060020201600101805490501061060357600191505b600101610573565b50801561061c576001935050610622565b60009350505b505095945050505050565b8585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516106759250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926106a7929101611d44565b60405160208183030381529060405280519060200120146106dd57604051600160e51b62461bcd02815260040161032390611e22565b6000888152606c60209081526040808320888452909152902061070190858561158a565b508488146107425760008881526069602081815260408084208054606a84528286208b87528452918520829055928252600181018355918352909120018590555b7faa6e23bdac31ae314e8eec6a579fd0418f7b5f0bca74e9ef11e78373cec74dd58886604051610773929190611d8e565b60405180910390a15050505050505050565b6000838152606960205260409020541561079e57600080fd5b336000908152606760209081526040808320805460018101825590845282842001869055858352606890915290206107d790838361158a565b50505060008181526069602081815260408084208054606a845282862084529185208290559282526001810183559183529091200155565b6033546001600160a01b031690565b6033546000906001600160a01b03166108356114b7565b6001600160a01b031614905090565b8285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161088c9250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926108be929101611d44565b60405160208183030381529060405280519060200120146108f457604051600160e51b62461bcd02815260040161032390611e22565b6000888152606b60209081526040808320888452909152902054831461091957600080fd5b60005b6000898152606e6020526040902054811015610a80576000898152606e6020526040902080548691908390811061094f57fe5b9060005260206000209060020201600001541415610a785760005b60008a8152606e6020526040902080548390811061098457fe5b906000526020600020906002020160010180549050811015610a3b5760008a8152606e602052604090208054839081106109ba57fe5b906000526020600020906002020160010181815481106109d657fe5b906000526020600020015460001415610a335760008a8152606e60205260409020805488919084908110610a0657fe5b90600052602060002090600202016001018281548110610a2257fe5b600091825260209091200155610a3b565b60010161096a565b507faff273650e3a4ea06a9841f55dd08ea83018f0c09836f109ccba14823e59de47898787604051610a6f93929190611da9565b60405180910390a15b60010161091c565b505050505050505050565b60608484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610ad59250839150602001611d38565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610b07929101611d44565b6040516020818303038152906040528051906020012014610b3d57604051600160e51b62461bcd02815260040161032390611e22565b60005b6000888152606e6020526040902054811015610d93576000888152606e60205260409020805486919083908110610b7357fe5b9060005260206000209060020201600001541415610d8b576000888152606d6020908152604080832054606e909252909120805483908110610bb157fe5b90600052602060002090600202016001018054905010610d8b576000888152606e6020526040902080546060919083908110610be957fe5b906000526020600020906002020160010180549050604051908082528060200260200182016040528015610c3157816020015b6060815260200190600190039081610c1c5790505b50905060005b60008a8152606e60205260409020805484908110610c5157fe5b906000526020600020906002020160010180549050811015610d815760008a8152606c60209081526040808320606e9092528220805491929186908110610c9457fe5b90600052602060002090600202016001018381548110610cb057fe5b906000526020600020015481526020019081526020016000208054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d5d5780601f10610d3257610100808354040283529160200191610d5d565b820191906000526020600020905b815481529060010190602001808311610d4057829003601f168201915b5050505050828281518110610d6e57fe5b6020908102919091010152600101610c37565b509350610d959050565b600101610b40565b505b5050949350505050565b600054610100900460ff1680610db85750610db86114bb565b80610dc6575060005460ff16155b610de557604051600160e51b62461bcd02815260040161032390611e02565b600054610100900460ff16158015610e10576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610e71576000805461ff00191690555b5050565b8282828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610ebd9250839150602001611d38565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610eef929101611d44565b6040516020818303038152906040528051906020012014610f2557604051600160e51b62461bcd02815260040161032390611e22565b60008581526069602090815260409182902054825181815281830281019092019092526060918015610f61578160200160208202803883390190505b5090506066544214610f735742610f7a565b6066546001015b606655610f85611608565b506040805180820182526066548152602080820184815260008a8152606e83529384208054600181810180845592875295849020855160029092020190815591518051949591948694610fdc938501920190611622565b506000925050505b60008881526069602052604090205481101561106557600088815260696020526040902080547f7f8d3f14b960b3bcf34baea4b46178e331b54a33e565d7d50d77cdfe9e926fe8918a918490811061103857fe5b906000526020600020015460665460405161105593929190611da9565b60405180910390a1600101610fe4565b5050505050505050565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516110b79250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926110e9929101611d44565b604051602081830303815290604052805190602001201461111f57604051600160e51b62461bcd02815260040161032390611e22565b6000805b3360009081526067602052604090205481101561119c5733600090815260676020526040902080548991908390811061115857fe5b90600052602060002001541415611194573360009081526067602052604090208054600193508290811061118857fe5b60009182526020822001555b600101611123565b506001811515146111c257604051600160e51b62461bcd02815260040161032390611e22565b5050506001600160a01b0316600090815260676020908152604082208054600181018255908352912001929092555050565b8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161123c9250839150602001611d38565b60408051601f19818403018152828252805160209182012060008681526068835292909220919261126e929101611d44565b60405160208183030381529060405280519060200120146112a457604051600160e51b62461bcd02815260040161032390611e22565b50506000938452606d6020526040909320929092555050565b6112c561081e565b6112e457604051600160e51b62461bcd02815260040161032390611df2565b6112ed816114c1565b50565b8184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516113389250839150602001611d38565b60408051601f19818403018152828252805160209182012060008681526068835292909220919261136a929101611d44565b60405160208183030381529060405280519060200120146113a057604051600160e51b62461bcd02815260040161032390611e22565b6000878152606960205260409020546113b857600080fd5b50506000948552606b602090815260408087209387529290529320929092555050565b6000828152606b60209081526040808320909152902054606090821461141657604051600160e51b62461bcd02815260040161032390611e12565b60008381526068602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156114a95780601f1061147e576101008083540402835291602001916114a9565b820191906000526020600020905b81548152906001019060200180831161148c57829003601f168201915b505050505090505b92915050565b3390565b303b1590565b6001600160a01b0381166114ea57604051600160e51b62461bcd02815260040161032390611de2565b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b50805460018160011615610100020316600290046000825580601f1061156c57506112ed565b601f0160209004906000526020600020908101906112ed919061165d565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115cb5782800160ff198235161785556115f8565b828001600101855582156115f8579182015b828111156115f85782358255916020019190600101906115dd565b5061160492915061165d565b5090565b604051806040016040528060008152602001606081525090565b8280548282559060005260206000209081019282156115f8579160200282015b828111156115f8578251825591602001919060010190611642565b61042691905b808211156116045760008155600101611663565b60006116838235611e56565b9392505050565b60006116838235610426565b60008083601f8401126116a857600080fd5b50813567ffffffffffffffff8111156116c057600080fd5b6020830191508360018202830111156116d857600080fd5b9250929050565b6000602082840312156116f157600080fd5b60006116fd8484611677565b949350505050565b60008060006040848603121561171a57600080fd5b6000611726868661168a565b935050602084013567ffffffffffffffff81111561174357600080fd5b61174f86828701611696565b92509250509250925092565b6000806000806060858703121561177157600080fd5b600061177d878761168a565b945050602085013567ffffffffffffffff81111561179a57600080fd5b6117a687828801611696565b935093505060406117b987828801611677565b91505092959194509250565b600080600080606085870312156117db57600080fd5b60006117e7878761168a565b945050602085013567ffffffffffffffff81111561180457600080fd5b61181087828801611696565b935093505060406117b98782880161168a565b6000806000806000806080878903121561183c57600080fd5b6000611848898961168a565b965050602087013567ffffffffffffffff81111561186557600080fd5b61187189828a01611696565b9550955050604061188489828a0161168a565b935050606087013567ffffffffffffffff8111156118a157600080fd5b6118ad89828a01611696565b92509250509295509295509295565b6000806000806000608086880312156118d457600080fd5b60006118e0888861168a565b955050602086013567ffffffffffffffff8111156118fd57600080fd5b61190988828901611696565b9450945050604061191c8882890161168a565b925050606061192d8882890161168a565b9150509295509295909350565b60008060008060008060a0878903121561195357600080fd5b600061195f898961168a565b965050602087013567ffffffffffffffff81111561197c57600080fd5b61198889828a01611696565b9550955050604061199b89828a0161168a565b93505060606119ac89828a0161168a565b92505060806119bd89828a0161168a565b9150509295509295509295565b600080604083850312156119dd57600080fd5b60006119e9858561168a565b92505060206119fa8582860161168a565b9150509250929050565b6000611a108383611afb565b505060200190565b60006116838383611b04565b611a2d81611e56565b82525050565b6000611a3e82611e44565b611a488185611e48565b9350611a5383611e32565b60005b82811015611a7e57611a69868351611a04565b9550611a7482611e32565b9150600101611a56565b5093949350505050565b6000611a9382611e44565b611a9d8185611e48565b935083602082028501611aaf85611e32565b60005b84811015611ae6578383038852611aca838351611a18565b9250611ad582611e32565b602098909801979150600101611ab2565b50909695505050505050565b611a2d81611e61565b611a2d81610426565b6000611b0f82611e44565b611b198185611e48565b9350611b29818560208601611e72565b611b3281611ea2565b9093019392505050565b6000611b4782611e44565b611b518185611e51565b9350611b61818560208601611e72565b9290920192915050565b600081546001811660008114611b885760018114611bab57611bea565b607f6002830416611b998187611e51565b60ff1984168152955085019250611bea565b60028204611bb98187611e51565b9550611bc485611e38565b60005b82811015611be357815488820152600190910190602001611bc7565b5050850192505b505092915050565b6000611bff602683611e48565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b6000611c4a602083611e48565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b6000611c83602e83611e48565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000611ce2600b83611e48565b600160a91b6a24b73b30b634b2102824a702815260200192915050565b6000611d0c601283611e48565b7f4e6f7420612076616c6964207369676e65720000000000000000000000000000815260200192915050565b60006116838284611b3c565b60006116838284611b6b565b602081016114b18284611a24565b602080825281016116838184611a33565b602080825281016116838184611a88565b602081016114b18284611af2565b60408101611d9c8285611afb565b6116836020830184611afb565b60608101611db78286611afb565b611dc46020830185611afb565b6116fd6040830184611afb565b602080825281016116838184611b04565b602080825281016114b181611bf2565b602080825281016114b181611c3d565b602080825281016114b181611c76565b602080825281016114b181611cd5565b602080825281016114b181611cff565b60200190565b60009081526020902090565b5190565b90815260200190565b919050565b60006114b182611e66565b151590565b6001600160a01b031690565b60005b83811015611e8d578181015183820152602001611e75565b83811115611e9c576000848401525b50505050565b601f01601f19169056fea265627a7a7230582054b9ae286a04afdb1671769f9b895c6e89d6aea6798ad1e96df7fb6b8cb93aae6c6578706572696d656e74616cf50037",
|
|
435
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c8063afa7777a116100a2578063dbcc0ef611610071578063dbcc0ef614610207578063e70eedb01461021a578063f2fde38b1461022d578063f62d871814610240578063fcae7efd146102535761010b565b8063afa7777a146101ae578063b418cd88146101c1578063c4d66de8146101e1578063d29da2a7146101f45761010b565b806388a563a7116100de57806388a563a71461016b5780638c4b3bcd1461017e5780638da5cb5b146101915780638f32d59b146101a65761010b565b80633136abd31461011057806344d00f8214610125578063715018a61461014357806378632fb21461014b575b600080fd5b61012361011e3660046117c5565b610273565b005b61012d6103c7565b60405161013a9190611d5e565b60405180910390f35b610123610429565b61015e6101593660046118bc565b61049a565b60405161013a9190611d80565b610123610179366004611823565b61062d565b61012361018c366004611705565b610785565b61019961080f565b60405161013a9190611d50565b61015e61081e565b6101236101bc36600461193a565b610844565b6101d46101cf3660046117c5565b610a8b565b60405161013a9190611d6f565b6101236101ef3660046116df565b610d9f565b610123610202366004611705565b610e75565b61012361021536600461175b565b61106f565b6101236102283660046117c5565b6111f4565b61012361023b3660046116df565b6112bd565b61012361024e3660046118bc565b6112f0565b6102666102613660046119ca565b6113db565b60405161013a9190611dd1565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516102bb9250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926102ed929101611d44565b604051602081830303815290604052805190602001201461032c57604051600160e51b62461bcd02815260040161032390611e22565b60405180910390fd5b6000868152606a60209081526040808320868452909152902054156103bf576000868152606960209081526040808320606a8352818420878552909252909120548154811061037757fe5b60009182526020808320909101829055878252606c8152604080832086845290915281206103a491611546565b6000868152606b602090815260408083208684529091528120555b505050505050565b3360009081526067602090815260409182902080548351818402810184019094528084526060939283018282801561041e57602002820191906000526020600020905b81548152602001906001019080831161040a575b505050505090505b90565b61043161081e565b61045057604051600160e51b62461bcd02815260040161032390611df2565b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b60008585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516104e49250839150602001611d38565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610516929101611d44565b604051602081830303815290604052805190602001201461054c57604051600160e51b62461bcd02815260040161032390611e22565b6000888152606b6020908152604080832088845290915290205461056f57600080fd5b6000805b60008a8152606e602052604090205481101561060b5760008a8152606e602052604090208054879190839081106105a657fe5b90600052602060002090600202016000015414156106035760008a8152606d6020908152604080832054606e9092529091208054839081106105e457fe5b9060005260206000209060020201600101805490501061060357600191505b600101610573565b50801561061c576001935050610622565b60009350505b505095945050505050565b8585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516106759250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926106a7929101611d44565b60405160208183030381529060405280519060200120146106dd57604051600160e51b62461bcd02815260040161032390611e22565b6000888152606c60209081526040808320888452909152902061070190858561158a565b508488146107425760008881526069602081815260408084208054606a84528286208b87528452918520829055928252600181018355918352909120018590555b7faa6e23bdac31ae314e8eec6a579fd0418f7b5f0bca74e9ef11e78373cec74dd58886604051610773929190611d8e565b60405180910390a15050505050505050565b6000838152606960205260409020541561079e57600080fd5b336000908152606760209081526040808320805460018101825590845282842001869055858352606890915290206107d790838361158a565b50505060008181526069602081815260408084208054606a845282862084529185208290559282526001810183559183529091200155565b6033546001600160a01b031690565b6033546000906001600160a01b03166108356114b7565b6001600160a01b031614905090565b8285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161088c9250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926108be929101611d44565b60405160208183030381529060405280519060200120146108f457604051600160e51b62461bcd02815260040161032390611e22565b6000888152606b60209081526040808320888452909152902054831461091957600080fd5b60005b6000898152606e6020526040902054811015610a80576000898152606e6020526040902080548691908390811061094f57fe5b9060005260206000209060020201600001541415610a785760005b60008a8152606e6020526040902080548390811061098457fe5b906000526020600020906002020160010180549050811015610a3b5760008a8152606e602052604090208054839081106109ba57fe5b906000526020600020906002020160010181815481106109d657fe5b906000526020600020015460001415610a335760008a8152606e60205260409020805488919084908110610a0657fe5b90600052602060002090600202016001018281548110610a2257fe5b600091825260209091200155610a3b565b60010161096a565b507faff273650e3a4ea06a9841f55dd08ea83018f0c09836f109ccba14823e59de47898787604051610a6f93929190611da9565b60405180910390a15b60010161091c565b505050505050505050565b60608484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610ad59250839150602001611d38565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610b07929101611d44565b6040516020818303038152906040528051906020012014610b3d57604051600160e51b62461bcd02815260040161032390611e22565b60005b6000888152606e6020526040902054811015610d93576000888152606e60205260409020805486919083908110610b7357fe5b9060005260206000209060020201600001541415610d8b576000888152606d6020908152604080832054606e909252909120805483908110610bb157fe5b90600052602060002090600202016001018054905010610d8b576000888152606e6020526040902080546060919083908110610be957fe5b906000526020600020906002020160010180549050604051908082528060200260200182016040528015610c3157816020015b6060815260200190600190039081610c1c5790505b50905060005b60008a8152606e60205260409020805484908110610c5157fe5b906000526020600020906002020160010180549050811015610d815760008a8152606c60209081526040808320606e9092528220805491929186908110610c9457fe5b90600052602060002090600202016001018381548110610cb057fe5b906000526020600020015481526020019081526020016000208054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d5d5780601f10610d3257610100808354040283529160200191610d5d565b820191906000526020600020905b815481529060010190602001808311610d4057829003601f168201915b5050505050828281518110610d6e57fe5b6020908102919091010152600101610c37565b509350610d959050565b600101610b40565b505b5050949350505050565b600054610100900460ff1680610db85750610db86114bb565b80610dc6575060005460ff16155b610de557604051600160e51b62461bcd02815260040161032390611e02565b600054610100900460ff16158015610e10576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610e71576000805461ff00191690555b5050565b8282828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610ebd9250839150602001611d38565b60408051601f198184030181528282528051602091820120600086815260688352929092209192610eef929101611d44565b6040516020818303038152906040528051906020012014610f2557604051600160e51b62461bcd02815260040161032390611e22565b60008581526069602090815260409182902054825181815281830281019092019092526060918015610f61578160200160208202803883390190505b5090506066544214610f735742610f7a565b6066546001015b606655610f85611608565b506040805180820182526066548152602080820184815260008a8152606e83529384208054600181810180845592875295849020855160029092020190815591518051949591948694610fdc938501920190611622565b506000925050505b60008881526069602052604090205481101561106557600088815260696020526040902080547f7f8d3f14b960b3bcf34baea4b46178e331b54a33e565d7d50d77cdfe9e926fe8918a918490811061103857fe5b906000526020600020015460665460405161105593929190611da9565b60405180910390a1600101610fe4565b5050505050505050565b8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516110b79250839150602001611d38565b60408051601f1981840301815282825280516020918201206000868152606883529290922091926110e9929101611d44565b604051602081830303815290604052805190602001201461111f57604051600160e51b62461bcd02815260040161032390611e22565b6000805b3360009081526067602052604090205481101561119c5733600090815260676020526040902080548991908390811061115857fe5b90600052602060002001541415611194573360009081526067602052604090208054600193508290811061118857fe5b60009182526020822001555b600101611123565b506001811515146111c257604051600160e51b62461bcd02815260040161032390611e22565b5050506001600160a01b0316600090815260676020908152604082208054600181018255908352912001929092555050565b8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161123c9250839150602001611d38565b60408051601f19818403018152828252805160209182012060008681526068835292909220919261126e929101611d44565b60405160208183030381529060405280519060200120146112a457604051600160e51b62461bcd02815260040161032390611e22565b50506000938452606d6020526040909320929092555050565b6112c561081e565b6112e457604051600160e51b62461bcd02815260040161032390611df2565b6112ed816114c1565b50565b8184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516113389250839150602001611d38565b60408051601f19818403018152828252805160209182012060008681526068835292909220919261136a929101611d44565b60405160208183030381529060405280519060200120146113a057604051600160e51b62461bcd02815260040161032390611e22565b6000878152606960205260409020546113b857600080fd5b50506000948552606b602090815260408087209387529290529320929092555050565b6000828152606b60209081526040808320909152902054606090821461141657604051600160e51b62461bcd02815260040161032390611e12565b60008381526068602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156114a95780601f1061147e576101008083540402835291602001916114a9565b820191906000526020600020905b81548152906001019060200180831161148c57829003601f168201915b505050505090505b92915050565b3390565b303b1590565b6001600160a01b0381166114ea57604051600160e51b62461bcd02815260040161032390611de2565b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b50805460018160011615610100020316600290046000825580601f1061156c57506112ed565b601f0160209004906000526020600020908101906112ed919061165d565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115cb5782800160ff198235161785556115f8565b828001600101855582156115f8579182015b828111156115f85782358255916020019190600101906115dd565b5061160492915061165d565b5090565b604051806040016040528060008152602001606081525090565b8280548282559060005260206000209081019282156115f8579160200282015b828111156115f8578251825591602001919060010190611642565b61042691905b808211156116045760008155600101611663565b60006116838235611e56565b9392505050565b60006116838235610426565b60008083601f8401126116a857600080fd5b50813567ffffffffffffffff8111156116c057600080fd5b6020830191508360018202830111156116d857600080fd5b9250929050565b6000602082840312156116f157600080fd5b60006116fd8484611677565b949350505050565b60008060006040848603121561171a57600080fd5b6000611726868661168a565b935050602084013567ffffffffffffffff81111561174357600080fd5b61174f86828701611696565b92509250509250925092565b6000806000806060858703121561177157600080fd5b600061177d878761168a565b945050602085013567ffffffffffffffff81111561179a57600080fd5b6117a687828801611696565b935093505060406117b987828801611677565b91505092959194509250565b600080600080606085870312156117db57600080fd5b60006117e7878761168a565b945050602085013567ffffffffffffffff81111561180457600080fd5b61181087828801611696565b935093505060406117b98782880161168a565b6000806000806000806080878903121561183c57600080fd5b6000611848898961168a565b965050602087013567ffffffffffffffff81111561186557600080fd5b61187189828a01611696565b9550955050604061188489828a0161168a565b935050606087013567ffffffffffffffff8111156118a157600080fd5b6118ad89828a01611696565b92509250509295509295509295565b6000806000806000608086880312156118d457600080fd5b60006118e0888861168a565b955050602086013567ffffffffffffffff8111156118fd57600080fd5b61190988828901611696565b9450945050604061191c8882890161168a565b925050606061192d8882890161168a565b9150509295509295909350565b60008060008060008060a0878903121561195357600080fd5b600061195f898961168a565b965050602087013567ffffffffffffffff81111561197c57600080fd5b61198889828a01611696565b9550955050604061199b89828a0161168a565b93505060606119ac89828a0161168a565b92505060806119bd89828a0161168a565b9150509295509295509295565b600080604083850312156119dd57600080fd5b60006119e9858561168a565b92505060206119fa8582860161168a565b9150509250929050565b6000611a108383611afb565b505060200190565b60006116838383611b04565b611a2d81611e56565b82525050565b6000611a3e82611e44565b611a488185611e48565b9350611a5383611e32565b60005b82811015611a7e57611a69868351611a04565b9550611a7482611e32565b9150600101611a56565b5093949350505050565b6000611a9382611e44565b611a9d8185611e48565b935083602082028501611aaf85611e32565b60005b84811015611ae6578383038852611aca838351611a18565b9250611ad582611e32565b602098909801979150600101611ab2565b50909695505050505050565b611a2d81611e61565b611a2d81610426565b6000611b0f82611e44565b611b198185611e48565b9350611b29818560208601611e72565b611b3281611ea2565b9093019392505050565b6000611b4782611e44565b611b518185611e51565b9350611b61818560208601611e72565b9290920192915050565b600081546001811660008114611b885760018114611bab57611bea565b607f6002830416611b998187611e51565b60ff1984168152955085019250611bea565b60028204611bb98187611e51565b9550611bc485611e38565b60005b82811015611be357815488820152600190910190602001611bc7565b5050850192505b505092915050565b6000611bff602683611e48565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b6000611c4a602083611e48565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b6000611c83602e83611e48565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000611ce2600b83611e48565b600160a91b6a24b73b30b634b2102824a702815260200192915050565b6000611d0c601283611e48565b7f4e6f7420612076616c6964207369676e65720000000000000000000000000000815260200192915050565b60006116838284611b3c565b60006116838284611b6b565b602081016114b18284611a24565b602080825281016116838184611a33565b602080825281016116838184611a88565b602081016114b18284611af2565b60408101611d9c8285611afb565b6116836020830184611afb565b60608101611db78286611afb565b611dc46020830185611afb565b6116fd6040830184611afb565b602080825281016116838184611b04565b602080825281016114b181611bf2565b602080825281016114b181611c3d565b602080825281016114b181611c76565b602080825281016114b181611cd5565b602080825281016114b181611cff565b60200190565b60009081526020902090565b5190565b90815260200190565b919050565b60006114b182611e66565b151590565b6001600160a01b031690565b60005b83811015611e8d578181015183820152602001611e75565b83811115611e9c576000848401525b50505050565b601f01601f19169056fea265627a7a7230582054b9ae286a04afdb1671769f9b895c6e89d6aea6798ad1e96df7fb6b8cb93aae6c6578706572696d656e74616cf50037",
|
|
436
|
+
"sourceMap": "321:11425:5:-;;;2486:69;8:9:-1;5:2;;;30:1;27;20:12;5:2;2486:69:5;2517:30;2536:10;2517:18;;;;;:30;;:::i;:::-;321:11425;;741:142:1;1024:12:2;;;;;;;;:31;;;1040:15;:13;;;:15;;:::i;:::-;1024:47;;;-1:-1:-1;1060:11:2;;;;1059:12;1024:47;1016:106;;;;;;;;;;;;;;;;;;;;;;1129:19;1152:12;;;;;;1151:13;1170:80;;;;1198:12;:19;;-1:-1:-1;;;;1198:19:2;;;;;1225:18;1213:4;1225:18;;;1170:80;806:6:1;:15;;-1:-1:-1;;;;;;806:15:1;-1:-1:-1;;;;;806:15:1;;;;;;;;;;;836:40;;869:6;;;-1:-1:-1;;836:40:1;;-1:-1:-1;;836:40:1;1268:14:2;1264:55;;;1307:5;1292:20;;-1:-1:-1;;1292:20:2;;;1264:55;741:142:1;;:::o;1409:498:2:-;1820:4;1864:17;1895:7;1409:498;:::o;6:465:-1:-;;166:67;230:2;225:3;166:67;;;266:66;246:87;;367:66;362:2;353:12;;346:88;462:2;453:12;;152:319;-1:-1;;152:319;479:407;670:2;684:47;;;655:18;;745:131;655:18;745:131;;;737:139;641:245;-1:-1;;641:245;894:163;997:19;;;1046:4;1037:14;;990:67;;321:11425:5;;;;;;",
|
|
437
|
+
"deployedSourceMap": "321:11425:5:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;321:11425:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5887:369;;;;;;;;;:::i;:::-;;3203:105;;;:::i;:::-;;;;;;;;;;;;;;;;1746:137:1;;;:::i;10005:597:5:-;;;;;;;;;:::i;:::-;;;;;;;;4993:525;;;;;;;;;:::i;2812:311::-;;;;;;;;;:::i;959:77:1:-;;;:::i;:::-;;;;;;;;1310:92;;;:::i;8840:732:5:-;;;;;;;;;:::i;10909:832::-;;;;;;;;;:::i;:::-;;;;;;;;741:142:1;;;;;;;;;:::i;7826:564:5:-;;;;;;;;;:::i;3644:469::-;;;;;;;;;:::i;7304:176::-;;;;;;;;;:::i;2032:107:1:-;;;;;;;;;:::i;6707:241:5:-;;;;;;;;;:::i;4348:215::-;;;;;;;;;:::i;:::-;;;;;;;;5887:369;5986:8;5996:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;;;;;;;;;6060:1;6024:19;;;:9;:19;;;;;;;;:33;;;;;;;;;:37;6021:228;;6084:16;;;;:6;:16;;;;;;;;6101:9;:19;;;;;:33;;;;;;;;;;6084:51;;;;;;;;;;;;;;;;;;;6077:58;;;6157:16;;;:6;:16;;;;;;:30;;;;;;;;6150:37;;;:::i;:::-;6209:14;;;;:4;:14;;;;;;;;:28;;;;;;;;6202:35;6021:228;5887:369;;;;;;:::o;3203:105::-;3289:10;3281:19;;;;:7;:19;;;;;;;;;3274:26;;;;;;;;;;;;;;;;;3246:16;;3274:26;;;3281:19;3274:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3203:105;;:::o;1746:137:1:-;1163:9;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;1828:6;;1807:40;;1844:1;;-1:-1:-1;;;;;1828:6:1;;1807:40;;1844:1;;1807:40;1857:6;:19;;-1:-1:-1;;;;;;1857:19:1;;;1746:137::o;10005:597:5:-;10150:4;10113:8;10123:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;10174:14;;;;:4;:14;;;;;;;;:28;;;;;;;;;10166:40;;;;;;10217:12;;10248:259;10264:22;;;;:12;:22;;;;;:29;10262:31;;10248:259;;;10317:22;;;;:12;:22;;;;;:25;;10353:5;;10317:22;10340:1;;10317:25;;;;;;;;;;;;;;;;:34;;;:41;10314:182;;;10427:16;;;;:6;:16;;;;;;;;;10381:12;:22;;;;;;:25;;10404:1;;10381:25;;;;;;;;;;;;;;;;:35;;:42;;;;:62;10378:102;;10476:4;10466:14;;10378:102;10295:3;;10248:259;;;;10520:7;10517:77;;;10549:4;10542:11;;;;;10517:77;10589:5;10582:12;;;2469:1;10005:597;;;;;;;;;:::o;4993:525::-;5113:8;5123:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;5239:16;;;;:6;:16;;;;;;;;:30;;;;;;;;:39;;5272:6;;5239:39;:::i;:::-;;5302:12;5292:8;:22;5289:168;;5366:16;;;;:6;:16;;;;;;;;:23;;5330:9;:19;;;;;:33;;;;;;;;:59;;;5404:16;;;39:1:-1;23:18;;45:23;;5404:35:5;;;;;;;;;;5289:168;5472:38;5487:8;5497:12;5472:38;;;;;;;;;;;;;;;;4993:525;;;;;;;;:::o;2812:311::-;2900:16;;;;:6;:16;;;;;:23;:26;2892:35;;;;;;2946:10;2938:19;;;;:7;:19;;;;;;;;27:10:-1;;39:1;23:18;;45:23;;2938:34:5;;;;;;;;;;2983:18;;;:8;:18;;;;;:24;;3004:3;;2983:24;:::i;:::-;-1:-1:-1;;;3050:16:5;;;;:6;:16;;;;;;;;:23;;3018:9;:19;;;;;:29;;;;;:55;;;3084:16;;;39:1:-1;23:18;;45:23;;3084:31:5;;;;;;;;2812:311::o;959:77:1:-;1023:6;;-1:-1:-1;;;;;1023:6:1;959:77;:::o;1310:92::-;1389:6;;1350:4;;-1:-1:-1;;;;;1389:6:1;1373:12;:10;:12::i;:::-;-1:-1:-1;;;;;1373:22:1;;1366:29;;1310:92;:::o;8840:732:5:-;8964:12;8978:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;9011:14;;;;:4;:14;;;;;;;;:28;;;;;;;;;:34;;9003:43;;;;;;9061:6;9057:508;9073:22;;;;:12;:22;;;;;:29;9071:31;;9057:508;;;9126:22;;;;:12;:22;;;;;:25;;9162:3;;9126:22;9149:1;;9126:25;;;;;;;;;;;;;;;;:34;;;:39;9123:431;;;9189:6;9185:286;9201:22;;;;:12;:22;;;;;:25;;9224:1;;9201:25;;;;;;;;;;;;;;;;:35;;:42;;;;9199:1;:44;9185:286;;;9275:22;;;;:12;:22;;;;;:25;;9298:1;;9275:25;;;;;;;;;;;;;;;;:35;;9311:1;9275:38;;;;;;;;;;;;;;;;:42;;9272:180;;;9345:22;;;;:12;:22;;;;;:25;;9384:12;;9345:22;9368:1;;9345:25;;;;;;;;;;;;;;;;:35;;9381:1;9345:38;;;;;;;;;;;;;;;;;:51;9423:5;;9272:180;9245:3;;9185:286;;;;9494:44;9510:8;9520:12;9534:3;9494:44;;;;;;;;;;;;;;;;;9123:431;9104:3;;9057:508;;;;8840:732;;;;;;;;:::o;10909:832::-;11030:15;10993:8;11003:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;11061:6;11057:677;11073:22;;;;:12;:22;;;;;:29;11071:31;;11057:677;;;11126:22;;;;:12;:22;;;;;:25;;11162:5;;11126:22;11149:1;;11126:25;;;;;;;;;;;;;;;;:34;;;:41;11123:600;;;11236:16;;;;:6;:16;;;;;;;;;11190:12;:22;;;;;;:25;;11213:1;;11190:25;;;;;;;;;;;;;;;;:35;;:42;;;;:62;11187:521;;11317:22;;;;:12;:22;;;;;:25;;11276;;11317:22;11340:1;;11317:25;;;;;;;;;;;;;;;;:35;;:42;;;;11304:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11276:84:5;-1:-1:-1;11387:6:5;11383:210;11399:22;;;;:12;:22;;;;;:25;;11422:1;;11399:25;;;;;;;;;;;;;;;;:35;;:42;;;;11397:1;:44;11383:210;;;11489:16;;;;:6;:16;;;;;;;;11506:12;:22;;;;;:25;;11489:16;;;11529:1;;11506:25;;;;;;;;;;;;;;;;:35;;11542:1;11506:38;;;;;;;;;;;;;;;;11489:56;;;;;;;;;;;11474:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;11484:1;11474:12;;;;;;;;;;;;;;;;;:71;11443:3;;11383:210;;;-1:-1:-1;11679:9:5;-1:-1:-1;11672:16:5;;-1:-1:-1;11672:16:5;11187:521;11104:3;;11057:677;;;;2469:1;10909:832;;;;;;;;:::o;741:142:1:-;1024:12:2;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:2;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;;;1016:106:2;;;;;;;;;1129:19;1152:12;;;;;;1151:13;1170:80;;;;1198:12;:19;;-1:-1:-1;;;;1198:19:2;;;;;1225:18;1213:4;1225:18;;;1170:80;806:6:1;:15;;-1:-1:-1;;;;;;806:15:1;-1:-1:-1;;;;;806:15:1;;;;;;;;;;;836:40;;869:6;;;-1:-1:-1;;836:40:1;;-1:-1:-1;;836:40:1;1268:14:2;1264:55;;;1307:5;1292:20;;-1:-1:-1;;1292:20:2;;;1264:55;741:142:1;;:::o;7826:564:5:-;7902:8;7912:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;7973:16;;;;:6;:16;;;;;;;;;:23;7959:38;;;;;;;;;;;;;;;;7937:19;;7959:38;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;7959:38:5;;7937:60;;8034:4;;8015:15;:23;:52;;8052:15;8015:52;;;8041:4;;8048:1;8041:8;8015:52;8008:4;:59;8078:28;;:::i;:::-;-1:-1:-1;8109:83:5;;;;;;;;8147:4;;8109:83;;;;;;;;;-1:-1:-1;8203:22:5;;;:12;:22;;;;;27:10:-1;;39:1;23:18;;;45:23;;;8203:38:5;;;;;;;;;;;;;;;;;;;;;8109:83;;23:18:-1;;8109:83:5;;8203:38;;;;;;;;:::i;:::-;-1:-1:-1;8256:9:5;;-1:-1:-1;;;8252:131:5;8271:16;;;;:6;:16;;;;;:23;8269:25;;8252:131;;;8345:16;;;;:6;:16;;;;;:19;;8320:51;;8335:8;;8362:1;;8345:19;;;;;;;;;;;;;;8366:4;;8320:51;;;;;;;;;;;;;;;;;8296:3;;8252:131;;;;2469:1;;7826:564;;;;;:::o;3644:469::-;3738:8;3748:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;3773:10;;3802:205;3826:10;3818:19;;;;:7;:19;;;;;:26;3816:28;;3802:205;;;3876:10;3868:19;;;;:7;:19;;;;;:22;;3892:8;;3868:19;3888:1;;3868:22;;;;;;;;;;;;;;:32;3865:131;;;3966:10;3958:19;;;;:7;:19;;;;;:22;;3928:4;;-1:-1:-1;3978:1:5;;3958:22;;;;;;;;;;;;;;3951:29;3865:131;3846:3;;3802:205;;;-1:-1:-1;4032:4:5;4025:11;;;;4017:42;;;;-1:-1:-1;;;;;4017:42:5;;;;;;;;;-1:-1:-1;;;;;;;;4070:20:5;;;;;:7;:20;;;;;;;27:10:-1;;39:1;23:18;;45:23;;4070:35:5;;;;;;;;;;-1:-1:-1;;3644:469:5:o;7304:176::-;7402:8;7412:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;-1:-1:-1;;7437:16:5;;;;:6;:16;;;;;;:35;;;;-1:-1:-1;;7304:176:5:o;2032:107:1:-;1163:9;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;2104:28;2123:8;2104:18;:28::i;:::-;2032:107;:::o;6707:241:5:-;6821:12;6835:3;;2276:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;;2413:21:5;;;;-1:-1:-1;2430:3:5;;-1:-1:-1;2413:21:5;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;2413:21:5;;;2403:32;;49:4:-1;2403:32:5;;;;2379:18;;;;:8;:18;;;;;;2403:32;;2362:36;;2379:18;2362:36;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2362:36:5;;;2352:47;;;;;;:83;2344:114;;;;-1:-1:-1;;;;;2344:114:5;;;;;;;;;6892:1;6868:16;;;:6;:16;;;;;:23;6860:34;;;;;;-1:-1:-1;;6905:14:5;;;;:4;:14;;;;;;;;:28;;;;;;;;:35;;;;-1:-1:-1;;6707:241:5:o;4348:215::-;4460:14;;;;:4;:14;;;;;;;;:24;;;;;;4422:13;;4460:32;;4452:56;;;;-1:-1:-1;;;;;4452:56:5;;;;;;;;;4529:18;;;;:8;:18;;;;;;;;;4522:25;;;;;;-1:-1:-1;;4522:25:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4529:18;;4522:25;;4529:18;4522:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4348:215;;;;;:::o;867:96:0:-;946:10;867:96;:::o;1409:498:2:-;1820:4;1864:17;1895:7;1409:498;:::o;2240:225:1:-;-1:-1:-1;;;;;2313:22:1;;2305:73;;;;-1:-1:-1;;;;;2305:73:1;;;;;;;;;2414:6;;2393:38;;-1:-1:-1;;;;;2393:38:1;;;;2414:6;;2393:38;;2414:6;;2393:38;2441:6;:17;;-1:-1:-1;;;;;;2441:17:1;-1:-1:-1;;;;;2441:17:1;;;;;;;;;;2240:225::o;321:11425:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;321:11425:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;321:11425:5;;;-1:-1:-1;321:11425:5;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:118:-1;;72:46;110:6;97:20;72:46;;;63:55;57:66;-1:-1;;;57:66;130:118;;197:46;235:6;222:20;197:46;;270:336;;;385:3;378:4;370:6;366:17;362:27;352:2;;403:1;400;393:12;352:2;-1:-1;423:20;;463:18;452:30;;449:2;;;495:1;492;485:12;449:2;529:4;521:6;517:17;505:29;;579:3;572;564:6;560:16;550:8;546:31;543:40;540:2;;;596:1;593;586:12;540:2;345:261;;;;;;739:241;;843:2;831:9;822:7;818:23;814:32;811:2;;;859:1;856;849:12;811:2;894:1;911:53;956:7;936:9;911:53;;;901:63;805:175;-1:-1;;;;805:175;987:492;;;;1128:2;1116:9;1107:7;1103:23;1099:32;1096:2;;;1144:1;1141;1134:12;1096:2;1179:1;1196:53;1241:7;1221:9;1196:53;;;1186:63;;1158:97;1314:2;1303:9;1299:18;1286:32;1338:18;1330:6;1327:30;1324:2;;;1370:1;1367;1360:12;1324:2;1398:65;1455:7;1446:6;1435:9;1431:22;1398:65;;;1388:75;;;;1265:204;1090:389;;;;;;1486:617;;;;;1644:2;1632:9;1623:7;1619:23;1615:32;1612:2;;;1660:1;1657;1650:12;1612:2;1695:1;1712:53;1757:7;1737:9;1712:53;;;1702:63;;1674:97;1830:2;1819:9;1815:18;1802:32;1854:18;1846:6;1843:30;1840:2;;;1886:1;1883;1876:12;1840:2;1914:65;1971:7;1962:6;1951:9;1947:22;1914:65;;;1904:75;;;;1781:204;2016:2;2034:53;2079:7;2070:6;2059:9;2055:22;2034:53;;;2024:63;;1995:98;1606:497;;;;;;;;2110:617;;;;;2268:2;2256:9;2247:7;2243:23;2239:32;2236:2;;;2284:1;2281;2274:12;2236:2;2319:1;2336:53;2381:7;2361:9;2336:53;;;2326:63;;2298:97;2454:2;2443:9;2439:18;2426:32;2478:18;2470:6;2467:30;2464:2;;;2510:1;2507;2500:12;2464:2;2538:65;2595:7;2586:6;2575:9;2571:22;2538:65;;;2528:75;;;;2405:204;2640:2;2658:53;2703:7;2694:6;2683:9;2679:22;2658:53;;2734:869;;;;;;;2929:3;2917:9;2908:7;2904:23;2900:33;2897:2;;;2946:1;2943;2936:12;2897:2;2981:1;2998:53;3043:7;3023:9;2998:53;;;2988:63;;2960:97;3116:2;3105:9;3101:18;3088:32;3140:18;3132:6;3129:30;3126:2;;;3172:1;3169;3162:12;3126:2;3200:65;3257:7;3248:6;3237:9;3233:22;3200:65;;;3190:75;;;;3067:204;3302:2;3320:53;3365:7;3356:6;3345:9;3341:22;3320:53;;;3310:63;;3281:98;3438:2;3427:9;3423:18;3410:32;3462:18;3454:6;3451:30;3448:2;;;3494:1;3491;3484:12;3448:2;3522:65;3579:7;3570:6;3559:9;3555:22;3522:65;;;3512:75;;;;3389:204;2891:712;;;;;;;;;3610:743;;;;;;3785:3;3773:9;3764:7;3760:23;3756:33;3753:2;;;3802:1;3799;3792:12;3753:2;3837:1;3854:53;3899:7;3879:9;3854:53;;;3844:63;;3816:97;3972:2;3961:9;3957:18;3944:32;3996:18;3988:6;3985:30;3982:2;;;4028:1;4025;4018:12;3982:2;4056:65;4113:7;4104:6;4093:9;4089:22;4056:65;;;4046:75;;;;3923:204;4158:2;4176:53;4221:7;4212:6;4201:9;4197:22;4176:53;;;4166:63;;4137:98;4266:2;4284:53;4329:7;4320:6;4309:9;4305:22;4284:53;;;4274:63;;4245:98;3747:606;;;;;;;;;4360:869;;;;;;;4552:3;4540:9;4531:7;4527:23;4523:33;4520:2;;;4569:1;4566;4559:12;4520:2;4604:1;4621:53;4666:7;4646:9;4621:53;;;4611:63;;4583:97;4739:2;4728:9;4724:18;4711:32;4763:18;4755:6;4752:30;4749:2;;;4795:1;4792;4785:12;4749:2;4823:65;4880:7;4871:6;4860:9;4856:22;4823:65;;;4813:75;;;;4690:204;4925:2;4943:53;4988:7;4979:6;4968:9;4964:22;4943:53;;;4933:63;;4904:98;5033:2;5051:53;5096:7;5087:6;5076:9;5072:22;5051:53;;;5041:63;;5012:98;5141:3;5160:53;5205:7;5196:6;5185:9;5181:22;5160:53;;;5150:63;;5120:99;4514:715;;;;;;;;;5860:366;;;5981:2;5969:9;5960:7;5956:23;5952:32;5949:2;;;5997:1;5994;5987:12;5949:2;6032:1;6049:53;6094:7;6074:9;6049:53;;;6039:63;;6011:97;6139:2;6157:53;6202:7;6193:6;6182:9;6178:22;6157:53;;;6147:63;;6118:98;5943:283;;;;;;6234:173;;6321:46;6363:3;6355:6;6321:46;;;-1:-1;;6396:4;6387:14;;6314:93;6416:181;;6529:62;6587:3;6579:6;6529:62;;6605:120;6688:31;6713:5;6688:31;;;6683:3;6676:44;6670:55;;;6763:621;;6908:54;6956:5;6908:54;;;6975:86;7054:6;7049:3;6975:86;;;6968:93;;7081:56;7131:5;7081:56;;;7158:1;7143:219;7168:6;7165:1;7162:13;7143:219;;;7215:63;7274:3;7265:6;7259:13;7215:63;;;7208:70;;7295:60;7348:6;7295:60;;;7285:70;-1:-1;7190:1;7183:9;7143:219;;;-1:-1;7375:3;;6887:497;-1:-1;;;;6887:497;7421:827;;7578:60;7632:5;7578:60;;;7651:92;7736:6;7731:3;7651:92;;;7644:99;;7766:3;7808:4;7800:6;7796:17;7791:3;7787:27;7834:62;7890:5;7834:62;;;7917:1;7902:307;7927:6;7924:1;7921:13;7902:307;;;7989:9;7983:4;7979:20;7974:3;7967:33;8015:76;8086:4;8077:6;8071:13;8015:76;;;8007:84;;8108:66;8167:6;8108:66;;;8197:4;8188:14;;;;;8098:76;-1:-1;7949:1;7942:9;7902:307;;;-1:-1;8222:4;;7557:691;-1:-1;;;;;;7557:691;8256:111;8333:28;8355:5;8333:28;;8374:110;8447:31;8472:5;8447:31;;8618:347;;8730:39;8763:5;8730:39;;;8781:71;8845:6;8840:3;8781:71;;;8774:78;;8857:52;8902:6;8897:3;8890:4;8883:5;8879:16;8857:52;;;8930:29;8952:6;8930:29;;;8921:39;;;;8710:255;-1:-1;;;8710:255;8972:360;;9102:39;9135:5;9102:39;;;9153:89;9235:6;9230:3;9153:89;;;9146:96;;9247:52;9292:6;9287:3;9280:4;9273:5;9269:16;9247:52;;;9311:16;;;;;9082:250;-1:-1;;9082:250;9690:884;;9827:5;9821:12;9861:1;9850:9;9846:17;9874:1;9869:268;;;;10148:1;10143:425;;;;9839:729;;9869:268;9947:4;9943:1;9932:9;9928:17;9924:28;9966:89;10048:6;10043:3;9966:89;;;-1:-1;;10074:25;;10062:38;;9959:96;-1:-1;10114:16;;;-1:-1;9869:268;;10143:425;10212:1;10201:9;10197:17;10228:89;10310:6;10305:3;10228:89;;;10221:96;;10339:38;10371:5;10339:38;;;10393:1;10401:130;10415:6;10412:1;10409:13;10401:130;;;10474:14;;10461:11;;;10454:35;10521:1;10508:15;;;;10437:4;10430:12;10401:130;;;-1:-1;;10545:16;;;-1:-1;9839:729;;9797:777;;;;;;10583:465;;10743:67;10807:2;10802:3;10743:67;;;10843:66;10823:87;;-1:-1;;;;;10939:2;10930:12;;10923:88;11039:2;11030:12;;10729:319;-1:-1;;10729:319;11057:364;;11217:67;11281:2;11276:3;11217:67;;;11317:66;11297:87;;11412:2;11403:12;;11203:218;-1:-1;;11203:218;11430:465;;11590:67;11654:2;11649:3;11590:67;;;11690:66;11670:87;;11791:66;11786:2;11777:12;;11770:88;11886:2;11877:12;;11576:319;-1:-1;;11576:319;11904:364;;12064:67;12128:2;12123:3;12064:67;;;-1:-1;;;;;12144:87;;12259:2;12250:12;;12050:218;-1:-1;;12050:218;12277:364;;12437:67;12501:2;12496:3;12437:67;;;12537:66;12517:87;;12632:2;12623:12;;12423:218;-1:-1;;12423:218;12776:266;;12922:95;13013:3;13004:6;12922:95;;13049:260;;13192:92;13280:3;13271:6;13192:92;;13316:213;13434:2;13419:18;;13448:71;13423:9;13492:6;13448:71;;13536:361;13704:2;13718:47;;;13689:18;;13779:108;13689:18;13873:6;13779:108;;13904:385;14084:2;14098:47;;;14069:18;;14159:120;14069:18;14265:6;14159:120;;14296:201;14408:2;14393:18;;14422:65;14397:9;14460:6;14422:65;;14504:324;14650:2;14635:18;;14664:71;14639:9;14708:6;14664:71;;;14746:72;14814:2;14803:9;14799:18;14790:6;14746:72;;14835:435;15009:2;14994:18;;15023:71;14998:9;15067:6;15023:71;;;15105:72;15173:2;15162:9;15158:18;15149:6;15105:72;;;15188;15256:2;15245:9;15241:18;15232:6;15188:72;;15277:301;15415:2;15429:47;;;15400:18;;15490:78;15400:18;15554:6;15490:78;;15585:407;15776:2;15790:47;;;15761:18;;15851:131;15761:18;15851:131;;15999:407;16190:2;16204:47;;;16175:18;;16265:131;16175:18;16265:131;;16413:407;16604:2;16618:47;;;16589:18;;16679:131;16589:18;16679:131;;16827:407;17018:2;17032:47;;;17003:18;;17093:131;17003:18;17093:131;;17241:407;17432:2;17446:47;;;17417:18;;17507:131;17417:18;17507:131;;17657:121;17766:4;17754:17;;17735:43;17927:126;;17994:15;;;18041:4;18028:18;;;17986:67;18062:107;18152:12;;18136:33;18759:178;18877:19;;;18926:4;18917:14;;18870:67;19473:145;19609:3;19587:31;-1:-1;19587:31;19626:105;;19695:31;19720:5;19695:31;;19738:92;19811:13;19804:21;;19787:43;19923:128;-1:-1;;;;;19992:54;;19975:76;20564:268;20629:1;20636:101;20650:6;20647:1;20644:13;20636:101;;;20717:11;;;20711:18;20698:11;;;20691:39;20672:2;20665:10;20636:101;;;20752:6;20749:1;20746:13;20743:2;;;20817:1;20808:6;20803:3;20799:16;20792:27;20743:2;20613:219;;;;;20840:97;20928:2;20908:14;-1:-1;;20904:28;;20888:49",
|
|
438
|
+
"source": "// Implementation of the Verified custody vault\r\n// Manages accounts, participants and vault policies\r\n// (c) Kallol Borah, Verified Network, 2021\r\n\r\npragma solidity 0.5.7;\r\npragma experimental ABIEncoderV2;\r\n\r\nimport \"./IVault.sol\";\r\nimport \"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\";\r\n\r\ncontract Vault is IVault, Ownable {\r\n\r\n //counter for block timestamp nonce\r\n uint256 private txid;\r\n\r\n //mapping of signer address to creator bytes32 id\r\n mapping(address => bytes32[]) private signers;\r\n\r\n //mapping signer (its bytes32 ID, eg creator@vault.com) to its token (eg, Google/Apple push notification token)\r\n mapping(bytes32 => string) private creators;\r\n\r\n //creating vault by mapping its creator (bytes32 ID, eg, creator@vault.com) to participants (bytes32 IDs, eg, participant@email.com) in the vault\r\n mapping(bytes32 => bytes32[]) private vaults;\r\n\r\n //positional index of cosigners for vault. Mapping of vault creator to participant to its position\r\n mapping(bytes32 => mapping(bytes32 => uint256)) private cosigners;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to participants (bytes32 ID, eg, participant@email.com) to their pin (uint256)\r\n mapping(bytes32 => mapping(bytes32 => uint256)) private pins;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to participants (bytes32 ID, eg, participant@email.com) to their key shard (string)\r\n mapping(bytes32 => mapping(bytes32 => string)) private shards;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to number of minimum co-signers required for quorum (uint256)\r\n mapping(bytes32 => uint256) private quorum;\r\n\r\n //mapping vault (bytes32 ID, eg creator@vault.com) to transactions\r\n mapping(bytes32 => transaction[]) private transactions;\r\n\r\n //event that helps notify a participant to confirm PIN and shard\r\n event NewParticipant(bytes32 creator, bytes32 participant);\r\n\r\n //event that helps notify a participant to co-sign a transaction\r\n event NewTransaction(bytes32 creator, bytes32 participant, uint256 txid);\r\n\r\n //event that helps notify a creator that a transaction has been signed\r\n event SignTransaction(bytes32 creator, bytes32 participant, uint256 txid);\r\n\r\n // modifiers\r\n modifier onlySigner(bytes32 _creator, string memory _id) {\r\n require(keccak256(abi.encodePacked(creators[_creator])) == keccak256(abi.encodePacked(_id)), 'Not a valid signer');\r\n _;\r\n }\r\n\r\n constructor() public{\r\n Ownable.initialize(msg.sender);\r\n }\r\n\r\n /**\r\n This function creates a vault for the creator\r\n @param _creator vault creator's username, eg, creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n */\r\n function createVault(bytes32 _creator, string calldata _id) external {\r\n require(vaults[_creator].length==0);\r\n signers[msg.sender].push(_creator);\r\n creators[_creator] = _id;\r\n cosigners[_creator][_creator] = vaults[_creator].length;\r\n vaults[_creator].push(_creator);\r\n }\r\n\r\n /**\r\n This function returns list of vault creators\r\n */\r\n function getVaults() external view returns(bytes32[] memory){\r\n return signers[msg.sender];\r\n }\r\n\r\n /**\r\n This function transfers a vault from the transferor (msg.sender) to transferee\r\n @param _creator vault to transfer\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _transferee address of the new vault operator\r\n */\r\n function transferVault(bytes32 _creator, string calldata _id, address _transferee) onlySigner(_creator, _id) external {\r\n bool found = false;\r\n for(uint i=0; i<signers[msg.sender].length; i++){\r\n if(signers[msg.sender][i]==_creator){\r\n found = true;\r\n delete signers[msg.sender][i];\r\n }\r\n }\r\n require(found==true, 'Not a valid signer');\r\n signers[_transferee].push(_creator);\r\n }\r\n\r\n /**\r\n This function returns the vault creator's unique ID (eg, Google/APNS messaging token)\r\n @param _creator the vault creator (eg, creator@email.com)\r\n @return the vault creator's unique ID\r\n */\r\n function getCreator(bytes32 _creator, uint256 _pin) external view returns(string memory){ \r\n require(pins[_creator][_creator] == _pin, \"Invalid PIN\"); \r\n return creators[_creator]; \r\n }\r\n\r\n /**\r\n This function adds a participant to a vault that belongs to its creator\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant vault participant's username, eg participant@email.com\r\n @param _shard the private key shard of the participant\r\n */\r\n function addParticipant(bytes32 _creator, string calldata _id, bytes32 _participant, string calldata _shard) onlySigner(_creator, _id) external {\r\n //require(vaults[_participant].length>0); //participant does not have a vault yet\r\n shards[_creator][_participant] = _shard;\r\n if(_creator!=_participant){\r\n cosigners[_creator][_participant] = vaults[_creator].length;\r\n vaults[_creator].push(_participant); \r\n }\r\n emit NewParticipant(_creator, _participant);\r\n }\r\n\r\n /**\r\n This function removes a participant in a vault that belongs to its creator\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant vault participant's username, eg participant@email.com\r\n */\r\n function removeParticipant(bytes32 _creator, string calldata _id, bytes32 _participant) onlySigner(_creator, _id) external {\r\n if(cosigners[_creator][_participant] > 0){\r\n delete vaults[_creator][cosigners[_creator][_participant]];\r\n delete shards[_creator][_participant];\r\n delete pins[_creator][_participant];\r\n }\r\n } \r\n\r\n /**\r\n This function confirms a participant in the vault when the participant sends its private key shard and PIN\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant the vault's participant (eg, participant@email.com)\r\n @param _pin the PIN number of the participant\r\n */\r\n function confirmParticipant(bytes32 _creator, string calldata _id, bytes32 _participant, uint256 _pin) onlySigner(_participant, _id) external {\r\n require(vaults[_creator].length>0);\r\n pins[_creator][_participant] = _pin;\r\n }\r\n\r\n /**\r\n This function defines the number of participants required to co-sign a transaction\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _minParticipants the minimum number of co-signers\r\n */\r\n function defineQuorum(bytes32 _creator, string calldata _id, uint256 _minParticipants) onlySigner(_creator, _id) external {\r\n quorum[_creator] = _minParticipants;\r\n }\r\n\r\n /**\r\n This function prompts participants to co-sign a transaction on the vault (ie, the creator's address secured by the quorum of participants)\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n */\r\n function promptSignatures(bytes32 _creator, string calldata _id) onlySigner(_creator, _id) external {\r\n bytes32[] memory cs = new bytes32[](vaults[_creator].length);\r\n txid = block.timestamp == txid ? txid + 1 : block.timestamp;\r\n transaction memory currentTx = transaction({\r\n datetime : txid,\r\n cosigners : cs\r\n });\r\n transactions[_creator].push(currentTx);\r\n for(uint256 i=0; i<vaults[_creator].length; i++){\r\n emit NewTransaction(_creator, vaults[_creator][i], txid);\r\n }\r\n }\r\n\r\n /**\r\n This function lets a participant co-sign a transaction\r\n @param _creator the vault's creator (eg, creator@email.com)\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant the vault's participant (eg, participant@email.com)\r\n @param _tx transaction identifier\r\n @param _pin the PIN number of the signer (participant)\r\n */\r\n function signTransaction(bytes32 _creator, string calldata _id, bytes32 _participant, uint256 _tx, uint256 _pin) onlySigner(_participant, _id) external {\r\n require(pins[_creator][_participant]==_pin);\r\n for(uint i=0; i<transactions[_creator].length; i++){\r\n if(transactions[_creator][i].datetime==_tx){\r\n for(uint j=0; j<transactions[_creator][i].cosigners.length; j++){\r\n if(transactions[_creator][i].cosigners[j]==\"\"){\r\n transactions[_creator][i].cosigners[j]=_participant;\r\n break;\r\n }\r\n }\r\n emit SignTransaction(_creator, _participant, _tx);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n This function lets the creator check if quorum has been achieved for a particular transaction\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _participant vault participant's username, eg participant@email.com\r\n @param _txid transaction identifier\r\n */\r\n function checkQuorum(bytes32 _creator, string calldata _id, bytes32 _participant, uint256 _txid) onlySigner(_creator, _id) external view returns(bool){\r\n require(pins[_creator][_participant]!=0);\r\n bool _quorum = false;\r\n for(uint i=0; i<transactions[_creator].length; i++){\r\n if(transactions[_creator][i].datetime==_txid){\r\n if(transactions[_creator][i].cosigners.length >= quorum[_creator])\r\n _quorum = true;\r\n }\r\n }\r\n if(_quorum)\r\n return true;\r\n else\r\n return false;\r\n }\r\n \r\n /**\r\n This function gets the shard for a participant\r\n @param _creator vault creator's username, eg creator@email.com\r\n @param _id vault creator's unique id using which it can be reached, eg, its Google/APNS token\r\n @param _txid transaction identifier \r\n */\r\n function getShards(bytes32 _creator, string calldata _id, uint256 _txid) onlySigner(_creator, _id) external view returns(string[] memory){\r\n for(uint i=0; i<transactions[_creator].length; i++){\r\n if(transactions[_creator][i].datetime==_txid){\r\n if(transactions[_creator][i].cosigners.length >= quorum[_creator]){\r\n string[] memory keyShards = new string[](transactions[_creator][i].cosigners.length);\r\n for(uint j=0; j<transactions[_creator][i].cosigners.length; j++){\r\n keyShards[j] = shards[_creator][transactions[_creator][i].cosigners[j]]; \r\n }\r\n //delete transactions[_creator][i];\r\n return keyShards;\r\n }\r\n }\r\n }\r\n }\r\n\r\n}",
|
|
439
439
|
"sourcePath": "D:\\Code\\verified-custody\\backend\\contracts\\Vault.sol",
|
|
440
440
|
"ast": {
|
|
441
441
|
"absolutePath": "project:/contracts/Vault.sol",
|
|
@@ -6733,7 +6733,7 @@
|
|
|
6733
6733
|
"body": {
|
|
6734
6734
|
"id": 964,
|
|
6735
6735
|
"nodeType": "Block",
|
|
6736
|
-
"src": "8992:
|
|
6736
|
+
"src": "8992:580:5",
|
|
6737
6737
|
"statements": [
|
|
6738
6738
|
{
|
|
6739
6739
|
"expression": {
|
|
@@ -6880,9 +6880,9 @@
|
|
|
6880
6880
|
},
|
|
6881
6881
|
{
|
|
6882
6882
|
"body": {
|
|
6883
|
-
"id":
|
|
6883
|
+
"id": 962,
|
|
6884
6884
|
"nodeType": "Block",
|
|
6885
|
-
"src": "9108:
|
|
6885
|
+
"src": "9108:457:5",
|
|
6886
6886
|
"statements": [
|
|
6887
6887
|
{
|
|
6888
6888
|
"condition": {
|
|
@@ -7001,13 +7001,13 @@
|
|
|
7001
7001
|
}
|
|
7002
7002
|
},
|
|
7003
7003
|
"falseBody": null,
|
|
7004
|
-
"id":
|
|
7004
|
+
"id": 961,
|
|
7005
7005
|
"nodeType": "IfStatement",
|
|
7006
|
-
"src": "9123:
|
|
7006
|
+
"src": "9123:431:5",
|
|
7007
7007
|
"trueBody": {
|
|
7008
|
-
"id":
|
|
7008
|
+
"id": 960,
|
|
7009
7009
|
"nodeType": "Block",
|
|
7010
|
-
"src": "9166:
|
|
7010
|
+
"src": "9166:388:5",
|
|
7011
7011
|
"statements": [
|
|
7012
7012
|
{
|
|
7013
7013
|
"body": {
|
|
@@ -7547,6 +7547,94 @@
|
|
|
7547
7547
|
},
|
|
7548
7548
|
"nodeType": "ForStatement",
|
|
7549
7549
|
"src": "9185:286:5"
|
|
7550
|
+
},
|
|
7551
|
+
{
|
|
7552
|
+
"eventCall": {
|
|
7553
|
+
"argumentTypes": null,
|
|
7554
|
+
"arguments": [
|
|
7555
|
+
{
|
|
7556
|
+
"argumentTypes": null,
|
|
7557
|
+
"id": 955,
|
|
7558
|
+
"name": "_creator",
|
|
7559
|
+
"nodeType": "Identifier",
|
|
7560
|
+
"overloadedDeclarations": [],
|
|
7561
|
+
"referencedDeclaration": 866,
|
|
7562
|
+
"src": "9510:8:5",
|
|
7563
|
+
"typeDescriptions": {
|
|
7564
|
+
"typeIdentifier": "t_bytes32",
|
|
7565
|
+
"typeString": "bytes32"
|
|
7566
|
+
}
|
|
7567
|
+
},
|
|
7568
|
+
{
|
|
7569
|
+
"argumentTypes": null,
|
|
7570
|
+
"id": 956,
|
|
7571
|
+
"name": "_participant",
|
|
7572
|
+
"nodeType": "Identifier",
|
|
7573
|
+
"overloadedDeclarations": [],
|
|
7574
|
+
"referencedDeclaration": 870,
|
|
7575
|
+
"src": "9520:12:5",
|
|
7576
|
+
"typeDescriptions": {
|
|
7577
|
+
"typeIdentifier": "t_bytes32",
|
|
7578
|
+
"typeString": "bytes32"
|
|
7579
|
+
}
|
|
7580
|
+
},
|
|
7581
|
+
{
|
|
7582
|
+
"argumentTypes": null,
|
|
7583
|
+
"id": 957,
|
|
7584
|
+
"name": "_tx",
|
|
7585
|
+
"nodeType": "Identifier",
|
|
7586
|
+
"overloadedDeclarations": [],
|
|
7587
|
+
"referencedDeclaration": 872,
|
|
7588
|
+
"src": "9534:3:5",
|
|
7589
|
+
"typeDescriptions": {
|
|
7590
|
+
"typeIdentifier": "t_uint256",
|
|
7591
|
+
"typeString": "uint256"
|
|
7592
|
+
}
|
|
7593
|
+
}
|
|
7594
|
+
],
|
|
7595
|
+
"expression": {
|
|
7596
|
+
"argumentTypes": [
|
|
7597
|
+
{
|
|
7598
|
+
"typeIdentifier": "t_bytes32",
|
|
7599
|
+
"typeString": "bytes32"
|
|
7600
|
+
},
|
|
7601
|
+
{
|
|
7602
|
+
"typeIdentifier": "t_bytes32",
|
|
7603
|
+
"typeString": "bytes32"
|
|
7604
|
+
},
|
|
7605
|
+
{
|
|
7606
|
+
"typeIdentifier": "t_uint256",
|
|
7607
|
+
"typeString": "uint256"
|
|
7608
|
+
}
|
|
7609
|
+
],
|
|
7610
|
+
"id": 954,
|
|
7611
|
+
"name": "SignTransaction",
|
|
7612
|
+
"nodeType": "Identifier",
|
|
7613
|
+
"overloadedDeclarations": [],
|
|
7614
|
+
"referencedDeclaration": 440,
|
|
7615
|
+
"src": "9494:15:5",
|
|
7616
|
+
"typeDescriptions": {
|
|
7617
|
+
"typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes32_$_t_uint256_$returns$__$",
|
|
7618
|
+
"typeString": "function (bytes32,bytes32,uint256)"
|
|
7619
|
+
}
|
|
7620
|
+
},
|
|
7621
|
+
"id": 958,
|
|
7622
|
+
"isConstant": false,
|
|
7623
|
+
"isLValue": false,
|
|
7624
|
+
"isPure": false,
|
|
7625
|
+
"kind": "functionCall",
|
|
7626
|
+
"lValueRequested": false,
|
|
7627
|
+
"names": [],
|
|
7628
|
+
"nodeType": "FunctionCall",
|
|
7629
|
+
"src": "9494:44:5",
|
|
7630
|
+
"typeDescriptions": {
|
|
7631
|
+
"typeIdentifier": "t_tuple$__$",
|
|
7632
|
+
"typeString": "tuple()"
|
|
7633
|
+
}
|
|
7634
|
+
},
|
|
7635
|
+
"id": 959,
|
|
7636
|
+
"nodeType": "EmitStatement",
|
|
7637
|
+
"src": "9489:49:5"
|
|
7550
7638
|
}
|
|
7551
7639
|
]
|
|
7552
7640
|
}
|
|
@@ -7641,7 +7729,7 @@
|
|
|
7641
7729
|
"typeString": "bool"
|
|
7642
7730
|
}
|
|
7643
7731
|
},
|
|
7644
|
-
"id":
|
|
7732
|
+
"id": 963,
|
|
7645
7733
|
"initializationExpression": {
|
|
7646
7734
|
"assignments": [
|
|
7647
7735
|
892
|
|
@@ -7652,7 +7740,7 @@
|
|
|
7652
7740
|
"id": 892,
|
|
7653
7741
|
"name": "i",
|
|
7654
7742
|
"nodeType": "VariableDeclaration",
|
|
7655
|
-
"scope":
|
|
7743
|
+
"scope": 963,
|
|
7656
7744
|
"src": "9061:6:5",
|
|
7657
7745
|
"stateVariable": false,
|
|
7658
7746
|
"storageLocation": "default",
|
|
@@ -7731,95 +7819,7 @@
|
|
|
7731
7819
|
"src": "9104:3:5"
|
|
7732
7820
|
},
|
|
7733
7821
|
"nodeType": "ForStatement",
|
|
7734
|
-
"src": "9057:
|
|
7735
|
-
},
|
|
7736
|
-
{
|
|
7737
|
-
"eventCall": {
|
|
7738
|
-
"argumentTypes": null,
|
|
7739
|
-
"arguments": [
|
|
7740
|
-
{
|
|
7741
|
-
"argumentTypes": null,
|
|
7742
|
-
"id": 959,
|
|
7743
|
-
"name": "_creator",
|
|
7744
|
-
"nodeType": "Identifier",
|
|
7745
|
-
"overloadedDeclarations": [],
|
|
7746
|
-
"referencedDeclaration": 866,
|
|
7747
|
-
"src": "9528:8:5",
|
|
7748
|
-
"typeDescriptions": {
|
|
7749
|
-
"typeIdentifier": "t_bytes32",
|
|
7750
|
-
"typeString": "bytes32"
|
|
7751
|
-
}
|
|
7752
|
-
},
|
|
7753
|
-
{
|
|
7754
|
-
"argumentTypes": null,
|
|
7755
|
-
"id": 960,
|
|
7756
|
-
"name": "_participant",
|
|
7757
|
-
"nodeType": "Identifier",
|
|
7758
|
-
"overloadedDeclarations": [],
|
|
7759
|
-
"referencedDeclaration": 870,
|
|
7760
|
-
"src": "9538:12:5",
|
|
7761
|
-
"typeDescriptions": {
|
|
7762
|
-
"typeIdentifier": "t_bytes32",
|
|
7763
|
-
"typeString": "bytes32"
|
|
7764
|
-
}
|
|
7765
|
-
},
|
|
7766
|
-
{
|
|
7767
|
-
"argumentTypes": null,
|
|
7768
|
-
"id": 961,
|
|
7769
|
-
"name": "_tx",
|
|
7770
|
-
"nodeType": "Identifier",
|
|
7771
|
-
"overloadedDeclarations": [],
|
|
7772
|
-
"referencedDeclaration": 872,
|
|
7773
|
-
"src": "9552:3:5",
|
|
7774
|
-
"typeDescriptions": {
|
|
7775
|
-
"typeIdentifier": "t_uint256",
|
|
7776
|
-
"typeString": "uint256"
|
|
7777
|
-
}
|
|
7778
|
-
}
|
|
7779
|
-
],
|
|
7780
|
-
"expression": {
|
|
7781
|
-
"argumentTypes": [
|
|
7782
|
-
{
|
|
7783
|
-
"typeIdentifier": "t_bytes32",
|
|
7784
|
-
"typeString": "bytes32"
|
|
7785
|
-
},
|
|
7786
|
-
{
|
|
7787
|
-
"typeIdentifier": "t_bytes32",
|
|
7788
|
-
"typeString": "bytes32"
|
|
7789
|
-
},
|
|
7790
|
-
{
|
|
7791
|
-
"typeIdentifier": "t_uint256",
|
|
7792
|
-
"typeString": "uint256"
|
|
7793
|
-
}
|
|
7794
|
-
],
|
|
7795
|
-
"id": 958,
|
|
7796
|
-
"name": "SignTransaction",
|
|
7797
|
-
"nodeType": "Identifier",
|
|
7798
|
-
"overloadedDeclarations": [],
|
|
7799
|
-
"referencedDeclaration": 440,
|
|
7800
|
-
"src": "9512:15:5",
|
|
7801
|
-
"typeDescriptions": {
|
|
7802
|
-
"typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes32_$_t_uint256_$returns$__$",
|
|
7803
|
-
"typeString": "function (bytes32,bytes32,uint256)"
|
|
7804
|
-
}
|
|
7805
|
-
},
|
|
7806
|
-
"id": 962,
|
|
7807
|
-
"isConstant": false,
|
|
7808
|
-
"isLValue": false,
|
|
7809
|
-
"isPure": false,
|
|
7810
|
-
"kind": "functionCall",
|
|
7811
|
-
"lValueRequested": false,
|
|
7812
|
-
"names": [],
|
|
7813
|
-
"nodeType": "FunctionCall",
|
|
7814
|
-
"src": "9512:44:5",
|
|
7815
|
-
"typeDescriptions": {
|
|
7816
|
-
"typeIdentifier": "t_tuple$__$",
|
|
7817
|
-
"typeString": "tuple()"
|
|
7818
|
-
}
|
|
7819
|
-
},
|
|
7820
|
-
"id": 963,
|
|
7821
|
-
"nodeType": "EmitStatement",
|
|
7822
|
-
"src": "9507:49:5"
|
|
7822
|
+
"src": "9057:508:5"
|
|
7823
7823
|
}
|
|
7824
7824
|
]
|
|
7825
7825
|
},
|
|
@@ -8021,7 +8021,7 @@
|
|
|
8021
8021
|
"src": "8992:0:5"
|
|
8022
8022
|
},
|
|
8023
8023
|
"scope": 1153,
|
|
8024
|
-
"src": "8840:
|
|
8024
|
+
"src": "8840:732:5",
|
|
8025
8025
|
"stateMutability": "nonpayable",
|
|
8026
8026
|
"superFunction": 307,
|
|
8027
8027
|
"visibility": "external"
|
|
@@ -8030,7 +8030,7 @@
|
|
|
8030
8030
|
"body": {
|
|
8031
8031
|
"id": 1043,
|
|
8032
8032
|
"nodeType": "Block",
|
|
8033
|
-
"src": "
|
|
8033
|
+
"src": "10155:447:5",
|
|
8034
8034
|
"statements": [
|
|
8035
8035
|
{
|
|
8036
8036
|
"expression": {
|
|
@@ -8058,7 +8058,7 @@
|
|
|
8058
8058
|
"nodeType": "Identifier",
|
|
8059
8059
|
"overloadedDeclarations": [],
|
|
8060
8060
|
"referencedDeclaration": 403,
|
|
8061
|
-
"src": "
|
|
8061
|
+
"src": "10174:4:5",
|
|
8062
8062
|
"typeDescriptions": {
|
|
8063
8063
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint256_$_$",
|
|
8064
8064
|
"typeString": "mapping(bytes32 => mapping(bytes32 => uint256))"
|
|
@@ -8072,7 +8072,7 @@
|
|
|
8072
8072
|
"nodeType": "Identifier",
|
|
8073
8073
|
"overloadedDeclarations": [],
|
|
8074
8074
|
"referencedDeclaration": 967,
|
|
8075
|
-
"src": "
|
|
8075
|
+
"src": "10179:8:5",
|
|
8076
8076
|
"typeDescriptions": {
|
|
8077
8077
|
"typeIdentifier": "t_bytes32",
|
|
8078
8078
|
"typeString": "bytes32"
|
|
@@ -8083,7 +8083,7 @@
|
|
|
8083
8083
|
"isPure": false,
|
|
8084
8084
|
"lValueRequested": false,
|
|
8085
8085
|
"nodeType": "IndexAccess",
|
|
8086
|
-
"src": "
|
|
8086
|
+
"src": "10174:14:5",
|
|
8087
8087
|
"typeDescriptions": {
|
|
8088
8088
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
8089
8089
|
"typeString": "mapping(bytes32 => uint256)"
|
|
@@ -8097,7 +8097,7 @@
|
|
|
8097
8097
|
"nodeType": "Identifier",
|
|
8098
8098
|
"overloadedDeclarations": [],
|
|
8099
8099
|
"referencedDeclaration": 971,
|
|
8100
|
-
"src": "
|
|
8100
|
+
"src": "10189:12:5",
|
|
8101
8101
|
"typeDescriptions": {
|
|
8102
8102
|
"typeIdentifier": "t_bytes32",
|
|
8103
8103
|
"typeString": "bytes32"
|
|
@@ -8108,7 +8108,7 @@
|
|
|
8108
8108
|
"isPure": false,
|
|
8109
8109
|
"lValueRequested": false,
|
|
8110
8110
|
"nodeType": "IndexAccess",
|
|
8111
|
-
"src": "
|
|
8111
|
+
"src": "10174:28:5",
|
|
8112
8112
|
"typeDescriptions": {
|
|
8113
8113
|
"typeIdentifier": "t_uint256",
|
|
8114
8114
|
"typeString": "uint256"
|
|
@@ -8126,7 +8126,7 @@
|
|
|
8126
8126
|
"kind": "number",
|
|
8127
8127
|
"lValueRequested": false,
|
|
8128
8128
|
"nodeType": "Literal",
|
|
8129
|
-
"src": "
|
|
8129
|
+
"src": "10204:1:5",
|
|
8130
8130
|
"subdenomination": null,
|
|
8131
8131
|
"typeDescriptions": {
|
|
8132
8132
|
"typeIdentifier": "t_rational_0_by_1",
|
|
@@ -8134,7 +8134,7 @@
|
|
|
8134
8134
|
},
|
|
8135
8135
|
"value": "0"
|
|
8136
8136
|
},
|
|
8137
|
-
"src": "
|
|
8137
|
+
"src": "10174:31:5",
|
|
8138
8138
|
"typeDescriptions": {
|
|
8139
8139
|
"typeIdentifier": "t_bool",
|
|
8140
8140
|
"typeString": "bool"
|
|
@@ -8156,7 +8156,7 @@
|
|
|
8156
8156
|
1172
|
|
8157
8157
|
],
|
|
8158
8158
|
"referencedDeclaration": 1171,
|
|
8159
|
-
"src": "
|
|
8159
|
+
"src": "10166:7:5",
|
|
8160
8160
|
"typeDescriptions": {
|
|
8161
8161
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
8162
8162
|
"typeString": "function (bool) pure"
|
|
@@ -8170,7 +8170,7 @@
|
|
|
8170
8170
|
"lValueRequested": false,
|
|
8171
8171
|
"names": [],
|
|
8172
8172
|
"nodeType": "FunctionCall",
|
|
8173
|
-
"src": "
|
|
8173
|
+
"src": "10166:40:5",
|
|
8174
8174
|
"typeDescriptions": {
|
|
8175
8175
|
"typeIdentifier": "t_tuple$__$",
|
|
8176
8176
|
"typeString": "tuple()"
|
|
@@ -8178,7 +8178,7 @@
|
|
|
8178
8178
|
},
|
|
8179
8179
|
"id": 991,
|
|
8180
8180
|
"nodeType": "ExpressionStatement",
|
|
8181
|
-
"src": "
|
|
8181
|
+
"src": "10166:40:5"
|
|
8182
8182
|
},
|
|
8183
8183
|
{
|
|
8184
8184
|
"assignments": [
|
|
@@ -8191,7 +8191,7 @@
|
|
|
8191
8191
|
"name": "_quorum",
|
|
8192
8192
|
"nodeType": "VariableDeclaration",
|
|
8193
8193
|
"scope": 1043,
|
|
8194
|
-
"src": "
|
|
8194
|
+
"src": "10217:12:5",
|
|
8195
8195
|
"stateVariable": false,
|
|
8196
8196
|
"storageLocation": "default",
|
|
8197
8197
|
"typeDescriptions": {
|
|
@@ -8202,7 +8202,7 @@
|
|
|
8202
8202
|
"id": 992,
|
|
8203
8203
|
"name": "bool",
|
|
8204
8204
|
"nodeType": "ElementaryTypeName",
|
|
8205
|
-
"src": "
|
|
8205
|
+
"src": "10217:4:5",
|
|
8206
8206
|
"typeDescriptions": {
|
|
8207
8207
|
"typeIdentifier": "t_bool",
|
|
8208
8208
|
"typeString": "bool"
|
|
@@ -8223,7 +8223,7 @@
|
|
|
8223
8223
|
"kind": "bool",
|
|
8224
8224
|
"lValueRequested": false,
|
|
8225
8225
|
"nodeType": "Literal",
|
|
8226
|
-
"src": "
|
|
8226
|
+
"src": "10232:5:5",
|
|
8227
8227
|
"subdenomination": null,
|
|
8228
8228
|
"typeDescriptions": {
|
|
8229
8229
|
"typeIdentifier": "t_bool",
|
|
@@ -8232,13 +8232,13 @@
|
|
|
8232
8232
|
"value": "false"
|
|
8233
8233
|
},
|
|
8234
8234
|
"nodeType": "VariableDeclarationStatement",
|
|
8235
|
-
"src": "
|
|
8235
|
+
"src": "10217:20:5"
|
|
8236
8236
|
},
|
|
8237
8237
|
{
|
|
8238
8238
|
"body": {
|
|
8239
8239
|
"id": 1035,
|
|
8240
8240
|
"nodeType": "Block",
|
|
8241
|
-
"src": "
|
|
8241
|
+
"src": "10299:208:5",
|
|
8242
8242
|
"statements": [
|
|
8243
8243
|
{
|
|
8244
8244
|
"condition": {
|
|
@@ -8265,7 +8265,7 @@
|
|
|
8265
8265
|
"nodeType": "Identifier",
|
|
8266
8266
|
"overloadedDeclarations": [],
|
|
8267
8267
|
"referencedDeclaration": 418,
|
|
8268
|
-
"src": "
|
|
8268
|
+
"src": "10317:12:5",
|
|
8269
8269
|
"typeDescriptions": {
|
|
8270
8270
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
8271
8271
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -8279,7 +8279,7 @@
|
|
|
8279
8279
|
"nodeType": "Identifier",
|
|
8280
8280
|
"overloadedDeclarations": [],
|
|
8281
8281
|
"referencedDeclaration": 967,
|
|
8282
|
-
"src": "
|
|
8282
|
+
"src": "10330:8:5",
|
|
8283
8283
|
"typeDescriptions": {
|
|
8284
8284
|
"typeIdentifier": "t_bytes32",
|
|
8285
8285
|
"typeString": "bytes32"
|
|
@@ -8290,7 +8290,7 @@
|
|
|
8290
8290
|
"isPure": false,
|
|
8291
8291
|
"lValueRequested": false,
|
|
8292
8292
|
"nodeType": "IndexAccess",
|
|
8293
|
-
"src": "
|
|
8293
|
+
"src": "10317:22:5",
|
|
8294
8294
|
"typeDescriptions": {
|
|
8295
8295
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
8296
8296
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -8304,7 +8304,7 @@
|
|
|
8304
8304
|
"nodeType": "Identifier",
|
|
8305
8305
|
"overloadedDeclarations": [],
|
|
8306
8306
|
"referencedDeclaration": 997,
|
|
8307
|
-
"src": "
|
|
8307
|
+
"src": "10340:1:5",
|
|
8308
8308
|
"typeDescriptions": {
|
|
8309
8309
|
"typeIdentifier": "t_uint256",
|
|
8310
8310
|
"typeString": "uint256"
|
|
@@ -8315,7 +8315,7 @@
|
|
|
8315
8315
|
"isPure": false,
|
|
8316
8316
|
"lValueRequested": false,
|
|
8317
8317
|
"nodeType": "IndexAccess",
|
|
8318
|
-
"src": "
|
|
8318
|
+
"src": "10317:25:5",
|
|
8319
8319
|
"typeDescriptions": {
|
|
8320
8320
|
"typeIdentifier": "t_struct$_transaction_$231_storage",
|
|
8321
8321
|
"typeString": "struct IVault.transaction storage ref"
|
|
@@ -8329,7 +8329,7 @@
|
|
|
8329
8329
|
"memberName": "datetime",
|
|
8330
8330
|
"nodeType": "MemberAccess",
|
|
8331
8331
|
"referencedDeclaration": 227,
|
|
8332
|
-
"src": "
|
|
8332
|
+
"src": "10317:34:5",
|
|
8333
8333
|
"typeDescriptions": {
|
|
8334
8334
|
"typeIdentifier": "t_uint256",
|
|
8335
8335
|
"typeString": "uint256"
|
|
@@ -8344,13 +8344,13 @@
|
|
|
8344
8344
|
"nodeType": "Identifier",
|
|
8345
8345
|
"overloadedDeclarations": [],
|
|
8346
8346
|
"referencedDeclaration": 973,
|
|
8347
|
-
"src": "
|
|
8347
|
+
"src": "10353:5:5",
|
|
8348
8348
|
"typeDescriptions": {
|
|
8349
8349
|
"typeIdentifier": "t_uint256",
|
|
8350
8350
|
"typeString": "uint256"
|
|
8351
8351
|
}
|
|
8352
8352
|
},
|
|
8353
|
-
"src": "
|
|
8353
|
+
"src": "10317:41:5",
|
|
8354
8354
|
"typeDescriptions": {
|
|
8355
8355
|
"typeIdentifier": "t_bool",
|
|
8356
8356
|
"typeString": "bool"
|
|
@@ -8359,11 +8359,11 @@
|
|
|
8359
8359
|
"falseBody": null,
|
|
8360
8360
|
"id": 1034,
|
|
8361
8361
|
"nodeType": "IfStatement",
|
|
8362
|
-
"src": "
|
|
8362
|
+
"src": "10314:182:5",
|
|
8363
8363
|
"trueBody": {
|
|
8364
8364
|
"id": 1033,
|
|
8365
8365
|
"nodeType": "Block",
|
|
8366
|
-
"src": "
|
|
8366
|
+
"src": "10359:137:5",
|
|
8367
8367
|
"statements": [
|
|
8368
8368
|
{
|
|
8369
8369
|
"condition": {
|
|
@@ -8392,7 +8392,7 @@
|
|
|
8392
8392
|
"nodeType": "Identifier",
|
|
8393
8393
|
"overloadedDeclarations": [],
|
|
8394
8394
|
"referencedDeclaration": 418,
|
|
8395
|
-
"src": "
|
|
8395
|
+
"src": "10381:12:5",
|
|
8396
8396
|
"typeDescriptions": {
|
|
8397
8397
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
8398
8398
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -8406,7 +8406,7 @@
|
|
|
8406
8406
|
"nodeType": "Identifier",
|
|
8407
8407
|
"overloadedDeclarations": [],
|
|
8408
8408
|
"referencedDeclaration": 967,
|
|
8409
|
-
"src": "
|
|
8409
|
+
"src": "10394:8:5",
|
|
8410
8410
|
"typeDescriptions": {
|
|
8411
8411
|
"typeIdentifier": "t_bytes32",
|
|
8412
8412
|
"typeString": "bytes32"
|
|
@@ -8417,7 +8417,7 @@
|
|
|
8417
8417
|
"isPure": false,
|
|
8418
8418
|
"lValueRequested": false,
|
|
8419
8419
|
"nodeType": "IndexAccess",
|
|
8420
|
-
"src": "
|
|
8420
|
+
"src": "10381:22:5",
|
|
8421
8421
|
"typeDescriptions": {
|
|
8422
8422
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
8423
8423
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -8431,7 +8431,7 @@
|
|
|
8431
8431
|
"nodeType": "Identifier",
|
|
8432
8432
|
"overloadedDeclarations": [],
|
|
8433
8433
|
"referencedDeclaration": 997,
|
|
8434
|
-
"src": "
|
|
8434
|
+
"src": "10404:1:5",
|
|
8435
8435
|
"typeDescriptions": {
|
|
8436
8436
|
"typeIdentifier": "t_uint256",
|
|
8437
8437
|
"typeString": "uint256"
|
|
@@ -8442,7 +8442,7 @@
|
|
|
8442
8442
|
"isPure": false,
|
|
8443
8443
|
"lValueRequested": false,
|
|
8444
8444
|
"nodeType": "IndexAccess",
|
|
8445
|
-
"src": "
|
|
8445
|
+
"src": "10381:25:5",
|
|
8446
8446
|
"typeDescriptions": {
|
|
8447
8447
|
"typeIdentifier": "t_struct$_transaction_$231_storage",
|
|
8448
8448
|
"typeString": "struct IVault.transaction storage ref"
|
|
@@ -8456,7 +8456,7 @@
|
|
|
8456
8456
|
"memberName": "cosigners",
|
|
8457
8457
|
"nodeType": "MemberAccess",
|
|
8458
8458
|
"referencedDeclaration": 230,
|
|
8459
|
-
"src": "
|
|
8459
|
+
"src": "10381:35:5",
|
|
8460
8460
|
"typeDescriptions": {
|
|
8461
8461
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
8462
8462
|
"typeString": "bytes32[] storage ref"
|
|
@@ -8470,7 +8470,7 @@
|
|
|
8470
8470
|
"memberName": "length",
|
|
8471
8471
|
"nodeType": "MemberAccess",
|
|
8472
8472
|
"referencedDeclaration": null,
|
|
8473
|
-
"src": "
|
|
8473
|
+
"src": "10381:42:5",
|
|
8474
8474
|
"typeDescriptions": {
|
|
8475
8475
|
"typeIdentifier": "t_uint256",
|
|
8476
8476
|
"typeString": "uint256"
|
|
@@ -8487,7 +8487,7 @@
|
|
|
8487
8487
|
"nodeType": "Identifier",
|
|
8488
8488
|
"overloadedDeclarations": [],
|
|
8489
8489
|
"referencedDeclaration": 413,
|
|
8490
|
-
"src": "
|
|
8490
|
+
"src": "10427:6:5",
|
|
8491
8491
|
"typeDescriptions": {
|
|
8492
8492
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
8493
8493
|
"typeString": "mapping(bytes32 => uint256)"
|
|
@@ -8501,7 +8501,7 @@
|
|
|
8501
8501
|
"nodeType": "Identifier",
|
|
8502
8502
|
"overloadedDeclarations": [],
|
|
8503
8503
|
"referencedDeclaration": 967,
|
|
8504
|
-
"src": "
|
|
8504
|
+
"src": "10434:8:5",
|
|
8505
8505
|
"typeDescriptions": {
|
|
8506
8506
|
"typeIdentifier": "t_bytes32",
|
|
8507
8507
|
"typeString": "bytes32"
|
|
@@ -8512,13 +8512,13 @@
|
|
|
8512
8512
|
"isPure": false,
|
|
8513
8513
|
"lValueRequested": false,
|
|
8514
8514
|
"nodeType": "IndexAccess",
|
|
8515
|
-
"src": "
|
|
8515
|
+
"src": "10427:16:5",
|
|
8516
8516
|
"typeDescriptions": {
|
|
8517
8517
|
"typeIdentifier": "t_uint256",
|
|
8518
8518
|
"typeString": "uint256"
|
|
8519
8519
|
}
|
|
8520
8520
|
},
|
|
8521
|
-
"src": "
|
|
8521
|
+
"src": "10381:62:5",
|
|
8522
8522
|
"typeDescriptions": {
|
|
8523
8523
|
"typeIdentifier": "t_bool",
|
|
8524
8524
|
"typeString": "bool"
|
|
@@ -8527,7 +8527,7 @@
|
|
|
8527
8527
|
"falseBody": null,
|
|
8528
8528
|
"id": 1032,
|
|
8529
8529
|
"nodeType": "IfStatement",
|
|
8530
|
-
"src": "
|
|
8530
|
+
"src": "10378:102:5",
|
|
8531
8531
|
"trueBody": {
|
|
8532
8532
|
"expression": {
|
|
8533
8533
|
"argumentTypes": null,
|
|
@@ -8543,7 +8543,7 @@
|
|
|
8543
8543
|
"nodeType": "Identifier",
|
|
8544
8544
|
"overloadedDeclarations": [],
|
|
8545
8545
|
"referencedDeclaration": 993,
|
|
8546
|
-
"src": "
|
|
8546
|
+
"src": "10466:7:5",
|
|
8547
8547
|
"typeDescriptions": {
|
|
8548
8548
|
"typeIdentifier": "t_bool",
|
|
8549
8549
|
"typeString": "bool"
|
|
@@ -8561,7 +8561,7 @@
|
|
|
8561
8561
|
"kind": "bool",
|
|
8562
8562
|
"lValueRequested": false,
|
|
8563
8563
|
"nodeType": "Literal",
|
|
8564
|
-
"src": "
|
|
8564
|
+
"src": "10476:4:5",
|
|
8565
8565
|
"subdenomination": null,
|
|
8566
8566
|
"typeDescriptions": {
|
|
8567
8567
|
"typeIdentifier": "t_bool",
|
|
@@ -8569,7 +8569,7 @@
|
|
|
8569
8569
|
},
|
|
8570
8570
|
"value": "true"
|
|
8571
8571
|
},
|
|
8572
|
-
"src": "
|
|
8572
|
+
"src": "10466:14:5",
|
|
8573
8573
|
"typeDescriptions": {
|
|
8574
8574
|
"typeIdentifier": "t_bool",
|
|
8575
8575
|
"typeString": "bool"
|
|
@@ -8577,7 +8577,7 @@
|
|
|
8577
8577
|
},
|
|
8578
8578
|
"id": 1031,
|
|
8579
8579
|
"nodeType": "ExpressionStatement",
|
|
8580
|
-
"src": "
|
|
8580
|
+
"src": "10466:14:5"
|
|
8581
8581
|
}
|
|
8582
8582
|
}
|
|
8583
8583
|
]
|
|
@@ -8603,7 +8603,7 @@
|
|
|
8603
8603
|
"nodeType": "Identifier",
|
|
8604
8604
|
"overloadedDeclarations": [],
|
|
8605
8605
|
"referencedDeclaration": 997,
|
|
8606
|
-
"src": "
|
|
8606
|
+
"src": "10262:1:5",
|
|
8607
8607
|
"typeDescriptions": {
|
|
8608
8608
|
"typeIdentifier": "t_uint256",
|
|
8609
8609
|
"typeString": "uint256"
|
|
@@ -8622,7 +8622,7 @@
|
|
|
8622
8622
|
"nodeType": "Identifier",
|
|
8623
8623
|
"overloadedDeclarations": [],
|
|
8624
8624
|
"referencedDeclaration": 418,
|
|
8625
|
-
"src": "
|
|
8625
|
+
"src": "10264:12:5",
|
|
8626
8626
|
"typeDescriptions": {
|
|
8627
8627
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
8628
8628
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -8636,7 +8636,7 @@
|
|
|
8636
8636
|
"nodeType": "Identifier",
|
|
8637
8637
|
"overloadedDeclarations": [],
|
|
8638
8638
|
"referencedDeclaration": 967,
|
|
8639
|
-
"src": "
|
|
8639
|
+
"src": "10277:8:5",
|
|
8640
8640
|
"typeDescriptions": {
|
|
8641
8641
|
"typeIdentifier": "t_bytes32",
|
|
8642
8642
|
"typeString": "bytes32"
|
|
@@ -8647,7 +8647,7 @@
|
|
|
8647
8647
|
"isPure": false,
|
|
8648
8648
|
"lValueRequested": false,
|
|
8649
8649
|
"nodeType": "IndexAccess",
|
|
8650
|
-
"src": "
|
|
8650
|
+
"src": "10264:22:5",
|
|
8651
8651
|
"typeDescriptions": {
|
|
8652
8652
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
8653
8653
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -8661,13 +8661,13 @@
|
|
|
8661
8661
|
"memberName": "length",
|
|
8662
8662
|
"nodeType": "MemberAccess",
|
|
8663
8663
|
"referencedDeclaration": null,
|
|
8664
|
-
"src": "
|
|
8664
|
+
"src": "10264:29:5",
|
|
8665
8665
|
"typeDescriptions": {
|
|
8666
8666
|
"typeIdentifier": "t_uint256",
|
|
8667
8667
|
"typeString": "uint256"
|
|
8668
8668
|
}
|
|
8669
8669
|
},
|
|
8670
|
-
"src": "
|
|
8670
|
+
"src": "10262:31:5",
|
|
8671
8671
|
"typeDescriptions": {
|
|
8672
8672
|
"typeIdentifier": "t_bool",
|
|
8673
8673
|
"typeString": "bool"
|
|
@@ -8685,7 +8685,7 @@
|
|
|
8685
8685
|
"name": "i",
|
|
8686
8686
|
"nodeType": "VariableDeclaration",
|
|
8687
8687
|
"scope": 1036,
|
|
8688
|
-
"src": "
|
|
8688
|
+
"src": "10252:6:5",
|
|
8689
8689
|
"stateVariable": false,
|
|
8690
8690
|
"storageLocation": "default",
|
|
8691
8691
|
"typeDescriptions": {
|
|
@@ -8696,7 +8696,7 @@
|
|
|
8696
8696
|
"id": 996,
|
|
8697
8697
|
"name": "uint",
|
|
8698
8698
|
"nodeType": "ElementaryTypeName",
|
|
8699
|
-
"src": "
|
|
8699
|
+
"src": "10252:4:5",
|
|
8700
8700
|
"typeDescriptions": {
|
|
8701
8701
|
"typeIdentifier": "t_uint256",
|
|
8702
8702
|
"typeString": "uint256"
|
|
@@ -8717,7 +8717,7 @@
|
|
|
8717
8717
|
"kind": "number",
|
|
8718
8718
|
"lValueRequested": false,
|
|
8719
8719
|
"nodeType": "Literal",
|
|
8720
|
-
"src": "
|
|
8720
|
+
"src": "10259:1:5",
|
|
8721
8721
|
"subdenomination": null,
|
|
8722
8722
|
"typeDescriptions": {
|
|
8723
8723
|
"typeIdentifier": "t_rational_0_by_1",
|
|
@@ -8726,7 +8726,7 @@
|
|
|
8726
8726
|
"value": "0"
|
|
8727
8727
|
},
|
|
8728
8728
|
"nodeType": "VariableDeclarationStatement",
|
|
8729
|
-
"src": "
|
|
8729
|
+
"src": "10252:8:5"
|
|
8730
8730
|
},
|
|
8731
8731
|
"loopExpression": {
|
|
8732
8732
|
"expression": {
|
|
@@ -8739,7 +8739,7 @@
|
|
|
8739
8739
|
"nodeType": "UnaryOperation",
|
|
8740
8740
|
"operator": "++",
|
|
8741
8741
|
"prefix": false,
|
|
8742
|
-
"src": "
|
|
8742
|
+
"src": "10295:3:5",
|
|
8743
8743
|
"subExpression": {
|
|
8744
8744
|
"argumentTypes": null,
|
|
8745
8745
|
"id": 1006,
|
|
@@ -8747,7 +8747,7 @@
|
|
|
8747
8747
|
"nodeType": "Identifier",
|
|
8748
8748
|
"overloadedDeclarations": [],
|
|
8749
8749
|
"referencedDeclaration": 997,
|
|
8750
|
-
"src": "
|
|
8750
|
+
"src": "10295:1:5",
|
|
8751
8751
|
"typeDescriptions": {
|
|
8752
8752
|
"typeIdentifier": "t_uint256",
|
|
8753
8753
|
"typeString": "uint256"
|
|
@@ -8760,10 +8760,10 @@
|
|
|
8760
8760
|
},
|
|
8761
8761
|
"id": 1008,
|
|
8762
8762
|
"nodeType": "ExpressionStatement",
|
|
8763
|
-
"src": "
|
|
8763
|
+
"src": "10295:3:5"
|
|
8764
8764
|
},
|
|
8765
8765
|
"nodeType": "ForStatement",
|
|
8766
|
-
"src": "
|
|
8766
|
+
"src": "10248:259:5"
|
|
8767
8767
|
},
|
|
8768
8768
|
{
|
|
8769
8769
|
"condition": {
|
|
@@ -8773,7 +8773,7 @@
|
|
|
8773
8773
|
"nodeType": "Identifier",
|
|
8774
8774
|
"overloadedDeclarations": [],
|
|
8775
8775
|
"referencedDeclaration": 993,
|
|
8776
|
-
"src": "
|
|
8776
|
+
"src": "10520:7:5",
|
|
8777
8777
|
"typeDescriptions": {
|
|
8778
8778
|
"typeIdentifier": "t_bool",
|
|
8779
8779
|
"typeString": "bool"
|
|
@@ -8790,7 +8790,7 @@
|
|
|
8790
8790
|
"kind": "bool",
|
|
8791
8791
|
"lValueRequested": false,
|
|
8792
8792
|
"nodeType": "Literal",
|
|
8793
|
-
"src": "
|
|
8793
|
+
"src": "10589:5:5",
|
|
8794
8794
|
"subdenomination": null,
|
|
8795
8795
|
"typeDescriptions": {
|
|
8796
8796
|
"typeIdentifier": "t_bool",
|
|
@@ -8801,11 +8801,11 @@
|
|
|
8801
8801
|
"functionReturnParameters": 981,
|
|
8802
8802
|
"id": 1041,
|
|
8803
8803
|
"nodeType": "Return",
|
|
8804
|
-
"src": "
|
|
8804
|
+
"src": "10582:12:5"
|
|
8805
8805
|
},
|
|
8806
8806
|
"id": 1042,
|
|
8807
8807
|
"nodeType": "IfStatement",
|
|
8808
|
-
"src": "
|
|
8808
|
+
"src": "10517:77:5",
|
|
8809
8809
|
"trueBody": {
|
|
8810
8810
|
"expression": {
|
|
8811
8811
|
"argumentTypes": null,
|
|
@@ -8817,7 +8817,7 @@
|
|
|
8817
8817
|
"kind": "bool",
|
|
8818
8818
|
"lValueRequested": false,
|
|
8819
8819
|
"nodeType": "Literal",
|
|
8820
|
-
"src": "
|
|
8820
|
+
"src": "10549:4:5",
|
|
8821
8821
|
"subdenomination": null,
|
|
8822
8822
|
"typeDescriptions": {
|
|
8823
8823
|
"typeIdentifier": "t_bool",
|
|
@@ -8828,7 +8828,7 @@
|
|
|
8828
8828
|
"functionReturnParameters": 981,
|
|
8829
8829
|
"id": 1039,
|
|
8830
8830
|
"nodeType": "Return",
|
|
8831
|
-
"src": "
|
|
8831
|
+
"src": "10542:11:5"
|
|
8832
8832
|
}
|
|
8833
8833
|
}
|
|
8834
8834
|
]
|
|
@@ -8847,7 +8847,7 @@
|
|
|
8847
8847
|
"nodeType": "Identifier",
|
|
8848
8848
|
"overloadedDeclarations": [],
|
|
8849
8849
|
"referencedDeclaration": 967,
|
|
8850
|
-
"src": "
|
|
8850
|
+
"src": "10113:8:5",
|
|
8851
8851
|
"typeDescriptions": {
|
|
8852
8852
|
"typeIdentifier": "t_bytes32",
|
|
8853
8853
|
"typeString": "bytes32"
|
|
@@ -8860,7 +8860,7 @@
|
|
|
8860
8860
|
"nodeType": "Identifier",
|
|
8861
8861
|
"overloadedDeclarations": [],
|
|
8862
8862
|
"referencedDeclaration": 969,
|
|
8863
|
-
"src": "
|
|
8863
|
+
"src": "10123:3:5",
|
|
8864
8864
|
"typeDescriptions": {
|
|
8865
8865
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
8866
8866
|
"typeString": "string calldata"
|
|
@@ -8875,14 +8875,14 @@
|
|
|
8875
8875
|
"nodeType": "Identifier",
|
|
8876
8876
|
"overloadedDeclarations": [],
|
|
8877
8877
|
"referencedDeclaration": 467,
|
|
8878
|
-
"src": "
|
|
8878
|
+
"src": "10102:10:5",
|
|
8879
8879
|
"typeDescriptions": {
|
|
8880
8880
|
"typeIdentifier": "t_modifier$_t_bytes32_$_t_string_memory_ptr_$",
|
|
8881
8881
|
"typeString": "modifier (bytes32,string memory)"
|
|
8882
8882
|
}
|
|
8883
8883
|
},
|
|
8884
8884
|
"nodeType": "ModifierInvocation",
|
|
8885
|
-
"src": "
|
|
8885
|
+
"src": "10102:25:5"
|
|
8886
8886
|
}
|
|
8887
8887
|
],
|
|
8888
8888
|
"name": "checkQuorum",
|
|
@@ -8897,7 +8897,7 @@
|
|
|
8897
8897
|
"name": "_creator",
|
|
8898
8898
|
"nodeType": "VariableDeclaration",
|
|
8899
8899
|
"scope": 1044,
|
|
8900
|
-
"src": "
|
|
8900
|
+
"src": "10026:16:5",
|
|
8901
8901
|
"stateVariable": false,
|
|
8902
8902
|
"storageLocation": "default",
|
|
8903
8903
|
"typeDescriptions": {
|
|
@@ -8908,7 +8908,7 @@
|
|
|
8908
8908
|
"id": 966,
|
|
8909
8909
|
"name": "bytes32",
|
|
8910
8910
|
"nodeType": "ElementaryTypeName",
|
|
8911
|
-
"src": "
|
|
8911
|
+
"src": "10026:7:5",
|
|
8912
8912
|
"typeDescriptions": {
|
|
8913
8913
|
"typeIdentifier": "t_bytes32",
|
|
8914
8914
|
"typeString": "bytes32"
|
|
@@ -8923,7 +8923,7 @@
|
|
|
8923
8923
|
"name": "_id",
|
|
8924
8924
|
"nodeType": "VariableDeclaration",
|
|
8925
8925
|
"scope": 1044,
|
|
8926
|
-
"src": "
|
|
8926
|
+
"src": "10044:19:5",
|
|
8927
8927
|
"stateVariable": false,
|
|
8928
8928
|
"storageLocation": "calldata",
|
|
8929
8929
|
"typeDescriptions": {
|
|
@@ -8934,7 +8934,7 @@
|
|
|
8934
8934
|
"id": 968,
|
|
8935
8935
|
"name": "string",
|
|
8936
8936
|
"nodeType": "ElementaryTypeName",
|
|
8937
|
-
"src": "
|
|
8937
|
+
"src": "10044:6:5",
|
|
8938
8938
|
"typeDescriptions": {
|
|
8939
8939
|
"typeIdentifier": "t_string_storage_ptr",
|
|
8940
8940
|
"typeString": "string"
|
|
@@ -8949,7 +8949,7 @@
|
|
|
8949
8949
|
"name": "_participant",
|
|
8950
8950
|
"nodeType": "VariableDeclaration",
|
|
8951
8951
|
"scope": 1044,
|
|
8952
|
-
"src": "
|
|
8952
|
+
"src": "10065:20:5",
|
|
8953
8953
|
"stateVariable": false,
|
|
8954
8954
|
"storageLocation": "default",
|
|
8955
8955
|
"typeDescriptions": {
|
|
@@ -8960,7 +8960,7 @@
|
|
|
8960
8960
|
"id": 970,
|
|
8961
8961
|
"name": "bytes32",
|
|
8962
8962
|
"nodeType": "ElementaryTypeName",
|
|
8963
|
-
"src": "
|
|
8963
|
+
"src": "10065:7:5",
|
|
8964
8964
|
"typeDescriptions": {
|
|
8965
8965
|
"typeIdentifier": "t_bytes32",
|
|
8966
8966
|
"typeString": "bytes32"
|
|
@@ -8975,7 +8975,7 @@
|
|
|
8975
8975
|
"name": "_txid",
|
|
8976
8976
|
"nodeType": "VariableDeclaration",
|
|
8977
8977
|
"scope": 1044,
|
|
8978
|
-
"src": "
|
|
8978
|
+
"src": "10087:13:5",
|
|
8979
8979
|
"stateVariable": false,
|
|
8980
8980
|
"storageLocation": "default",
|
|
8981
8981
|
"typeDescriptions": {
|
|
@@ -8986,7 +8986,7 @@
|
|
|
8986
8986
|
"id": 972,
|
|
8987
8987
|
"name": "uint256",
|
|
8988
8988
|
"nodeType": "ElementaryTypeName",
|
|
8989
|
-
"src": "
|
|
8989
|
+
"src": "10087:7:5",
|
|
8990
8990
|
"typeDescriptions": {
|
|
8991
8991
|
"typeIdentifier": "t_uint256",
|
|
8992
8992
|
"typeString": "uint256"
|
|
@@ -8996,7 +8996,7 @@
|
|
|
8996
8996
|
"visibility": "internal"
|
|
8997
8997
|
}
|
|
8998
8998
|
],
|
|
8999
|
-
"src": "
|
|
8999
|
+
"src": "10025:76:5"
|
|
9000
9000
|
},
|
|
9001
9001
|
"returnParameters": {
|
|
9002
9002
|
"id": 981,
|
|
@@ -9008,7 +9008,7 @@
|
|
|
9008
9008
|
"name": "",
|
|
9009
9009
|
"nodeType": "VariableDeclaration",
|
|
9010
9010
|
"scope": 1044,
|
|
9011
|
-
"src": "
|
|
9011
|
+
"src": "10150:4:5",
|
|
9012
9012
|
"stateVariable": false,
|
|
9013
9013
|
"storageLocation": "default",
|
|
9014
9014
|
"typeDescriptions": {
|
|
@@ -9019,7 +9019,7 @@
|
|
|
9019
9019
|
"id": 979,
|
|
9020
9020
|
"name": "bool",
|
|
9021
9021
|
"nodeType": "ElementaryTypeName",
|
|
9022
|
-
"src": "
|
|
9022
|
+
"src": "10150:4:5",
|
|
9023
9023
|
"typeDescriptions": {
|
|
9024
9024
|
"typeIdentifier": "t_bool",
|
|
9025
9025
|
"typeString": "bool"
|
|
@@ -9029,10 +9029,10 @@
|
|
|
9029
9029
|
"visibility": "internal"
|
|
9030
9030
|
}
|
|
9031
9031
|
],
|
|
9032
|
-
"src": "
|
|
9032
|
+
"src": "10149:6:5"
|
|
9033
9033
|
},
|
|
9034
9034
|
"scope": 1153,
|
|
9035
|
-
"src": "
|
|
9035
|
+
"src": "10005:597:5",
|
|
9036
9036
|
"stateMutability": "view",
|
|
9037
9037
|
"superFunction": 320,
|
|
9038
9038
|
"visibility": "external"
|
|
@@ -9041,13 +9041,13 @@
|
|
|
9041
9041
|
"body": {
|
|
9042
9042
|
"id": 1151,
|
|
9043
9043
|
"nodeType": "Block",
|
|
9044
|
-
"src": "
|
|
9044
|
+
"src": "11046:695:5",
|
|
9045
9045
|
"statements": [
|
|
9046
9046
|
{
|
|
9047
9047
|
"body": {
|
|
9048
9048
|
"id": 1149,
|
|
9049
9049
|
"nodeType": "Block",
|
|
9050
|
-
"src": "
|
|
9050
|
+
"src": "11108:626:5",
|
|
9051
9051
|
"statements": [
|
|
9052
9052
|
{
|
|
9053
9053
|
"condition": {
|
|
@@ -9074,7 +9074,7 @@
|
|
|
9074
9074
|
"nodeType": "Identifier",
|
|
9075
9075
|
"overloadedDeclarations": [],
|
|
9076
9076
|
"referencedDeclaration": 418,
|
|
9077
|
-
"src": "
|
|
9077
|
+
"src": "11126:12:5",
|
|
9078
9078
|
"typeDescriptions": {
|
|
9079
9079
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
9080
9080
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -9088,7 +9088,7 @@
|
|
|
9088
9088
|
"nodeType": "Identifier",
|
|
9089
9089
|
"overloadedDeclarations": [],
|
|
9090
9090
|
"referencedDeclaration": 1046,
|
|
9091
|
-
"src": "
|
|
9091
|
+
"src": "11139:8:5",
|
|
9092
9092
|
"typeDescriptions": {
|
|
9093
9093
|
"typeIdentifier": "t_bytes32",
|
|
9094
9094
|
"typeString": "bytes32"
|
|
@@ -9099,7 +9099,7 @@
|
|
|
9099
9099
|
"isPure": false,
|
|
9100
9100
|
"lValueRequested": false,
|
|
9101
9101
|
"nodeType": "IndexAccess",
|
|
9102
|
-
"src": "
|
|
9102
|
+
"src": "11126:22:5",
|
|
9103
9103
|
"typeDescriptions": {
|
|
9104
9104
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
9105
9105
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -9113,7 +9113,7 @@
|
|
|
9113
9113
|
"nodeType": "Identifier",
|
|
9114
9114
|
"overloadedDeclarations": [],
|
|
9115
9115
|
"referencedDeclaration": 1061,
|
|
9116
|
-
"src": "
|
|
9116
|
+
"src": "11149:1:5",
|
|
9117
9117
|
"typeDescriptions": {
|
|
9118
9118
|
"typeIdentifier": "t_uint256",
|
|
9119
9119
|
"typeString": "uint256"
|
|
@@ -9124,7 +9124,7 @@
|
|
|
9124
9124
|
"isPure": false,
|
|
9125
9125
|
"lValueRequested": false,
|
|
9126
9126
|
"nodeType": "IndexAccess",
|
|
9127
|
-
"src": "
|
|
9127
|
+
"src": "11126:25:5",
|
|
9128
9128
|
"typeDescriptions": {
|
|
9129
9129
|
"typeIdentifier": "t_struct$_transaction_$231_storage",
|
|
9130
9130
|
"typeString": "struct IVault.transaction storage ref"
|
|
@@ -9138,7 +9138,7 @@
|
|
|
9138
9138
|
"memberName": "datetime",
|
|
9139
9139
|
"nodeType": "MemberAccess",
|
|
9140
9140
|
"referencedDeclaration": 227,
|
|
9141
|
-
"src": "
|
|
9141
|
+
"src": "11126:34:5",
|
|
9142
9142
|
"typeDescriptions": {
|
|
9143
9143
|
"typeIdentifier": "t_uint256",
|
|
9144
9144
|
"typeString": "uint256"
|
|
@@ -9153,13 +9153,13 @@
|
|
|
9153
9153
|
"nodeType": "Identifier",
|
|
9154
9154
|
"overloadedDeclarations": [],
|
|
9155
9155
|
"referencedDeclaration": 1050,
|
|
9156
|
-
"src": "
|
|
9156
|
+
"src": "11162:5:5",
|
|
9157
9157
|
"typeDescriptions": {
|
|
9158
9158
|
"typeIdentifier": "t_uint256",
|
|
9159
9159
|
"typeString": "uint256"
|
|
9160
9160
|
}
|
|
9161
9161
|
},
|
|
9162
|
-
"src": "
|
|
9162
|
+
"src": "11126:41:5",
|
|
9163
9163
|
"typeDescriptions": {
|
|
9164
9164
|
"typeIdentifier": "t_bool",
|
|
9165
9165
|
"typeString": "bool"
|
|
@@ -9168,11 +9168,11 @@
|
|
|
9168
9168
|
"falseBody": null,
|
|
9169
9169
|
"id": 1148,
|
|
9170
9170
|
"nodeType": "IfStatement",
|
|
9171
|
-
"src": "
|
|
9171
|
+
"src": "11123:600:5",
|
|
9172
9172
|
"trueBody": {
|
|
9173
9173
|
"id": 1147,
|
|
9174
9174
|
"nodeType": "Block",
|
|
9175
|
-
"src": "
|
|
9175
|
+
"src": "11168:555:5",
|
|
9176
9176
|
"statements": [
|
|
9177
9177
|
{
|
|
9178
9178
|
"condition": {
|
|
@@ -9201,7 +9201,7 @@
|
|
|
9201
9201
|
"nodeType": "Identifier",
|
|
9202
9202
|
"overloadedDeclarations": [],
|
|
9203
9203
|
"referencedDeclaration": 418,
|
|
9204
|
-
"src": "
|
|
9204
|
+
"src": "11190:12:5",
|
|
9205
9205
|
"typeDescriptions": {
|
|
9206
9206
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
9207
9207
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -9215,7 +9215,7 @@
|
|
|
9215
9215
|
"nodeType": "Identifier",
|
|
9216
9216
|
"overloadedDeclarations": [],
|
|
9217
9217
|
"referencedDeclaration": 1046,
|
|
9218
|
-
"src": "
|
|
9218
|
+
"src": "11203:8:5",
|
|
9219
9219
|
"typeDescriptions": {
|
|
9220
9220
|
"typeIdentifier": "t_bytes32",
|
|
9221
9221
|
"typeString": "bytes32"
|
|
@@ -9226,7 +9226,7 @@
|
|
|
9226
9226
|
"isPure": false,
|
|
9227
9227
|
"lValueRequested": false,
|
|
9228
9228
|
"nodeType": "IndexAccess",
|
|
9229
|
-
"src": "
|
|
9229
|
+
"src": "11190:22:5",
|
|
9230
9230
|
"typeDescriptions": {
|
|
9231
9231
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
9232
9232
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -9240,7 +9240,7 @@
|
|
|
9240
9240
|
"nodeType": "Identifier",
|
|
9241
9241
|
"overloadedDeclarations": [],
|
|
9242
9242
|
"referencedDeclaration": 1061,
|
|
9243
|
-
"src": "
|
|
9243
|
+
"src": "11213:1:5",
|
|
9244
9244
|
"typeDescriptions": {
|
|
9245
9245
|
"typeIdentifier": "t_uint256",
|
|
9246
9246
|
"typeString": "uint256"
|
|
@@ -9251,7 +9251,7 @@
|
|
|
9251
9251
|
"isPure": false,
|
|
9252
9252
|
"lValueRequested": false,
|
|
9253
9253
|
"nodeType": "IndexAccess",
|
|
9254
|
-
"src": "
|
|
9254
|
+
"src": "11190:25:5",
|
|
9255
9255
|
"typeDescriptions": {
|
|
9256
9256
|
"typeIdentifier": "t_struct$_transaction_$231_storage",
|
|
9257
9257
|
"typeString": "struct IVault.transaction storage ref"
|
|
@@ -9265,7 +9265,7 @@
|
|
|
9265
9265
|
"memberName": "cosigners",
|
|
9266
9266
|
"nodeType": "MemberAccess",
|
|
9267
9267
|
"referencedDeclaration": 230,
|
|
9268
|
-
"src": "
|
|
9268
|
+
"src": "11190:35:5",
|
|
9269
9269
|
"typeDescriptions": {
|
|
9270
9270
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
9271
9271
|
"typeString": "bytes32[] storage ref"
|
|
@@ -9279,7 +9279,7 @@
|
|
|
9279
9279
|
"memberName": "length",
|
|
9280
9280
|
"nodeType": "MemberAccess",
|
|
9281
9281
|
"referencedDeclaration": null,
|
|
9282
|
-
"src": "
|
|
9282
|
+
"src": "11190:42:5",
|
|
9283
9283
|
"typeDescriptions": {
|
|
9284
9284
|
"typeIdentifier": "t_uint256",
|
|
9285
9285
|
"typeString": "uint256"
|
|
@@ -9296,7 +9296,7 @@
|
|
|
9296
9296
|
"nodeType": "Identifier",
|
|
9297
9297
|
"overloadedDeclarations": [],
|
|
9298
9298
|
"referencedDeclaration": 413,
|
|
9299
|
-
"src": "
|
|
9299
|
+
"src": "11236:6:5",
|
|
9300
9300
|
"typeDescriptions": {
|
|
9301
9301
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
9302
9302
|
"typeString": "mapping(bytes32 => uint256)"
|
|
@@ -9310,7 +9310,7 @@
|
|
|
9310
9310
|
"nodeType": "Identifier",
|
|
9311
9311
|
"overloadedDeclarations": [],
|
|
9312
9312
|
"referencedDeclaration": 1046,
|
|
9313
|
-
"src": "
|
|
9313
|
+
"src": "11243:8:5",
|
|
9314
9314
|
"typeDescriptions": {
|
|
9315
9315
|
"typeIdentifier": "t_bytes32",
|
|
9316
9316
|
"typeString": "bytes32"
|
|
@@ -9321,13 +9321,13 @@
|
|
|
9321
9321
|
"isPure": false,
|
|
9322
9322
|
"lValueRequested": false,
|
|
9323
9323
|
"nodeType": "IndexAccess",
|
|
9324
|
-
"src": "
|
|
9324
|
+
"src": "11236:16:5",
|
|
9325
9325
|
"typeDescriptions": {
|
|
9326
9326
|
"typeIdentifier": "t_uint256",
|
|
9327
9327
|
"typeString": "uint256"
|
|
9328
9328
|
}
|
|
9329
9329
|
},
|
|
9330
|
-
"src": "
|
|
9330
|
+
"src": "11190:62:5",
|
|
9331
9331
|
"typeDescriptions": {
|
|
9332
9332
|
"typeIdentifier": "t_bool",
|
|
9333
9333
|
"typeString": "bool"
|
|
@@ -9336,11 +9336,11 @@
|
|
|
9336
9336
|
"falseBody": null,
|
|
9337
9337
|
"id": 1146,
|
|
9338
9338
|
"nodeType": "IfStatement",
|
|
9339
|
-
"src": "
|
|
9339
|
+
"src": "11187:521:5",
|
|
9340
9340
|
"trueBody": {
|
|
9341
9341
|
"id": 1145,
|
|
9342
9342
|
"nodeType": "Block",
|
|
9343
|
-
"src": "
|
|
9343
|
+
"src": "11253:455:5",
|
|
9344
9344
|
"statements": [
|
|
9345
9345
|
{
|
|
9346
9346
|
"assignments": [
|
|
@@ -9353,7 +9353,7 @@
|
|
|
9353
9353
|
"name": "keyShards",
|
|
9354
9354
|
"nodeType": "VariableDeclaration",
|
|
9355
9355
|
"scope": 1145,
|
|
9356
|
-
"src": "
|
|
9356
|
+
"src": "11276:25:5",
|
|
9357
9357
|
"stateVariable": false,
|
|
9358
9358
|
"storageLocation": "memory",
|
|
9359
9359
|
"typeDescriptions": {
|
|
@@ -9365,7 +9365,7 @@
|
|
|
9365
9365
|
"id": 1093,
|
|
9366
9366
|
"name": "string",
|
|
9367
9367
|
"nodeType": "ElementaryTypeName",
|
|
9368
|
-
"src": "
|
|
9368
|
+
"src": "11276:6:5",
|
|
9369
9369
|
"typeDescriptions": {
|
|
9370
9370
|
"typeIdentifier": "t_string_storage_ptr",
|
|
9371
9371
|
"typeString": "string"
|
|
@@ -9374,7 +9374,7 @@
|
|
|
9374
9374
|
"id": 1094,
|
|
9375
9375
|
"length": null,
|
|
9376
9376
|
"nodeType": "ArrayTypeName",
|
|
9377
|
-
"src": "
|
|
9377
|
+
"src": "11276:8:5",
|
|
9378
9378
|
"typeDescriptions": {
|
|
9379
9379
|
"typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
|
|
9380
9380
|
"typeString": "string[]"
|
|
@@ -9403,7 +9403,7 @@
|
|
|
9403
9403
|
"nodeType": "Identifier",
|
|
9404
9404
|
"overloadedDeclarations": [],
|
|
9405
9405
|
"referencedDeclaration": 418,
|
|
9406
|
-
"src": "
|
|
9406
|
+
"src": "11317:12:5",
|
|
9407
9407
|
"typeDescriptions": {
|
|
9408
9408
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
9409
9409
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -9417,7 +9417,7 @@
|
|
|
9417
9417
|
"nodeType": "Identifier",
|
|
9418
9418
|
"overloadedDeclarations": [],
|
|
9419
9419
|
"referencedDeclaration": 1046,
|
|
9420
|
-
"src": "
|
|
9420
|
+
"src": "11330:8:5",
|
|
9421
9421
|
"typeDescriptions": {
|
|
9422
9422
|
"typeIdentifier": "t_bytes32",
|
|
9423
9423
|
"typeString": "bytes32"
|
|
@@ -9428,7 +9428,7 @@
|
|
|
9428
9428
|
"isPure": false,
|
|
9429
9429
|
"lValueRequested": false,
|
|
9430
9430
|
"nodeType": "IndexAccess",
|
|
9431
|
-
"src": "
|
|
9431
|
+
"src": "11317:22:5",
|
|
9432
9432
|
"typeDescriptions": {
|
|
9433
9433
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
9434
9434
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -9442,7 +9442,7 @@
|
|
|
9442
9442
|
"nodeType": "Identifier",
|
|
9443
9443
|
"overloadedDeclarations": [],
|
|
9444
9444
|
"referencedDeclaration": 1061,
|
|
9445
|
-
"src": "
|
|
9445
|
+
"src": "11340:1:5",
|
|
9446
9446
|
"typeDescriptions": {
|
|
9447
9447
|
"typeIdentifier": "t_uint256",
|
|
9448
9448
|
"typeString": "uint256"
|
|
@@ -9453,7 +9453,7 @@
|
|
|
9453
9453
|
"isPure": false,
|
|
9454
9454
|
"lValueRequested": false,
|
|
9455
9455
|
"nodeType": "IndexAccess",
|
|
9456
|
-
"src": "
|
|
9456
|
+
"src": "11317:25:5",
|
|
9457
9457
|
"typeDescriptions": {
|
|
9458
9458
|
"typeIdentifier": "t_struct$_transaction_$231_storage",
|
|
9459
9459
|
"typeString": "struct IVault.transaction storage ref"
|
|
@@ -9467,7 +9467,7 @@
|
|
|
9467
9467
|
"memberName": "cosigners",
|
|
9468
9468
|
"nodeType": "MemberAccess",
|
|
9469
9469
|
"referencedDeclaration": 230,
|
|
9470
|
-
"src": "
|
|
9470
|
+
"src": "11317:35:5",
|
|
9471
9471
|
"typeDescriptions": {
|
|
9472
9472
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
9473
9473
|
"typeString": "bytes32[] storage ref"
|
|
@@ -9481,7 +9481,7 @@
|
|
|
9481
9481
|
"memberName": "length",
|
|
9482
9482
|
"nodeType": "MemberAccess",
|
|
9483
9483
|
"referencedDeclaration": null,
|
|
9484
|
-
"src": "
|
|
9484
|
+
"src": "11317:42:5",
|
|
9485
9485
|
"typeDescriptions": {
|
|
9486
9486
|
"typeIdentifier": "t_uint256",
|
|
9487
9487
|
"typeString": "uint256"
|
|
@@ -9501,7 +9501,7 @@
|
|
|
9501
9501
|
"isPure": true,
|
|
9502
9502
|
"lValueRequested": false,
|
|
9503
9503
|
"nodeType": "NewExpression",
|
|
9504
|
-
"src": "
|
|
9504
|
+
"src": "11304:12:5",
|
|
9505
9505
|
"typeDescriptions": {
|
|
9506
9506
|
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_$dyn_memory_$",
|
|
9507
9507
|
"typeString": "function (uint256) pure returns (string memory[] memory)"
|
|
@@ -9511,7 +9511,7 @@
|
|
|
9511
9511
|
"id": 1096,
|
|
9512
9512
|
"name": "string",
|
|
9513
9513
|
"nodeType": "ElementaryTypeName",
|
|
9514
|
-
"src": "
|
|
9514
|
+
"src": "11308:6:5",
|
|
9515
9515
|
"typeDescriptions": {
|
|
9516
9516
|
"typeIdentifier": "t_string_storage_ptr",
|
|
9517
9517
|
"typeString": "string"
|
|
@@ -9520,7 +9520,7 @@
|
|
|
9520
9520
|
"id": 1097,
|
|
9521
9521
|
"length": null,
|
|
9522
9522
|
"nodeType": "ArrayTypeName",
|
|
9523
|
-
"src": "
|
|
9523
|
+
"src": "11308:8:5",
|
|
9524
9524
|
"typeDescriptions": {
|
|
9525
9525
|
"typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
|
|
9526
9526
|
"typeString": "string[]"
|
|
@@ -9535,20 +9535,20 @@
|
|
|
9535
9535
|
"lValueRequested": false,
|
|
9536
9536
|
"names": [],
|
|
9537
9537
|
"nodeType": "FunctionCall",
|
|
9538
|
-
"src": "
|
|
9538
|
+
"src": "11304:56:5",
|
|
9539
9539
|
"typeDescriptions": {
|
|
9540
9540
|
"typeIdentifier": "t_array$_t_string_memory_$dyn_memory",
|
|
9541
9541
|
"typeString": "string memory[] memory"
|
|
9542
9542
|
}
|
|
9543
9543
|
},
|
|
9544
9544
|
"nodeType": "VariableDeclarationStatement",
|
|
9545
|
-
"src": "
|
|
9545
|
+
"src": "11276:84:5"
|
|
9546
9546
|
},
|
|
9547
9547
|
{
|
|
9548
9548
|
"body": {
|
|
9549
9549
|
"id": 1141,
|
|
9550
9550
|
"nodeType": "Block",
|
|
9551
|
-
"src": "
|
|
9551
|
+
"src": "11447:146:5",
|
|
9552
9552
|
"statements": [
|
|
9553
9553
|
{
|
|
9554
9554
|
"expression": {
|
|
@@ -9567,7 +9567,7 @@
|
|
|
9567
9567
|
"nodeType": "Identifier",
|
|
9568
9568
|
"overloadedDeclarations": [],
|
|
9569
9569
|
"referencedDeclaration": 1095,
|
|
9570
|
-
"src": "
|
|
9570
|
+
"src": "11474:9:5",
|
|
9571
9571
|
"typeDescriptions": {
|
|
9572
9572
|
"typeIdentifier": "t_array$_t_string_memory_$dyn_memory_ptr",
|
|
9573
9573
|
"typeString": "string memory[] memory"
|
|
@@ -9581,7 +9581,7 @@
|
|
|
9581
9581
|
"nodeType": "Identifier",
|
|
9582
9582
|
"overloadedDeclarations": [],
|
|
9583
9583
|
"referencedDeclaration": 1109,
|
|
9584
|
-
"src": "
|
|
9584
|
+
"src": "11484:1:5",
|
|
9585
9585
|
"typeDescriptions": {
|
|
9586
9586
|
"typeIdentifier": "t_uint256",
|
|
9587
9587
|
"typeString": "uint256"
|
|
@@ -9592,7 +9592,7 @@
|
|
|
9592
9592
|
"isPure": false,
|
|
9593
9593
|
"lValueRequested": true,
|
|
9594
9594
|
"nodeType": "IndexAccess",
|
|
9595
|
-
"src": "
|
|
9595
|
+
"src": "11474:12:5",
|
|
9596
9596
|
"typeDescriptions": {
|
|
9597
9597
|
"typeIdentifier": "t_string_memory",
|
|
9598
9598
|
"typeString": "string memory"
|
|
@@ -9611,7 +9611,7 @@
|
|
|
9611
9611
|
"nodeType": "Identifier",
|
|
9612
9612
|
"overloadedDeclarations": [],
|
|
9613
9613
|
"referencedDeclaration": 409,
|
|
9614
|
-
"src": "
|
|
9614
|
+
"src": "11489:6:5",
|
|
9615
9615
|
"typeDescriptions": {
|
|
9616
9616
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_string_storage_$_$",
|
|
9617
9617
|
"typeString": "mapping(bytes32 => mapping(bytes32 => string storage ref))"
|
|
@@ -9625,7 +9625,7 @@
|
|
|
9625
9625
|
"nodeType": "Identifier",
|
|
9626
9626
|
"overloadedDeclarations": [],
|
|
9627
9627
|
"referencedDeclaration": 1046,
|
|
9628
|
-
"src": "
|
|
9628
|
+
"src": "11496:8:5",
|
|
9629
9629
|
"typeDescriptions": {
|
|
9630
9630
|
"typeIdentifier": "t_bytes32",
|
|
9631
9631
|
"typeString": "bytes32"
|
|
@@ -9636,7 +9636,7 @@
|
|
|
9636
9636
|
"isPure": false,
|
|
9637
9637
|
"lValueRequested": false,
|
|
9638
9638
|
"nodeType": "IndexAccess",
|
|
9639
|
-
"src": "
|
|
9639
|
+
"src": "11489:16:5",
|
|
9640
9640
|
"typeDescriptions": {
|
|
9641
9641
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$",
|
|
9642
9642
|
"typeString": "mapping(bytes32 => string storage ref)"
|
|
@@ -9658,7 +9658,7 @@
|
|
|
9658
9658
|
"nodeType": "Identifier",
|
|
9659
9659
|
"overloadedDeclarations": [],
|
|
9660
9660
|
"referencedDeclaration": 418,
|
|
9661
|
-
"src": "
|
|
9661
|
+
"src": "11506:12:5",
|
|
9662
9662
|
"typeDescriptions": {
|
|
9663
9663
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
9664
9664
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -9672,7 +9672,7 @@
|
|
|
9672
9672
|
"nodeType": "Identifier",
|
|
9673
9673
|
"overloadedDeclarations": [],
|
|
9674
9674
|
"referencedDeclaration": 1046,
|
|
9675
|
-
"src": "
|
|
9675
|
+
"src": "11519:8:5",
|
|
9676
9676
|
"typeDescriptions": {
|
|
9677
9677
|
"typeIdentifier": "t_bytes32",
|
|
9678
9678
|
"typeString": "bytes32"
|
|
@@ -9683,7 +9683,7 @@
|
|
|
9683
9683
|
"isPure": false,
|
|
9684
9684
|
"lValueRequested": false,
|
|
9685
9685
|
"nodeType": "IndexAccess",
|
|
9686
|
-
"src": "
|
|
9686
|
+
"src": "11506:22:5",
|
|
9687
9687
|
"typeDescriptions": {
|
|
9688
9688
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
9689
9689
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -9697,7 +9697,7 @@
|
|
|
9697
9697
|
"nodeType": "Identifier",
|
|
9698
9698
|
"overloadedDeclarations": [],
|
|
9699
9699
|
"referencedDeclaration": 1061,
|
|
9700
|
-
"src": "
|
|
9700
|
+
"src": "11529:1:5",
|
|
9701
9701
|
"typeDescriptions": {
|
|
9702
9702
|
"typeIdentifier": "t_uint256",
|
|
9703
9703
|
"typeString": "uint256"
|
|
@@ -9708,7 +9708,7 @@
|
|
|
9708
9708
|
"isPure": false,
|
|
9709
9709
|
"lValueRequested": false,
|
|
9710
9710
|
"nodeType": "IndexAccess",
|
|
9711
|
-
"src": "
|
|
9711
|
+
"src": "11506:25:5",
|
|
9712
9712
|
"typeDescriptions": {
|
|
9713
9713
|
"typeIdentifier": "t_struct$_transaction_$231_storage",
|
|
9714
9714
|
"typeString": "struct IVault.transaction storage ref"
|
|
@@ -9722,7 +9722,7 @@
|
|
|
9722
9722
|
"memberName": "cosigners",
|
|
9723
9723
|
"nodeType": "MemberAccess",
|
|
9724
9724
|
"referencedDeclaration": 230,
|
|
9725
|
-
"src": "
|
|
9725
|
+
"src": "11506:35:5",
|
|
9726
9726
|
"typeDescriptions": {
|
|
9727
9727
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
9728
9728
|
"typeString": "bytes32[] storage ref"
|
|
@@ -9736,7 +9736,7 @@
|
|
|
9736
9736
|
"nodeType": "Identifier",
|
|
9737
9737
|
"overloadedDeclarations": [],
|
|
9738
9738
|
"referencedDeclaration": 1109,
|
|
9739
|
-
"src": "
|
|
9739
|
+
"src": "11542:1:5",
|
|
9740
9740
|
"typeDescriptions": {
|
|
9741
9741
|
"typeIdentifier": "t_uint256",
|
|
9742
9742
|
"typeString": "uint256"
|
|
@@ -9747,7 +9747,7 @@
|
|
|
9747
9747
|
"isPure": false,
|
|
9748
9748
|
"lValueRequested": false,
|
|
9749
9749
|
"nodeType": "IndexAccess",
|
|
9750
|
-
"src": "
|
|
9750
|
+
"src": "11506:38:5",
|
|
9751
9751
|
"typeDescriptions": {
|
|
9752
9752
|
"typeIdentifier": "t_bytes32",
|
|
9753
9753
|
"typeString": "bytes32"
|
|
@@ -9758,13 +9758,13 @@
|
|
|
9758
9758
|
"isPure": false,
|
|
9759
9759
|
"lValueRequested": false,
|
|
9760
9760
|
"nodeType": "IndexAccess",
|
|
9761
|
-
"src": "
|
|
9761
|
+
"src": "11489:56:5",
|
|
9762
9762
|
"typeDescriptions": {
|
|
9763
9763
|
"typeIdentifier": "t_string_storage",
|
|
9764
9764
|
"typeString": "string storage ref"
|
|
9765
9765
|
}
|
|
9766
9766
|
},
|
|
9767
|
-
"src": "
|
|
9767
|
+
"src": "11474:71:5",
|
|
9768
9768
|
"typeDescriptions": {
|
|
9769
9769
|
"typeIdentifier": "t_string_memory",
|
|
9770
9770
|
"typeString": "string memory"
|
|
@@ -9772,7 +9772,7 @@
|
|
|
9772
9772
|
},
|
|
9773
9773
|
"id": 1140,
|
|
9774
9774
|
"nodeType": "ExpressionStatement",
|
|
9775
|
-
"src": "
|
|
9775
|
+
"src": "11474:71:5"
|
|
9776
9776
|
}
|
|
9777
9777
|
]
|
|
9778
9778
|
},
|
|
@@ -9794,7 +9794,7 @@
|
|
|
9794
9794
|
"nodeType": "Identifier",
|
|
9795
9795
|
"overloadedDeclarations": [],
|
|
9796
9796
|
"referencedDeclaration": 1109,
|
|
9797
|
-
"src": "
|
|
9797
|
+
"src": "11397:1:5",
|
|
9798
9798
|
"typeDescriptions": {
|
|
9799
9799
|
"typeIdentifier": "t_uint256",
|
|
9800
9800
|
"typeString": "uint256"
|
|
@@ -9817,7 +9817,7 @@
|
|
|
9817
9817
|
"nodeType": "Identifier",
|
|
9818
9818
|
"overloadedDeclarations": [],
|
|
9819
9819
|
"referencedDeclaration": 418,
|
|
9820
|
-
"src": "
|
|
9820
|
+
"src": "11399:12:5",
|
|
9821
9821
|
"typeDescriptions": {
|
|
9822
9822
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
9823
9823
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -9831,7 +9831,7 @@
|
|
|
9831
9831
|
"nodeType": "Identifier",
|
|
9832
9832
|
"overloadedDeclarations": [],
|
|
9833
9833
|
"referencedDeclaration": 1046,
|
|
9834
|
-
"src": "
|
|
9834
|
+
"src": "11412:8:5",
|
|
9835
9835
|
"typeDescriptions": {
|
|
9836
9836
|
"typeIdentifier": "t_bytes32",
|
|
9837
9837
|
"typeString": "bytes32"
|
|
@@ -9842,7 +9842,7 @@
|
|
|
9842
9842
|
"isPure": false,
|
|
9843
9843
|
"lValueRequested": false,
|
|
9844
9844
|
"nodeType": "IndexAccess",
|
|
9845
|
-
"src": "
|
|
9845
|
+
"src": "11399:22:5",
|
|
9846
9846
|
"typeDescriptions": {
|
|
9847
9847
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
9848
9848
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -9856,7 +9856,7 @@
|
|
|
9856
9856
|
"nodeType": "Identifier",
|
|
9857
9857
|
"overloadedDeclarations": [],
|
|
9858
9858
|
"referencedDeclaration": 1061,
|
|
9859
|
-
"src": "
|
|
9859
|
+
"src": "11422:1:5",
|
|
9860
9860
|
"typeDescriptions": {
|
|
9861
9861
|
"typeIdentifier": "t_uint256",
|
|
9862
9862
|
"typeString": "uint256"
|
|
@@ -9867,7 +9867,7 @@
|
|
|
9867
9867
|
"isPure": false,
|
|
9868
9868
|
"lValueRequested": false,
|
|
9869
9869
|
"nodeType": "IndexAccess",
|
|
9870
|
-
"src": "
|
|
9870
|
+
"src": "11399:25:5",
|
|
9871
9871
|
"typeDescriptions": {
|
|
9872
9872
|
"typeIdentifier": "t_struct$_transaction_$231_storage",
|
|
9873
9873
|
"typeString": "struct IVault.transaction storage ref"
|
|
@@ -9881,7 +9881,7 @@
|
|
|
9881
9881
|
"memberName": "cosigners",
|
|
9882
9882
|
"nodeType": "MemberAccess",
|
|
9883
9883
|
"referencedDeclaration": 230,
|
|
9884
|
-
"src": "
|
|
9884
|
+
"src": "11399:35:5",
|
|
9885
9885
|
"typeDescriptions": {
|
|
9886
9886
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
9887
9887
|
"typeString": "bytes32[] storage ref"
|
|
@@ -9895,13 +9895,13 @@
|
|
|
9895
9895
|
"memberName": "length",
|
|
9896
9896
|
"nodeType": "MemberAccess",
|
|
9897
9897
|
"referencedDeclaration": null,
|
|
9898
|
-
"src": "
|
|
9898
|
+
"src": "11399:42:5",
|
|
9899
9899
|
"typeDescriptions": {
|
|
9900
9900
|
"typeIdentifier": "t_uint256",
|
|
9901
9901
|
"typeString": "uint256"
|
|
9902
9902
|
}
|
|
9903
9903
|
},
|
|
9904
|
-
"src": "
|
|
9904
|
+
"src": "11397:44:5",
|
|
9905
9905
|
"typeDescriptions": {
|
|
9906
9906
|
"typeIdentifier": "t_bool",
|
|
9907
9907
|
"typeString": "bool"
|
|
@@ -9919,7 +9919,7 @@
|
|
|
9919
9919
|
"name": "j",
|
|
9920
9920
|
"nodeType": "VariableDeclaration",
|
|
9921
9921
|
"scope": 1142,
|
|
9922
|
-
"src": "
|
|
9922
|
+
"src": "11387:6:5",
|
|
9923
9923
|
"stateVariable": false,
|
|
9924
9924
|
"storageLocation": "default",
|
|
9925
9925
|
"typeDescriptions": {
|
|
@@ -9930,7 +9930,7 @@
|
|
|
9930
9930
|
"id": 1108,
|
|
9931
9931
|
"name": "uint",
|
|
9932
9932
|
"nodeType": "ElementaryTypeName",
|
|
9933
|
-
"src": "
|
|
9933
|
+
"src": "11387:4:5",
|
|
9934
9934
|
"typeDescriptions": {
|
|
9935
9935
|
"typeIdentifier": "t_uint256",
|
|
9936
9936
|
"typeString": "uint256"
|
|
@@ -9951,7 +9951,7 @@
|
|
|
9951
9951
|
"kind": "number",
|
|
9952
9952
|
"lValueRequested": false,
|
|
9953
9953
|
"nodeType": "Literal",
|
|
9954
|
-
"src": "
|
|
9954
|
+
"src": "11394:1:5",
|
|
9955
9955
|
"subdenomination": null,
|
|
9956
9956
|
"typeDescriptions": {
|
|
9957
9957
|
"typeIdentifier": "t_rational_0_by_1",
|
|
@@ -9960,7 +9960,7 @@
|
|
|
9960
9960
|
"value": "0"
|
|
9961
9961
|
},
|
|
9962
9962
|
"nodeType": "VariableDeclarationStatement",
|
|
9963
|
-
"src": "
|
|
9963
|
+
"src": "11387:8:5"
|
|
9964
9964
|
},
|
|
9965
9965
|
"loopExpression": {
|
|
9966
9966
|
"expression": {
|
|
@@ -9973,7 +9973,7 @@
|
|
|
9973
9973
|
"nodeType": "UnaryOperation",
|
|
9974
9974
|
"operator": "++",
|
|
9975
9975
|
"prefix": false,
|
|
9976
|
-
"src": "
|
|
9976
|
+
"src": "11443:3:5",
|
|
9977
9977
|
"subExpression": {
|
|
9978
9978
|
"argumentTypes": null,
|
|
9979
9979
|
"id": 1121,
|
|
@@ -9981,7 +9981,7 @@
|
|
|
9981
9981
|
"nodeType": "Identifier",
|
|
9982
9982
|
"overloadedDeclarations": [],
|
|
9983
9983
|
"referencedDeclaration": 1109,
|
|
9984
|
-
"src": "
|
|
9984
|
+
"src": "11443:1:5",
|
|
9985
9985
|
"typeDescriptions": {
|
|
9986
9986
|
"typeIdentifier": "t_uint256",
|
|
9987
9987
|
"typeString": "uint256"
|
|
@@ -9994,10 +9994,10 @@
|
|
|
9994
9994
|
},
|
|
9995
9995
|
"id": 1123,
|
|
9996
9996
|
"nodeType": "ExpressionStatement",
|
|
9997
|
-
"src": "
|
|
9997
|
+
"src": "11443:3:5"
|
|
9998
9998
|
},
|
|
9999
9999
|
"nodeType": "ForStatement",
|
|
10000
|
-
"src": "
|
|
10000
|
+
"src": "11383:210:5"
|
|
10001
10001
|
},
|
|
10002
10002
|
{
|
|
10003
10003
|
"expression": {
|
|
@@ -10007,7 +10007,7 @@
|
|
|
10007
10007
|
"nodeType": "Identifier",
|
|
10008
10008
|
"overloadedDeclarations": [],
|
|
10009
10009
|
"referencedDeclaration": 1095,
|
|
10010
|
-
"src": "
|
|
10010
|
+
"src": "11679:9:5",
|
|
10011
10011
|
"typeDescriptions": {
|
|
10012
10012
|
"typeIdentifier": "t_array$_t_string_memory_$dyn_memory_ptr",
|
|
10013
10013
|
"typeString": "string memory[] memory"
|
|
@@ -10016,7 +10016,7 @@
|
|
|
10016
10016
|
"functionReturnParameters": 1059,
|
|
10017
10017
|
"id": 1144,
|
|
10018
10018
|
"nodeType": "Return",
|
|
10019
|
-
"src": "
|
|
10019
|
+
"src": "11672:16:5"
|
|
10020
10020
|
}
|
|
10021
10021
|
]
|
|
10022
10022
|
}
|
|
@@ -10044,7 +10044,7 @@
|
|
|
10044
10044
|
"nodeType": "Identifier",
|
|
10045
10045
|
"overloadedDeclarations": [],
|
|
10046
10046
|
"referencedDeclaration": 1061,
|
|
10047
|
-
"src": "
|
|
10047
|
+
"src": "11071:1:5",
|
|
10048
10048
|
"typeDescriptions": {
|
|
10049
10049
|
"typeIdentifier": "t_uint256",
|
|
10050
10050
|
"typeString": "uint256"
|
|
@@ -10063,7 +10063,7 @@
|
|
|
10063
10063
|
"nodeType": "Identifier",
|
|
10064
10064
|
"overloadedDeclarations": [],
|
|
10065
10065
|
"referencedDeclaration": 418,
|
|
10066
|
-
"src": "
|
|
10066
|
+
"src": "11073:12:5",
|
|
10067
10067
|
"typeDescriptions": {
|
|
10068
10068
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_transaction_$231_storage_$dyn_storage_$",
|
|
10069
10069
|
"typeString": "mapping(bytes32 => struct IVault.transaction storage ref[] storage ref)"
|
|
@@ -10077,7 +10077,7 @@
|
|
|
10077
10077
|
"nodeType": "Identifier",
|
|
10078
10078
|
"overloadedDeclarations": [],
|
|
10079
10079
|
"referencedDeclaration": 1046,
|
|
10080
|
-
"src": "
|
|
10080
|
+
"src": "11086:8:5",
|
|
10081
10081
|
"typeDescriptions": {
|
|
10082
10082
|
"typeIdentifier": "t_bytes32",
|
|
10083
10083
|
"typeString": "bytes32"
|
|
@@ -10088,7 +10088,7 @@
|
|
|
10088
10088
|
"isPure": false,
|
|
10089
10089
|
"lValueRequested": false,
|
|
10090
10090
|
"nodeType": "IndexAccess",
|
|
10091
|
-
"src": "
|
|
10091
|
+
"src": "11073:22:5",
|
|
10092
10092
|
"typeDescriptions": {
|
|
10093
10093
|
"typeIdentifier": "t_array$_t_struct$_transaction_$231_storage_$dyn_storage",
|
|
10094
10094
|
"typeString": "struct IVault.transaction storage ref[] storage ref"
|
|
@@ -10102,13 +10102,13 @@
|
|
|
10102
10102
|
"memberName": "length",
|
|
10103
10103
|
"nodeType": "MemberAccess",
|
|
10104
10104
|
"referencedDeclaration": null,
|
|
10105
|
-
"src": "
|
|
10105
|
+
"src": "11073:29:5",
|
|
10106
10106
|
"typeDescriptions": {
|
|
10107
10107
|
"typeIdentifier": "t_uint256",
|
|
10108
10108
|
"typeString": "uint256"
|
|
10109
10109
|
}
|
|
10110
10110
|
},
|
|
10111
|
-
"src": "
|
|
10111
|
+
"src": "11071:31:5",
|
|
10112
10112
|
"typeDescriptions": {
|
|
10113
10113
|
"typeIdentifier": "t_bool",
|
|
10114
10114
|
"typeString": "bool"
|
|
@@ -10126,7 +10126,7 @@
|
|
|
10126
10126
|
"name": "i",
|
|
10127
10127
|
"nodeType": "VariableDeclaration",
|
|
10128
10128
|
"scope": 1150,
|
|
10129
|
-
"src": "
|
|
10129
|
+
"src": "11061:6:5",
|
|
10130
10130
|
"stateVariable": false,
|
|
10131
10131
|
"storageLocation": "default",
|
|
10132
10132
|
"typeDescriptions": {
|
|
@@ -10137,7 +10137,7 @@
|
|
|
10137
10137
|
"id": 1060,
|
|
10138
10138
|
"name": "uint",
|
|
10139
10139
|
"nodeType": "ElementaryTypeName",
|
|
10140
|
-
"src": "
|
|
10140
|
+
"src": "11061:4:5",
|
|
10141
10141
|
"typeDescriptions": {
|
|
10142
10142
|
"typeIdentifier": "t_uint256",
|
|
10143
10143
|
"typeString": "uint256"
|
|
@@ -10158,7 +10158,7 @@
|
|
|
10158
10158
|
"kind": "number",
|
|
10159
10159
|
"lValueRequested": false,
|
|
10160
10160
|
"nodeType": "Literal",
|
|
10161
|
-
"src": "
|
|
10161
|
+
"src": "11068:1:5",
|
|
10162
10162
|
"subdenomination": null,
|
|
10163
10163
|
"typeDescriptions": {
|
|
10164
10164
|
"typeIdentifier": "t_rational_0_by_1",
|
|
@@ -10167,7 +10167,7 @@
|
|
|
10167
10167
|
"value": "0"
|
|
10168
10168
|
},
|
|
10169
10169
|
"nodeType": "VariableDeclarationStatement",
|
|
10170
|
-
"src": "
|
|
10170
|
+
"src": "11061:8:5"
|
|
10171
10171
|
},
|
|
10172
10172
|
"loopExpression": {
|
|
10173
10173
|
"expression": {
|
|
@@ -10180,7 +10180,7 @@
|
|
|
10180
10180
|
"nodeType": "UnaryOperation",
|
|
10181
10181
|
"operator": "++",
|
|
10182
10182
|
"prefix": false,
|
|
10183
|
-
"src": "
|
|
10183
|
+
"src": "11104:3:5",
|
|
10184
10184
|
"subExpression": {
|
|
10185
10185
|
"argumentTypes": null,
|
|
10186
10186
|
"id": 1070,
|
|
@@ -10188,7 +10188,7 @@
|
|
|
10188
10188
|
"nodeType": "Identifier",
|
|
10189
10189
|
"overloadedDeclarations": [],
|
|
10190
10190
|
"referencedDeclaration": 1061,
|
|
10191
|
-
"src": "
|
|
10191
|
+
"src": "11104:1:5",
|
|
10192
10192
|
"typeDescriptions": {
|
|
10193
10193
|
"typeIdentifier": "t_uint256",
|
|
10194
10194
|
"typeString": "uint256"
|
|
@@ -10201,10 +10201,10 @@
|
|
|
10201
10201
|
},
|
|
10202
10202
|
"id": 1072,
|
|
10203
10203
|
"nodeType": "ExpressionStatement",
|
|
10204
|
-
"src": "
|
|
10204
|
+
"src": "11104:3:5"
|
|
10205
10205
|
},
|
|
10206
10206
|
"nodeType": "ForStatement",
|
|
10207
|
-
"src": "
|
|
10207
|
+
"src": "11057:677:5"
|
|
10208
10208
|
}
|
|
10209
10209
|
]
|
|
10210
10210
|
},
|
|
@@ -10222,7 +10222,7 @@
|
|
|
10222
10222
|
"nodeType": "Identifier",
|
|
10223
10223
|
"overloadedDeclarations": [],
|
|
10224
10224
|
"referencedDeclaration": 1046,
|
|
10225
|
-
"src": "
|
|
10225
|
+
"src": "10993:8:5",
|
|
10226
10226
|
"typeDescriptions": {
|
|
10227
10227
|
"typeIdentifier": "t_bytes32",
|
|
10228
10228
|
"typeString": "bytes32"
|
|
@@ -10235,7 +10235,7 @@
|
|
|
10235
10235
|
"nodeType": "Identifier",
|
|
10236
10236
|
"overloadedDeclarations": [],
|
|
10237
10237
|
"referencedDeclaration": 1048,
|
|
10238
|
-
"src": "
|
|
10238
|
+
"src": "11003:3:5",
|
|
10239
10239
|
"typeDescriptions": {
|
|
10240
10240
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
10241
10241
|
"typeString": "string calldata"
|
|
@@ -10250,14 +10250,14 @@
|
|
|
10250
10250
|
"nodeType": "Identifier",
|
|
10251
10251
|
"overloadedDeclarations": [],
|
|
10252
10252
|
"referencedDeclaration": 467,
|
|
10253
|
-
"src": "
|
|
10253
|
+
"src": "10982:10:5",
|
|
10254
10254
|
"typeDescriptions": {
|
|
10255
10255
|
"typeIdentifier": "t_modifier$_t_bytes32_$_t_string_memory_ptr_$",
|
|
10256
10256
|
"typeString": "modifier (bytes32,string memory)"
|
|
10257
10257
|
}
|
|
10258
10258
|
},
|
|
10259
10259
|
"nodeType": "ModifierInvocation",
|
|
10260
|
-
"src": "
|
|
10260
|
+
"src": "10982:25:5"
|
|
10261
10261
|
}
|
|
10262
10262
|
],
|
|
10263
10263
|
"name": "getShards",
|
|
@@ -10272,7 +10272,7 @@
|
|
|
10272
10272
|
"name": "_creator",
|
|
10273
10273
|
"nodeType": "VariableDeclaration",
|
|
10274
10274
|
"scope": 1152,
|
|
10275
|
-
"src": "
|
|
10275
|
+
"src": "10928:16:5",
|
|
10276
10276
|
"stateVariable": false,
|
|
10277
10277
|
"storageLocation": "default",
|
|
10278
10278
|
"typeDescriptions": {
|
|
@@ -10283,7 +10283,7 @@
|
|
|
10283
10283
|
"id": 1045,
|
|
10284
10284
|
"name": "bytes32",
|
|
10285
10285
|
"nodeType": "ElementaryTypeName",
|
|
10286
|
-
"src": "
|
|
10286
|
+
"src": "10928:7:5",
|
|
10287
10287
|
"typeDescriptions": {
|
|
10288
10288
|
"typeIdentifier": "t_bytes32",
|
|
10289
10289
|
"typeString": "bytes32"
|
|
@@ -10298,7 +10298,7 @@
|
|
|
10298
10298
|
"name": "_id",
|
|
10299
10299
|
"nodeType": "VariableDeclaration",
|
|
10300
10300
|
"scope": 1152,
|
|
10301
|
-
"src": "
|
|
10301
|
+
"src": "10946:19:5",
|
|
10302
10302
|
"stateVariable": false,
|
|
10303
10303
|
"storageLocation": "calldata",
|
|
10304
10304
|
"typeDescriptions": {
|
|
@@ -10309,7 +10309,7 @@
|
|
|
10309
10309
|
"id": 1047,
|
|
10310
10310
|
"name": "string",
|
|
10311
10311
|
"nodeType": "ElementaryTypeName",
|
|
10312
|
-
"src": "
|
|
10312
|
+
"src": "10946:6:5",
|
|
10313
10313
|
"typeDescriptions": {
|
|
10314
10314
|
"typeIdentifier": "t_string_storage_ptr",
|
|
10315
10315
|
"typeString": "string"
|
|
@@ -10324,7 +10324,7 @@
|
|
|
10324
10324
|
"name": "_txid",
|
|
10325
10325
|
"nodeType": "VariableDeclaration",
|
|
10326
10326
|
"scope": 1152,
|
|
10327
|
-
"src": "
|
|
10327
|
+
"src": "10967:13:5",
|
|
10328
10328
|
"stateVariable": false,
|
|
10329
10329
|
"storageLocation": "default",
|
|
10330
10330
|
"typeDescriptions": {
|
|
@@ -10335,7 +10335,7 @@
|
|
|
10335
10335
|
"id": 1049,
|
|
10336
10336
|
"name": "uint256",
|
|
10337
10337
|
"nodeType": "ElementaryTypeName",
|
|
10338
|
-
"src": "
|
|
10338
|
+
"src": "10967:7:5",
|
|
10339
10339
|
"typeDescriptions": {
|
|
10340
10340
|
"typeIdentifier": "t_uint256",
|
|
10341
10341
|
"typeString": "uint256"
|
|
@@ -10345,7 +10345,7 @@
|
|
|
10345
10345
|
"visibility": "internal"
|
|
10346
10346
|
}
|
|
10347
10347
|
],
|
|
10348
|
-
"src": "
|
|
10348
|
+
"src": "10927:54:5"
|
|
10349
10349
|
},
|
|
10350
10350
|
"returnParameters": {
|
|
10351
10351
|
"id": 1059,
|
|
@@ -10357,7 +10357,7 @@
|
|
|
10357
10357
|
"name": "",
|
|
10358
10358
|
"nodeType": "VariableDeclaration",
|
|
10359
10359
|
"scope": 1152,
|
|
10360
|
-
"src": "
|
|
10360
|
+
"src": "11030:15:5",
|
|
10361
10361
|
"stateVariable": false,
|
|
10362
10362
|
"storageLocation": "memory",
|
|
10363
10363
|
"typeDescriptions": {
|
|
@@ -10369,7 +10369,7 @@
|
|
|
10369
10369
|
"id": 1056,
|
|
10370
10370
|
"name": "string",
|
|
10371
10371
|
"nodeType": "ElementaryTypeName",
|
|
10372
|
-
"src": "
|
|
10372
|
+
"src": "11030:6:5",
|
|
10373
10373
|
"typeDescriptions": {
|
|
10374
10374
|
"typeIdentifier": "t_string_storage_ptr",
|
|
10375
10375
|
"typeString": "string"
|
|
@@ -10378,7 +10378,7 @@
|
|
|
10378
10378
|
"id": 1057,
|
|
10379
10379
|
"length": null,
|
|
10380
10380
|
"nodeType": "ArrayTypeName",
|
|
10381
|
-
"src": "
|
|
10381
|
+
"src": "11030:8:5",
|
|
10382
10382
|
"typeDescriptions": {
|
|
10383
10383
|
"typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
|
|
10384
10384
|
"typeString": "string[]"
|
|
@@ -10388,20 +10388,20 @@
|
|
|
10388
10388
|
"visibility": "internal"
|
|
10389
10389
|
}
|
|
10390
10390
|
],
|
|
10391
|
-
"src": "
|
|
10391
|
+
"src": "11029:17:5"
|
|
10392
10392
|
},
|
|
10393
10393
|
"scope": 1153,
|
|
10394
|
-
"src": "
|
|
10394
|
+
"src": "10909:832:5",
|
|
10395
10395
|
"stateMutability": "view",
|
|
10396
10396
|
"superFunction": 332,
|
|
10397
10397
|
"visibility": "external"
|
|
10398
10398
|
}
|
|
10399
10399
|
],
|
|
10400
10400
|
"scope": 1154,
|
|
10401
|
-
"src": "321:
|
|
10401
|
+
"src": "321:11425:5"
|
|
10402
10402
|
}
|
|
10403
10403
|
],
|
|
10404
|
-
"src": "150:
|
|
10404
|
+
"src": "150:11596:5"
|
|
10405
10405
|
},
|
|
10406
10406
|
"legacyAST": {
|
|
10407
10407
|
"attributes": {
|
|
@@ -17538,7 +17538,7 @@
|
|
|
17538
17538
|
"attributes": {
|
|
17539
17539
|
"constant": false,
|
|
17540
17540
|
"name": "i",
|
|
17541
|
-
"scope":
|
|
17541
|
+
"scope": 963,
|
|
17542
17542
|
"stateVariable": false,
|
|
17543
17543
|
"storageLocation": "default",
|
|
17544
17544
|
"type": "uint256",
|
|
@@ -18424,132 +18424,132 @@
|
|
|
18424
18424
|
"id": 953,
|
|
18425
18425
|
"name": "ForStatement",
|
|
18426
18426
|
"src": "9185:286:5"
|
|
18427
|
+
},
|
|
18428
|
+
{
|
|
18429
|
+
"children": [
|
|
18430
|
+
{
|
|
18431
|
+
"attributes": {
|
|
18432
|
+
"argumentTypes": null,
|
|
18433
|
+
"isConstant": false,
|
|
18434
|
+
"isLValue": false,
|
|
18435
|
+
"isPure": false,
|
|
18436
|
+
"isStructConstructorCall": false,
|
|
18437
|
+
"lValueRequested": false,
|
|
18438
|
+
"names": [
|
|
18439
|
+
null
|
|
18440
|
+
],
|
|
18441
|
+
"type": "tuple()",
|
|
18442
|
+
"type_conversion": false
|
|
18443
|
+
},
|
|
18444
|
+
"children": [
|
|
18445
|
+
{
|
|
18446
|
+
"attributes": {
|
|
18447
|
+
"argumentTypes": [
|
|
18448
|
+
{
|
|
18449
|
+
"typeIdentifier": "t_bytes32",
|
|
18450
|
+
"typeString": "bytes32"
|
|
18451
|
+
},
|
|
18452
|
+
{
|
|
18453
|
+
"typeIdentifier": "t_bytes32",
|
|
18454
|
+
"typeString": "bytes32"
|
|
18455
|
+
},
|
|
18456
|
+
{
|
|
18457
|
+
"typeIdentifier": "t_uint256",
|
|
18458
|
+
"typeString": "uint256"
|
|
18459
|
+
}
|
|
18460
|
+
],
|
|
18461
|
+
"overloadedDeclarations": [
|
|
18462
|
+
null
|
|
18463
|
+
],
|
|
18464
|
+
"referencedDeclaration": 440,
|
|
18465
|
+
"type": "function (bytes32,bytes32,uint256)",
|
|
18466
|
+
"value": "SignTransaction"
|
|
18467
|
+
},
|
|
18468
|
+
"id": 954,
|
|
18469
|
+
"name": "Identifier",
|
|
18470
|
+
"src": "9494:15:5"
|
|
18471
|
+
},
|
|
18472
|
+
{
|
|
18473
|
+
"attributes": {
|
|
18474
|
+
"argumentTypes": null,
|
|
18475
|
+
"overloadedDeclarations": [
|
|
18476
|
+
null
|
|
18477
|
+
],
|
|
18478
|
+
"referencedDeclaration": 866,
|
|
18479
|
+
"type": "bytes32",
|
|
18480
|
+
"value": "_creator"
|
|
18481
|
+
},
|
|
18482
|
+
"id": 955,
|
|
18483
|
+
"name": "Identifier",
|
|
18484
|
+
"src": "9510:8:5"
|
|
18485
|
+
},
|
|
18486
|
+
{
|
|
18487
|
+
"attributes": {
|
|
18488
|
+
"argumentTypes": null,
|
|
18489
|
+
"overloadedDeclarations": [
|
|
18490
|
+
null
|
|
18491
|
+
],
|
|
18492
|
+
"referencedDeclaration": 870,
|
|
18493
|
+
"type": "bytes32",
|
|
18494
|
+
"value": "_participant"
|
|
18495
|
+
},
|
|
18496
|
+
"id": 956,
|
|
18497
|
+
"name": "Identifier",
|
|
18498
|
+
"src": "9520:12:5"
|
|
18499
|
+
},
|
|
18500
|
+
{
|
|
18501
|
+
"attributes": {
|
|
18502
|
+
"argumentTypes": null,
|
|
18503
|
+
"overloadedDeclarations": [
|
|
18504
|
+
null
|
|
18505
|
+
],
|
|
18506
|
+
"referencedDeclaration": 872,
|
|
18507
|
+
"type": "uint256",
|
|
18508
|
+
"value": "_tx"
|
|
18509
|
+
},
|
|
18510
|
+
"id": 957,
|
|
18511
|
+
"name": "Identifier",
|
|
18512
|
+
"src": "9534:3:5"
|
|
18513
|
+
}
|
|
18514
|
+
],
|
|
18515
|
+
"id": 958,
|
|
18516
|
+
"name": "FunctionCall",
|
|
18517
|
+
"src": "9494:44:5"
|
|
18518
|
+
}
|
|
18519
|
+
],
|
|
18520
|
+
"id": 959,
|
|
18521
|
+
"name": "EmitStatement",
|
|
18522
|
+
"src": "9489:49:5"
|
|
18427
18523
|
}
|
|
18428
18524
|
],
|
|
18429
|
-
"id":
|
|
18525
|
+
"id": 960,
|
|
18430
18526
|
"name": "Block",
|
|
18431
|
-
"src": "9166:
|
|
18527
|
+
"src": "9166:388:5"
|
|
18432
18528
|
}
|
|
18433
18529
|
],
|
|
18434
|
-
"id": 955,
|
|
18435
|
-
"name": "IfStatement",
|
|
18436
|
-
"src": "9123:363:5"
|
|
18437
|
-
}
|
|
18438
|
-
],
|
|
18439
|
-
"id": 956,
|
|
18440
|
-
"name": "Block",
|
|
18441
|
-
"src": "9108:389:5"
|
|
18442
|
-
}
|
|
18443
|
-
],
|
|
18444
|
-
"id": 957,
|
|
18445
|
-
"name": "ForStatement",
|
|
18446
|
-
"src": "9057:440:5"
|
|
18447
|
-
},
|
|
18448
|
-
{
|
|
18449
|
-
"children": [
|
|
18450
|
-
{
|
|
18451
|
-
"attributes": {
|
|
18452
|
-
"argumentTypes": null,
|
|
18453
|
-
"isConstant": false,
|
|
18454
|
-
"isLValue": false,
|
|
18455
|
-
"isPure": false,
|
|
18456
|
-
"isStructConstructorCall": false,
|
|
18457
|
-
"lValueRequested": false,
|
|
18458
|
-
"names": [
|
|
18459
|
-
null
|
|
18460
|
-
],
|
|
18461
|
-
"type": "tuple()",
|
|
18462
|
-
"type_conversion": false
|
|
18463
|
-
},
|
|
18464
|
-
"children": [
|
|
18465
|
-
{
|
|
18466
|
-
"attributes": {
|
|
18467
|
-
"argumentTypes": [
|
|
18468
|
-
{
|
|
18469
|
-
"typeIdentifier": "t_bytes32",
|
|
18470
|
-
"typeString": "bytes32"
|
|
18471
|
-
},
|
|
18472
|
-
{
|
|
18473
|
-
"typeIdentifier": "t_bytes32",
|
|
18474
|
-
"typeString": "bytes32"
|
|
18475
|
-
},
|
|
18476
|
-
{
|
|
18477
|
-
"typeIdentifier": "t_uint256",
|
|
18478
|
-
"typeString": "uint256"
|
|
18479
|
-
}
|
|
18480
|
-
],
|
|
18481
|
-
"overloadedDeclarations": [
|
|
18482
|
-
null
|
|
18483
|
-
],
|
|
18484
|
-
"referencedDeclaration": 440,
|
|
18485
|
-
"type": "function (bytes32,bytes32,uint256)",
|
|
18486
|
-
"value": "SignTransaction"
|
|
18487
|
-
},
|
|
18488
|
-
"id": 958,
|
|
18489
|
-
"name": "Identifier",
|
|
18490
|
-
"src": "9512:15:5"
|
|
18491
|
-
},
|
|
18492
|
-
{
|
|
18493
|
-
"attributes": {
|
|
18494
|
-
"argumentTypes": null,
|
|
18495
|
-
"overloadedDeclarations": [
|
|
18496
|
-
null
|
|
18497
|
-
],
|
|
18498
|
-
"referencedDeclaration": 866,
|
|
18499
|
-
"type": "bytes32",
|
|
18500
|
-
"value": "_creator"
|
|
18501
|
-
},
|
|
18502
|
-
"id": 959,
|
|
18503
|
-
"name": "Identifier",
|
|
18504
|
-
"src": "9528:8:5"
|
|
18505
|
-
},
|
|
18506
|
-
{
|
|
18507
|
-
"attributes": {
|
|
18508
|
-
"argumentTypes": null,
|
|
18509
|
-
"overloadedDeclarations": [
|
|
18510
|
-
null
|
|
18511
|
-
],
|
|
18512
|
-
"referencedDeclaration": 870,
|
|
18513
|
-
"type": "bytes32",
|
|
18514
|
-
"value": "_participant"
|
|
18515
|
-
},
|
|
18516
|
-
"id": 960,
|
|
18517
|
-
"name": "Identifier",
|
|
18518
|
-
"src": "9538:12:5"
|
|
18519
|
-
},
|
|
18520
|
-
{
|
|
18521
|
-
"attributes": {
|
|
18522
|
-
"argumentTypes": null,
|
|
18523
|
-
"overloadedDeclarations": [
|
|
18524
|
-
null
|
|
18525
|
-
],
|
|
18526
|
-
"referencedDeclaration": 872,
|
|
18527
|
-
"type": "uint256",
|
|
18528
|
-
"value": "_tx"
|
|
18529
|
-
},
|
|
18530
18530
|
"id": 961,
|
|
18531
|
-
"name": "
|
|
18532
|
-
"src": "
|
|
18531
|
+
"name": "IfStatement",
|
|
18532
|
+
"src": "9123:431:5"
|
|
18533
18533
|
}
|
|
18534
18534
|
],
|
|
18535
18535
|
"id": 962,
|
|
18536
|
-
"name": "
|
|
18537
|
-
"src": "
|
|
18536
|
+
"name": "Block",
|
|
18537
|
+
"src": "9108:457:5"
|
|
18538
18538
|
}
|
|
18539
18539
|
],
|
|
18540
18540
|
"id": 963,
|
|
18541
|
-
"name": "
|
|
18542
|
-
"src": "
|
|
18541
|
+
"name": "ForStatement",
|
|
18542
|
+
"src": "9057:508:5"
|
|
18543
18543
|
}
|
|
18544
18544
|
],
|
|
18545
18545
|
"id": 964,
|
|
18546
18546
|
"name": "Block",
|
|
18547
|
-
"src": "8992:
|
|
18547
|
+
"src": "8992:580:5"
|
|
18548
18548
|
}
|
|
18549
18549
|
],
|
|
18550
18550
|
"id": 965,
|
|
18551
18551
|
"name": "FunctionDefinition",
|
|
18552
|
-
"src": "8840:
|
|
18552
|
+
"src": "8840:732:5"
|
|
18553
18553
|
},
|
|
18554
18554
|
{
|
|
18555
18555
|
"attributes": {
|
|
@@ -18585,12 +18585,12 @@
|
|
|
18585
18585
|
},
|
|
18586
18586
|
"id": 966,
|
|
18587
18587
|
"name": "ElementaryTypeName",
|
|
18588
|
-
"src": "
|
|
18588
|
+
"src": "10026:7:5"
|
|
18589
18589
|
}
|
|
18590
18590
|
],
|
|
18591
18591
|
"id": 967,
|
|
18592
18592
|
"name": "VariableDeclaration",
|
|
18593
|
-
"src": "
|
|
18593
|
+
"src": "10026:16:5"
|
|
18594
18594
|
},
|
|
18595
18595
|
{
|
|
18596
18596
|
"attributes": {
|
|
@@ -18611,12 +18611,12 @@
|
|
|
18611
18611
|
},
|
|
18612
18612
|
"id": 968,
|
|
18613
18613
|
"name": "ElementaryTypeName",
|
|
18614
|
-
"src": "
|
|
18614
|
+
"src": "10044:6:5"
|
|
18615
18615
|
}
|
|
18616
18616
|
],
|
|
18617
18617
|
"id": 969,
|
|
18618
18618
|
"name": "VariableDeclaration",
|
|
18619
|
-
"src": "
|
|
18619
|
+
"src": "10044:19:5"
|
|
18620
18620
|
},
|
|
18621
18621
|
{
|
|
18622
18622
|
"attributes": {
|
|
@@ -18637,12 +18637,12 @@
|
|
|
18637
18637
|
},
|
|
18638
18638
|
"id": 970,
|
|
18639
18639
|
"name": "ElementaryTypeName",
|
|
18640
|
-
"src": "
|
|
18640
|
+
"src": "10065:7:5"
|
|
18641
18641
|
}
|
|
18642
18642
|
],
|
|
18643
18643
|
"id": 971,
|
|
18644
18644
|
"name": "VariableDeclaration",
|
|
18645
|
-
"src": "
|
|
18645
|
+
"src": "10065:20:5"
|
|
18646
18646
|
},
|
|
18647
18647
|
{
|
|
18648
18648
|
"attributes": {
|
|
@@ -18663,17 +18663,17 @@
|
|
|
18663
18663
|
},
|
|
18664
18664
|
"id": 972,
|
|
18665
18665
|
"name": "ElementaryTypeName",
|
|
18666
|
-
"src": "
|
|
18666
|
+
"src": "10087:7:5"
|
|
18667
18667
|
}
|
|
18668
18668
|
],
|
|
18669
18669
|
"id": 973,
|
|
18670
18670
|
"name": "VariableDeclaration",
|
|
18671
|
-
"src": "
|
|
18671
|
+
"src": "10087:13:5"
|
|
18672
18672
|
}
|
|
18673
18673
|
],
|
|
18674
18674
|
"id": 974,
|
|
18675
18675
|
"name": "ParameterList",
|
|
18676
|
-
"src": "
|
|
18676
|
+
"src": "10025:76:5"
|
|
18677
18677
|
},
|
|
18678
18678
|
{
|
|
18679
18679
|
"children": [
|
|
@@ -18696,17 +18696,17 @@
|
|
|
18696
18696
|
},
|
|
18697
18697
|
"id": 979,
|
|
18698
18698
|
"name": "ElementaryTypeName",
|
|
18699
|
-
"src": "
|
|
18699
|
+
"src": "10150:4:5"
|
|
18700
18700
|
}
|
|
18701
18701
|
],
|
|
18702
18702
|
"id": 980,
|
|
18703
18703
|
"name": "VariableDeclaration",
|
|
18704
|
-
"src": "
|
|
18704
|
+
"src": "10150:4:5"
|
|
18705
18705
|
}
|
|
18706
18706
|
],
|
|
18707
18707
|
"id": 981,
|
|
18708
18708
|
"name": "ParameterList",
|
|
18709
|
-
"src": "
|
|
18709
|
+
"src": "10149:6:5"
|
|
18710
18710
|
},
|
|
18711
18711
|
{
|
|
18712
18712
|
"children": [
|
|
@@ -18722,7 +18722,7 @@
|
|
|
18722
18722
|
},
|
|
18723
18723
|
"id": 975,
|
|
18724
18724
|
"name": "Identifier",
|
|
18725
|
-
"src": "
|
|
18725
|
+
"src": "10102:10:5"
|
|
18726
18726
|
},
|
|
18727
18727
|
{
|
|
18728
18728
|
"attributes": {
|
|
@@ -18736,7 +18736,7 @@
|
|
|
18736
18736
|
},
|
|
18737
18737
|
"id": 976,
|
|
18738
18738
|
"name": "Identifier",
|
|
18739
|
-
"src": "
|
|
18739
|
+
"src": "10113:8:5"
|
|
18740
18740
|
},
|
|
18741
18741
|
{
|
|
18742
18742
|
"attributes": {
|
|
@@ -18750,12 +18750,12 @@
|
|
|
18750
18750
|
},
|
|
18751
18751
|
"id": 977,
|
|
18752
18752
|
"name": "Identifier",
|
|
18753
|
-
"src": "
|
|
18753
|
+
"src": "10123:3:5"
|
|
18754
18754
|
}
|
|
18755
18755
|
],
|
|
18756
18756
|
"id": 978,
|
|
18757
18757
|
"name": "ModifierInvocation",
|
|
18758
|
-
"src": "
|
|
18758
|
+
"src": "10102:25:5"
|
|
18759
18759
|
},
|
|
18760
18760
|
{
|
|
18761
18761
|
"children": [
|
|
@@ -18794,7 +18794,7 @@
|
|
|
18794
18794
|
},
|
|
18795
18795
|
"id": 982,
|
|
18796
18796
|
"name": "Identifier",
|
|
18797
|
-
"src": "
|
|
18797
|
+
"src": "10166:7:5"
|
|
18798
18798
|
},
|
|
18799
18799
|
{
|
|
18800
18800
|
"attributes": {
|
|
@@ -18843,7 +18843,7 @@
|
|
|
18843
18843
|
},
|
|
18844
18844
|
"id": 983,
|
|
18845
18845
|
"name": "Identifier",
|
|
18846
|
-
"src": "
|
|
18846
|
+
"src": "10174:4:5"
|
|
18847
18847
|
},
|
|
18848
18848
|
{
|
|
18849
18849
|
"attributes": {
|
|
@@ -18857,12 +18857,12 @@
|
|
|
18857
18857
|
},
|
|
18858
18858
|
"id": 984,
|
|
18859
18859
|
"name": "Identifier",
|
|
18860
|
-
"src": "
|
|
18860
|
+
"src": "10179:8:5"
|
|
18861
18861
|
}
|
|
18862
18862
|
],
|
|
18863
18863
|
"id": 985,
|
|
18864
18864
|
"name": "IndexAccess",
|
|
18865
|
-
"src": "
|
|
18865
|
+
"src": "10174:14:5"
|
|
18866
18866
|
},
|
|
18867
18867
|
{
|
|
18868
18868
|
"attributes": {
|
|
@@ -18876,12 +18876,12 @@
|
|
|
18876
18876
|
},
|
|
18877
18877
|
"id": 986,
|
|
18878
18878
|
"name": "Identifier",
|
|
18879
|
-
"src": "
|
|
18879
|
+
"src": "10189:12:5"
|
|
18880
18880
|
}
|
|
18881
18881
|
],
|
|
18882
18882
|
"id": 987,
|
|
18883
18883
|
"name": "IndexAccess",
|
|
18884
|
-
"src": "
|
|
18884
|
+
"src": "10174:28:5"
|
|
18885
18885
|
},
|
|
18886
18886
|
{
|
|
18887
18887
|
"attributes": {
|
|
@@ -18898,22 +18898,22 @@
|
|
|
18898
18898
|
},
|
|
18899
18899
|
"id": 988,
|
|
18900
18900
|
"name": "Literal",
|
|
18901
|
-
"src": "
|
|
18901
|
+
"src": "10204:1:5"
|
|
18902
18902
|
}
|
|
18903
18903
|
],
|
|
18904
18904
|
"id": 989,
|
|
18905
18905
|
"name": "BinaryOperation",
|
|
18906
|
-
"src": "
|
|
18906
|
+
"src": "10174:31:5"
|
|
18907
18907
|
}
|
|
18908
18908
|
],
|
|
18909
18909
|
"id": 990,
|
|
18910
18910
|
"name": "FunctionCall",
|
|
18911
|
-
"src": "
|
|
18911
|
+
"src": "10166:40:5"
|
|
18912
18912
|
}
|
|
18913
18913
|
],
|
|
18914
18914
|
"id": 991,
|
|
18915
18915
|
"name": "ExpressionStatement",
|
|
18916
|
-
"src": "
|
|
18916
|
+
"src": "10166:40:5"
|
|
18917
18917
|
},
|
|
18918
18918
|
{
|
|
18919
18919
|
"attributes": {
|
|
@@ -18941,12 +18941,12 @@
|
|
|
18941
18941
|
},
|
|
18942
18942
|
"id": 992,
|
|
18943
18943
|
"name": "ElementaryTypeName",
|
|
18944
|
-
"src": "
|
|
18944
|
+
"src": "10217:4:5"
|
|
18945
18945
|
}
|
|
18946
18946
|
],
|
|
18947
18947
|
"id": 993,
|
|
18948
18948
|
"name": "VariableDeclaration",
|
|
18949
|
-
"src": "
|
|
18949
|
+
"src": "10217:12:5"
|
|
18950
18950
|
},
|
|
18951
18951
|
{
|
|
18952
18952
|
"attributes": {
|
|
@@ -18963,12 +18963,12 @@
|
|
|
18963
18963
|
},
|
|
18964
18964
|
"id": 994,
|
|
18965
18965
|
"name": "Literal",
|
|
18966
|
-
"src": "
|
|
18966
|
+
"src": "10232:5:5"
|
|
18967
18967
|
}
|
|
18968
18968
|
],
|
|
18969
18969
|
"id": 995,
|
|
18970
18970
|
"name": "VariableDeclarationStatement",
|
|
18971
|
-
"src": "
|
|
18971
|
+
"src": "10217:20:5"
|
|
18972
18972
|
},
|
|
18973
18973
|
{
|
|
18974
18974
|
"children": [
|
|
@@ -18998,12 +18998,12 @@
|
|
|
18998
18998
|
},
|
|
18999
18999
|
"id": 996,
|
|
19000
19000
|
"name": "ElementaryTypeName",
|
|
19001
|
-
"src": "
|
|
19001
|
+
"src": "10252:4:5"
|
|
19002
19002
|
}
|
|
19003
19003
|
],
|
|
19004
19004
|
"id": 997,
|
|
19005
19005
|
"name": "VariableDeclaration",
|
|
19006
|
-
"src": "
|
|
19006
|
+
"src": "10252:6:5"
|
|
19007
19007
|
},
|
|
19008
19008
|
{
|
|
19009
19009
|
"attributes": {
|
|
@@ -19020,12 +19020,12 @@
|
|
|
19020
19020
|
},
|
|
19021
19021
|
"id": 998,
|
|
19022
19022
|
"name": "Literal",
|
|
19023
|
-
"src": "
|
|
19023
|
+
"src": "10259:1:5"
|
|
19024
19024
|
}
|
|
19025
19025
|
],
|
|
19026
19026
|
"id": 999,
|
|
19027
19027
|
"name": "VariableDeclarationStatement",
|
|
19028
|
-
"src": "
|
|
19028
|
+
"src": "10252:8:5"
|
|
19029
19029
|
},
|
|
19030
19030
|
{
|
|
19031
19031
|
"attributes": {
|
|
@@ -19054,7 +19054,7 @@
|
|
|
19054
19054
|
},
|
|
19055
19055
|
"id": 1000,
|
|
19056
19056
|
"name": "Identifier",
|
|
19057
|
-
"src": "
|
|
19057
|
+
"src": "10262:1:5"
|
|
19058
19058
|
},
|
|
19059
19059
|
{
|
|
19060
19060
|
"attributes": {
|
|
@@ -19090,7 +19090,7 @@
|
|
|
19090
19090
|
},
|
|
19091
19091
|
"id": 1001,
|
|
19092
19092
|
"name": "Identifier",
|
|
19093
|
-
"src": "
|
|
19093
|
+
"src": "10264:12:5"
|
|
19094
19094
|
},
|
|
19095
19095
|
{
|
|
19096
19096
|
"attributes": {
|
|
@@ -19104,22 +19104,22 @@
|
|
|
19104
19104
|
},
|
|
19105
19105
|
"id": 1002,
|
|
19106
19106
|
"name": "Identifier",
|
|
19107
|
-
"src": "
|
|
19107
|
+
"src": "10277:8:5"
|
|
19108
19108
|
}
|
|
19109
19109
|
],
|
|
19110
19110
|
"id": 1003,
|
|
19111
19111
|
"name": "IndexAccess",
|
|
19112
|
-
"src": "
|
|
19112
|
+
"src": "10264:22:5"
|
|
19113
19113
|
}
|
|
19114
19114
|
],
|
|
19115
19115
|
"id": 1004,
|
|
19116
19116
|
"name": "MemberAccess",
|
|
19117
|
-
"src": "
|
|
19117
|
+
"src": "10264:29:5"
|
|
19118
19118
|
}
|
|
19119
19119
|
],
|
|
19120
19120
|
"id": 1005,
|
|
19121
19121
|
"name": "BinaryOperation",
|
|
19122
|
-
"src": "
|
|
19122
|
+
"src": "10262:31:5"
|
|
19123
19123
|
},
|
|
19124
19124
|
{
|
|
19125
19125
|
"children": [
|
|
@@ -19147,17 +19147,17 @@
|
|
|
19147
19147
|
},
|
|
19148
19148
|
"id": 1006,
|
|
19149
19149
|
"name": "Identifier",
|
|
19150
|
-
"src": "
|
|
19150
|
+
"src": "10295:1:5"
|
|
19151
19151
|
}
|
|
19152
19152
|
],
|
|
19153
19153
|
"id": 1007,
|
|
19154
19154
|
"name": "UnaryOperation",
|
|
19155
|
-
"src": "
|
|
19155
|
+
"src": "10295:3:5"
|
|
19156
19156
|
}
|
|
19157
19157
|
],
|
|
19158
19158
|
"id": 1008,
|
|
19159
19159
|
"name": "ExpressionStatement",
|
|
19160
|
-
"src": "
|
|
19160
|
+
"src": "10295:3:5"
|
|
19161
19161
|
},
|
|
19162
19162
|
{
|
|
19163
19163
|
"children": [
|
|
@@ -19225,7 +19225,7 @@
|
|
|
19225
19225
|
},
|
|
19226
19226
|
"id": 1009,
|
|
19227
19227
|
"name": "Identifier",
|
|
19228
|
-
"src": "
|
|
19228
|
+
"src": "10317:12:5"
|
|
19229
19229
|
},
|
|
19230
19230
|
{
|
|
19231
19231
|
"attributes": {
|
|
@@ -19239,12 +19239,12 @@
|
|
|
19239
19239
|
},
|
|
19240
19240
|
"id": 1010,
|
|
19241
19241
|
"name": "Identifier",
|
|
19242
|
-
"src": "
|
|
19242
|
+
"src": "10330:8:5"
|
|
19243
19243
|
}
|
|
19244
19244
|
],
|
|
19245
19245
|
"id": 1011,
|
|
19246
19246
|
"name": "IndexAccess",
|
|
19247
|
-
"src": "
|
|
19247
|
+
"src": "10317:22:5"
|
|
19248
19248
|
},
|
|
19249
19249
|
{
|
|
19250
19250
|
"attributes": {
|
|
@@ -19258,17 +19258,17 @@
|
|
|
19258
19258
|
},
|
|
19259
19259
|
"id": 1012,
|
|
19260
19260
|
"name": "Identifier",
|
|
19261
|
-
"src": "
|
|
19261
|
+
"src": "10340:1:5"
|
|
19262
19262
|
}
|
|
19263
19263
|
],
|
|
19264
19264
|
"id": 1013,
|
|
19265
19265
|
"name": "IndexAccess",
|
|
19266
|
-
"src": "
|
|
19266
|
+
"src": "10317:25:5"
|
|
19267
19267
|
}
|
|
19268
19268
|
],
|
|
19269
19269
|
"id": 1014,
|
|
19270
19270
|
"name": "MemberAccess",
|
|
19271
|
-
"src": "
|
|
19271
|
+
"src": "10317:34:5"
|
|
19272
19272
|
},
|
|
19273
19273
|
{
|
|
19274
19274
|
"attributes": {
|
|
@@ -19282,12 +19282,12 @@
|
|
|
19282
19282
|
},
|
|
19283
19283
|
"id": 1015,
|
|
19284
19284
|
"name": "Identifier",
|
|
19285
|
-
"src": "
|
|
19285
|
+
"src": "10353:5:5"
|
|
19286
19286
|
}
|
|
19287
19287
|
],
|
|
19288
19288
|
"id": 1016,
|
|
19289
19289
|
"name": "BinaryOperation",
|
|
19290
|
-
"src": "
|
|
19290
|
+
"src": "10317:41:5"
|
|
19291
19291
|
},
|
|
19292
19292
|
{
|
|
19293
19293
|
"children": [
|
|
@@ -19367,7 +19367,7 @@
|
|
|
19367
19367
|
},
|
|
19368
19368
|
"id": 1017,
|
|
19369
19369
|
"name": "Identifier",
|
|
19370
|
-
"src": "
|
|
19370
|
+
"src": "10381:12:5"
|
|
19371
19371
|
},
|
|
19372
19372
|
{
|
|
19373
19373
|
"attributes": {
|
|
@@ -19381,12 +19381,12 @@
|
|
|
19381
19381
|
},
|
|
19382
19382
|
"id": 1018,
|
|
19383
19383
|
"name": "Identifier",
|
|
19384
|
-
"src": "
|
|
19384
|
+
"src": "10394:8:5"
|
|
19385
19385
|
}
|
|
19386
19386
|
],
|
|
19387
19387
|
"id": 1019,
|
|
19388
19388
|
"name": "IndexAccess",
|
|
19389
|
-
"src": "
|
|
19389
|
+
"src": "10381:22:5"
|
|
19390
19390
|
},
|
|
19391
19391
|
{
|
|
19392
19392
|
"attributes": {
|
|
@@ -19400,22 +19400,22 @@
|
|
|
19400
19400
|
},
|
|
19401
19401
|
"id": 1020,
|
|
19402
19402
|
"name": "Identifier",
|
|
19403
|
-
"src": "
|
|
19403
|
+
"src": "10404:1:5"
|
|
19404
19404
|
}
|
|
19405
19405
|
],
|
|
19406
19406
|
"id": 1021,
|
|
19407
19407
|
"name": "IndexAccess",
|
|
19408
|
-
"src": "
|
|
19408
|
+
"src": "10381:25:5"
|
|
19409
19409
|
}
|
|
19410
19410
|
],
|
|
19411
19411
|
"id": 1022,
|
|
19412
19412
|
"name": "MemberAccess",
|
|
19413
|
-
"src": "
|
|
19413
|
+
"src": "10381:35:5"
|
|
19414
19414
|
}
|
|
19415
19415
|
],
|
|
19416
19416
|
"id": 1023,
|
|
19417
19417
|
"name": "MemberAccess",
|
|
19418
|
-
"src": "
|
|
19418
|
+
"src": "10381:42:5"
|
|
19419
19419
|
},
|
|
19420
19420
|
{
|
|
19421
19421
|
"attributes": {
|
|
@@ -19439,7 +19439,7 @@
|
|
|
19439
19439
|
},
|
|
19440
19440
|
"id": 1024,
|
|
19441
19441
|
"name": "Identifier",
|
|
19442
|
-
"src": "
|
|
19442
|
+
"src": "10427:6:5"
|
|
19443
19443
|
},
|
|
19444
19444
|
{
|
|
19445
19445
|
"attributes": {
|
|
@@ -19453,17 +19453,17 @@
|
|
|
19453
19453
|
},
|
|
19454
19454
|
"id": 1025,
|
|
19455
19455
|
"name": "Identifier",
|
|
19456
|
-
"src": "
|
|
19456
|
+
"src": "10434:8:5"
|
|
19457
19457
|
}
|
|
19458
19458
|
],
|
|
19459
19459
|
"id": 1026,
|
|
19460
19460
|
"name": "IndexAccess",
|
|
19461
|
-
"src": "
|
|
19461
|
+
"src": "10427:16:5"
|
|
19462
19462
|
}
|
|
19463
19463
|
],
|
|
19464
19464
|
"id": 1027,
|
|
19465
19465
|
"name": "BinaryOperation",
|
|
19466
|
-
"src": "
|
|
19466
|
+
"src": "10381:62:5"
|
|
19467
19467
|
},
|
|
19468
19468
|
{
|
|
19469
19469
|
"children": [
|
|
@@ -19490,7 +19490,7 @@
|
|
|
19490
19490
|
},
|
|
19491
19491
|
"id": 1028,
|
|
19492
19492
|
"name": "Identifier",
|
|
19493
|
-
"src": "
|
|
19493
|
+
"src": "10466:7:5"
|
|
19494
19494
|
},
|
|
19495
19495
|
{
|
|
19496
19496
|
"attributes": {
|
|
@@ -19507,42 +19507,42 @@
|
|
|
19507
19507
|
},
|
|
19508
19508
|
"id": 1029,
|
|
19509
19509
|
"name": "Literal",
|
|
19510
|
-
"src": "
|
|
19510
|
+
"src": "10476:4:5"
|
|
19511
19511
|
}
|
|
19512
19512
|
],
|
|
19513
19513
|
"id": 1030,
|
|
19514
19514
|
"name": "Assignment",
|
|
19515
|
-
"src": "
|
|
19515
|
+
"src": "10466:14:5"
|
|
19516
19516
|
}
|
|
19517
19517
|
],
|
|
19518
19518
|
"id": 1031,
|
|
19519
19519
|
"name": "ExpressionStatement",
|
|
19520
|
-
"src": "
|
|
19520
|
+
"src": "10466:14:5"
|
|
19521
19521
|
}
|
|
19522
19522
|
],
|
|
19523
19523
|
"id": 1032,
|
|
19524
19524
|
"name": "IfStatement",
|
|
19525
|
-
"src": "
|
|
19525
|
+
"src": "10378:102:5"
|
|
19526
19526
|
}
|
|
19527
19527
|
],
|
|
19528
19528
|
"id": 1033,
|
|
19529
19529
|
"name": "Block",
|
|
19530
|
-
"src": "
|
|
19530
|
+
"src": "10359:137:5"
|
|
19531
19531
|
}
|
|
19532
19532
|
],
|
|
19533
19533
|
"id": 1034,
|
|
19534
19534
|
"name": "IfStatement",
|
|
19535
|
-
"src": "
|
|
19535
|
+
"src": "10314:182:5"
|
|
19536
19536
|
}
|
|
19537
19537
|
],
|
|
19538
19538
|
"id": 1035,
|
|
19539
19539
|
"name": "Block",
|
|
19540
|
-
"src": "
|
|
19540
|
+
"src": "10299:208:5"
|
|
19541
19541
|
}
|
|
19542
19542
|
],
|
|
19543
19543
|
"id": 1036,
|
|
19544
19544
|
"name": "ForStatement",
|
|
19545
|
-
"src": "
|
|
19545
|
+
"src": "10248:259:5"
|
|
19546
19546
|
},
|
|
19547
19547
|
{
|
|
19548
19548
|
"children": [
|
|
@@ -19558,7 +19558,7 @@
|
|
|
19558
19558
|
},
|
|
19559
19559
|
"id": 1037,
|
|
19560
19560
|
"name": "Identifier",
|
|
19561
|
-
"src": "
|
|
19561
|
+
"src": "10520:7:5"
|
|
19562
19562
|
},
|
|
19563
19563
|
{
|
|
19564
19564
|
"attributes": {
|
|
@@ -19580,12 +19580,12 @@
|
|
|
19580
19580
|
},
|
|
19581
19581
|
"id": 1038,
|
|
19582
19582
|
"name": "Literal",
|
|
19583
|
-
"src": "
|
|
19583
|
+
"src": "10549:4:5"
|
|
19584
19584
|
}
|
|
19585
19585
|
],
|
|
19586
19586
|
"id": 1039,
|
|
19587
19587
|
"name": "Return",
|
|
19588
|
-
"src": "
|
|
19588
|
+
"src": "10542:11:5"
|
|
19589
19589
|
},
|
|
19590
19590
|
{
|
|
19591
19591
|
"attributes": {
|
|
@@ -19607,27 +19607,27 @@
|
|
|
19607
19607
|
},
|
|
19608
19608
|
"id": 1040,
|
|
19609
19609
|
"name": "Literal",
|
|
19610
|
-
"src": "
|
|
19610
|
+
"src": "10589:5:5"
|
|
19611
19611
|
}
|
|
19612
19612
|
],
|
|
19613
19613
|
"id": 1041,
|
|
19614
19614
|
"name": "Return",
|
|
19615
|
-
"src": "
|
|
19615
|
+
"src": "10582:12:5"
|
|
19616
19616
|
}
|
|
19617
19617
|
],
|
|
19618
19618
|
"id": 1042,
|
|
19619
19619
|
"name": "IfStatement",
|
|
19620
|
-
"src": "
|
|
19620
|
+
"src": "10517:77:5"
|
|
19621
19621
|
}
|
|
19622
19622
|
],
|
|
19623
19623
|
"id": 1043,
|
|
19624
19624
|
"name": "Block",
|
|
19625
|
-
"src": "
|
|
19625
|
+
"src": "10155:447:5"
|
|
19626
19626
|
}
|
|
19627
19627
|
],
|
|
19628
19628
|
"id": 1044,
|
|
19629
19629
|
"name": "FunctionDefinition",
|
|
19630
|
-
"src": "
|
|
19630
|
+
"src": "10005:597:5"
|
|
19631
19631
|
},
|
|
19632
19632
|
{
|
|
19633
19633
|
"attributes": {
|
|
@@ -19663,12 +19663,12 @@
|
|
|
19663
19663
|
},
|
|
19664
19664
|
"id": 1045,
|
|
19665
19665
|
"name": "ElementaryTypeName",
|
|
19666
|
-
"src": "
|
|
19666
|
+
"src": "10928:7:5"
|
|
19667
19667
|
}
|
|
19668
19668
|
],
|
|
19669
19669
|
"id": 1046,
|
|
19670
19670
|
"name": "VariableDeclaration",
|
|
19671
|
-
"src": "
|
|
19671
|
+
"src": "10928:16:5"
|
|
19672
19672
|
},
|
|
19673
19673
|
{
|
|
19674
19674
|
"attributes": {
|
|
@@ -19689,12 +19689,12 @@
|
|
|
19689
19689
|
},
|
|
19690
19690
|
"id": 1047,
|
|
19691
19691
|
"name": "ElementaryTypeName",
|
|
19692
|
-
"src": "
|
|
19692
|
+
"src": "10946:6:5"
|
|
19693
19693
|
}
|
|
19694
19694
|
],
|
|
19695
19695
|
"id": 1048,
|
|
19696
19696
|
"name": "VariableDeclaration",
|
|
19697
|
-
"src": "
|
|
19697
|
+
"src": "10946:19:5"
|
|
19698
19698
|
},
|
|
19699
19699
|
{
|
|
19700
19700
|
"attributes": {
|
|
@@ -19715,17 +19715,17 @@
|
|
|
19715
19715
|
},
|
|
19716
19716
|
"id": 1049,
|
|
19717
19717
|
"name": "ElementaryTypeName",
|
|
19718
|
-
"src": "
|
|
19718
|
+
"src": "10967:7:5"
|
|
19719
19719
|
}
|
|
19720
19720
|
],
|
|
19721
19721
|
"id": 1050,
|
|
19722
19722
|
"name": "VariableDeclaration",
|
|
19723
|
-
"src": "
|
|
19723
|
+
"src": "10967:13:5"
|
|
19724
19724
|
}
|
|
19725
19725
|
],
|
|
19726
19726
|
"id": 1051,
|
|
19727
19727
|
"name": "ParameterList",
|
|
19728
|
-
"src": "
|
|
19728
|
+
"src": "10927:54:5"
|
|
19729
19729
|
},
|
|
19730
19730
|
{
|
|
19731
19731
|
"children": [
|
|
@@ -19754,22 +19754,22 @@
|
|
|
19754
19754
|
},
|
|
19755
19755
|
"id": 1056,
|
|
19756
19756
|
"name": "ElementaryTypeName",
|
|
19757
|
-
"src": "
|
|
19757
|
+
"src": "11030:6:5"
|
|
19758
19758
|
}
|
|
19759
19759
|
],
|
|
19760
19760
|
"id": 1057,
|
|
19761
19761
|
"name": "ArrayTypeName",
|
|
19762
|
-
"src": "
|
|
19762
|
+
"src": "11030:8:5"
|
|
19763
19763
|
}
|
|
19764
19764
|
],
|
|
19765
19765
|
"id": 1058,
|
|
19766
19766
|
"name": "VariableDeclaration",
|
|
19767
|
-
"src": "
|
|
19767
|
+
"src": "11030:15:5"
|
|
19768
19768
|
}
|
|
19769
19769
|
],
|
|
19770
19770
|
"id": 1059,
|
|
19771
19771
|
"name": "ParameterList",
|
|
19772
|
-
"src": "
|
|
19772
|
+
"src": "11029:17:5"
|
|
19773
19773
|
},
|
|
19774
19774
|
{
|
|
19775
19775
|
"children": [
|
|
@@ -19785,7 +19785,7 @@
|
|
|
19785
19785
|
},
|
|
19786
19786
|
"id": 1052,
|
|
19787
19787
|
"name": "Identifier",
|
|
19788
|
-
"src": "
|
|
19788
|
+
"src": "10982:10:5"
|
|
19789
19789
|
},
|
|
19790
19790
|
{
|
|
19791
19791
|
"attributes": {
|
|
@@ -19799,7 +19799,7 @@
|
|
|
19799
19799
|
},
|
|
19800
19800
|
"id": 1053,
|
|
19801
19801
|
"name": "Identifier",
|
|
19802
|
-
"src": "
|
|
19802
|
+
"src": "10993:8:5"
|
|
19803
19803
|
},
|
|
19804
19804
|
{
|
|
19805
19805
|
"attributes": {
|
|
@@ -19813,12 +19813,12 @@
|
|
|
19813
19813
|
},
|
|
19814
19814
|
"id": 1054,
|
|
19815
19815
|
"name": "Identifier",
|
|
19816
|
-
"src": "
|
|
19816
|
+
"src": "11003:3:5"
|
|
19817
19817
|
}
|
|
19818
19818
|
],
|
|
19819
19819
|
"id": 1055,
|
|
19820
19820
|
"name": "ModifierInvocation",
|
|
19821
|
-
"src": "
|
|
19821
|
+
"src": "10982:25:5"
|
|
19822
19822
|
},
|
|
19823
19823
|
{
|
|
19824
19824
|
"children": [
|
|
@@ -19850,12 +19850,12 @@
|
|
|
19850
19850
|
},
|
|
19851
19851
|
"id": 1060,
|
|
19852
19852
|
"name": "ElementaryTypeName",
|
|
19853
|
-
"src": "
|
|
19853
|
+
"src": "11061:4:5"
|
|
19854
19854
|
}
|
|
19855
19855
|
],
|
|
19856
19856
|
"id": 1061,
|
|
19857
19857
|
"name": "VariableDeclaration",
|
|
19858
|
-
"src": "
|
|
19858
|
+
"src": "11061:6:5"
|
|
19859
19859
|
},
|
|
19860
19860
|
{
|
|
19861
19861
|
"attributes": {
|
|
@@ -19872,12 +19872,12 @@
|
|
|
19872
19872
|
},
|
|
19873
19873
|
"id": 1062,
|
|
19874
19874
|
"name": "Literal",
|
|
19875
|
-
"src": "
|
|
19875
|
+
"src": "11068:1:5"
|
|
19876
19876
|
}
|
|
19877
19877
|
],
|
|
19878
19878
|
"id": 1063,
|
|
19879
19879
|
"name": "VariableDeclarationStatement",
|
|
19880
|
-
"src": "
|
|
19880
|
+
"src": "11061:8:5"
|
|
19881
19881
|
},
|
|
19882
19882
|
{
|
|
19883
19883
|
"attributes": {
|
|
@@ -19906,7 +19906,7 @@
|
|
|
19906
19906
|
},
|
|
19907
19907
|
"id": 1064,
|
|
19908
19908
|
"name": "Identifier",
|
|
19909
|
-
"src": "
|
|
19909
|
+
"src": "11071:1:5"
|
|
19910
19910
|
},
|
|
19911
19911
|
{
|
|
19912
19912
|
"attributes": {
|
|
@@ -19942,7 +19942,7 @@
|
|
|
19942
19942
|
},
|
|
19943
19943
|
"id": 1065,
|
|
19944
19944
|
"name": "Identifier",
|
|
19945
|
-
"src": "
|
|
19945
|
+
"src": "11073:12:5"
|
|
19946
19946
|
},
|
|
19947
19947
|
{
|
|
19948
19948
|
"attributes": {
|
|
@@ -19956,22 +19956,22 @@
|
|
|
19956
19956
|
},
|
|
19957
19957
|
"id": 1066,
|
|
19958
19958
|
"name": "Identifier",
|
|
19959
|
-
"src": "
|
|
19959
|
+
"src": "11086:8:5"
|
|
19960
19960
|
}
|
|
19961
19961
|
],
|
|
19962
19962
|
"id": 1067,
|
|
19963
19963
|
"name": "IndexAccess",
|
|
19964
|
-
"src": "
|
|
19964
|
+
"src": "11073:22:5"
|
|
19965
19965
|
}
|
|
19966
19966
|
],
|
|
19967
19967
|
"id": 1068,
|
|
19968
19968
|
"name": "MemberAccess",
|
|
19969
|
-
"src": "
|
|
19969
|
+
"src": "11073:29:5"
|
|
19970
19970
|
}
|
|
19971
19971
|
],
|
|
19972
19972
|
"id": 1069,
|
|
19973
19973
|
"name": "BinaryOperation",
|
|
19974
|
-
"src": "
|
|
19974
|
+
"src": "11071:31:5"
|
|
19975
19975
|
},
|
|
19976
19976
|
{
|
|
19977
19977
|
"children": [
|
|
@@ -19999,17 +19999,17 @@
|
|
|
19999
19999
|
},
|
|
20000
20000
|
"id": 1070,
|
|
20001
20001
|
"name": "Identifier",
|
|
20002
|
-
"src": "
|
|
20002
|
+
"src": "11104:1:5"
|
|
20003
20003
|
}
|
|
20004
20004
|
],
|
|
20005
20005
|
"id": 1071,
|
|
20006
20006
|
"name": "UnaryOperation",
|
|
20007
|
-
"src": "
|
|
20007
|
+
"src": "11104:3:5"
|
|
20008
20008
|
}
|
|
20009
20009
|
],
|
|
20010
20010
|
"id": 1072,
|
|
20011
20011
|
"name": "ExpressionStatement",
|
|
20012
|
-
"src": "
|
|
20012
|
+
"src": "11104:3:5"
|
|
20013
20013
|
},
|
|
20014
20014
|
{
|
|
20015
20015
|
"children": [
|
|
@@ -20077,7 +20077,7 @@
|
|
|
20077
20077
|
},
|
|
20078
20078
|
"id": 1073,
|
|
20079
20079
|
"name": "Identifier",
|
|
20080
|
-
"src": "
|
|
20080
|
+
"src": "11126:12:5"
|
|
20081
20081
|
},
|
|
20082
20082
|
{
|
|
20083
20083
|
"attributes": {
|
|
@@ -20091,12 +20091,12 @@
|
|
|
20091
20091
|
},
|
|
20092
20092
|
"id": 1074,
|
|
20093
20093
|
"name": "Identifier",
|
|
20094
|
-
"src": "
|
|
20094
|
+
"src": "11139:8:5"
|
|
20095
20095
|
}
|
|
20096
20096
|
],
|
|
20097
20097
|
"id": 1075,
|
|
20098
20098
|
"name": "IndexAccess",
|
|
20099
|
-
"src": "
|
|
20099
|
+
"src": "11126:22:5"
|
|
20100
20100
|
},
|
|
20101
20101
|
{
|
|
20102
20102
|
"attributes": {
|
|
@@ -20110,17 +20110,17 @@
|
|
|
20110
20110
|
},
|
|
20111
20111
|
"id": 1076,
|
|
20112
20112
|
"name": "Identifier",
|
|
20113
|
-
"src": "
|
|
20113
|
+
"src": "11149:1:5"
|
|
20114
20114
|
}
|
|
20115
20115
|
],
|
|
20116
20116
|
"id": 1077,
|
|
20117
20117
|
"name": "IndexAccess",
|
|
20118
|
-
"src": "
|
|
20118
|
+
"src": "11126:25:5"
|
|
20119
20119
|
}
|
|
20120
20120
|
],
|
|
20121
20121
|
"id": 1078,
|
|
20122
20122
|
"name": "MemberAccess",
|
|
20123
|
-
"src": "
|
|
20123
|
+
"src": "11126:34:5"
|
|
20124
20124
|
},
|
|
20125
20125
|
{
|
|
20126
20126
|
"attributes": {
|
|
@@ -20134,12 +20134,12 @@
|
|
|
20134
20134
|
},
|
|
20135
20135
|
"id": 1079,
|
|
20136
20136
|
"name": "Identifier",
|
|
20137
|
-
"src": "
|
|
20137
|
+
"src": "11162:5:5"
|
|
20138
20138
|
}
|
|
20139
20139
|
],
|
|
20140
20140
|
"id": 1080,
|
|
20141
20141
|
"name": "BinaryOperation",
|
|
20142
|
-
"src": "
|
|
20142
|
+
"src": "11126:41:5"
|
|
20143
20143
|
},
|
|
20144
20144
|
{
|
|
20145
20145
|
"children": [
|
|
@@ -20219,7 +20219,7 @@
|
|
|
20219
20219
|
},
|
|
20220
20220
|
"id": 1081,
|
|
20221
20221
|
"name": "Identifier",
|
|
20222
|
-
"src": "
|
|
20222
|
+
"src": "11190:12:5"
|
|
20223
20223
|
},
|
|
20224
20224
|
{
|
|
20225
20225
|
"attributes": {
|
|
@@ -20233,12 +20233,12 @@
|
|
|
20233
20233
|
},
|
|
20234
20234
|
"id": 1082,
|
|
20235
20235
|
"name": "Identifier",
|
|
20236
|
-
"src": "
|
|
20236
|
+
"src": "11203:8:5"
|
|
20237
20237
|
}
|
|
20238
20238
|
],
|
|
20239
20239
|
"id": 1083,
|
|
20240
20240
|
"name": "IndexAccess",
|
|
20241
|
-
"src": "
|
|
20241
|
+
"src": "11190:22:5"
|
|
20242
20242
|
},
|
|
20243
20243
|
{
|
|
20244
20244
|
"attributes": {
|
|
@@ -20252,22 +20252,22 @@
|
|
|
20252
20252
|
},
|
|
20253
20253
|
"id": 1084,
|
|
20254
20254
|
"name": "Identifier",
|
|
20255
|
-
"src": "
|
|
20255
|
+
"src": "11213:1:5"
|
|
20256
20256
|
}
|
|
20257
20257
|
],
|
|
20258
20258
|
"id": 1085,
|
|
20259
20259
|
"name": "IndexAccess",
|
|
20260
|
-
"src": "
|
|
20260
|
+
"src": "11190:25:5"
|
|
20261
20261
|
}
|
|
20262
20262
|
],
|
|
20263
20263
|
"id": 1086,
|
|
20264
20264
|
"name": "MemberAccess",
|
|
20265
|
-
"src": "
|
|
20265
|
+
"src": "11190:35:5"
|
|
20266
20266
|
}
|
|
20267
20267
|
],
|
|
20268
20268
|
"id": 1087,
|
|
20269
20269
|
"name": "MemberAccess",
|
|
20270
|
-
"src": "
|
|
20270
|
+
"src": "11190:42:5"
|
|
20271
20271
|
},
|
|
20272
20272
|
{
|
|
20273
20273
|
"attributes": {
|
|
@@ -20291,7 +20291,7 @@
|
|
|
20291
20291
|
},
|
|
20292
20292
|
"id": 1088,
|
|
20293
20293
|
"name": "Identifier",
|
|
20294
|
-
"src": "
|
|
20294
|
+
"src": "11236:6:5"
|
|
20295
20295
|
},
|
|
20296
20296
|
{
|
|
20297
20297
|
"attributes": {
|
|
@@ -20305,17 +20305,17 @@
|
|
|
20305
20305
|
},
|
|
20306
20306
|
"id": 1089,
|
|
20307
20307
|
"name": "Identifier",
|
|
20308
|
-
"src": "
|
|
20308
|
+
"src": "11243:8:5"
|
|
20309
20309
|
}
|
|
20310
20310
|
],
|
|
20311
20311
|
"id": 1090,
|
|
20312
20312
|
"name": "IndexAccess",
|
|
20313
|
-
"src": "
|
|
20313
|
+
"src": "11236:16:5"
|
|
20314
20314
|
}
|
|
20315
20315
|
],
|
|
20316
20316
|
"id": 1091,
|
|
20317
20317
|
"name": "BinaryOperation",
|
|
20318
|
-
"src": "
|
|
20318
|
+
"src": "11190:62:5"
|
|
20319
20319
|
},
|
|
20320
20320
|
{
|
|
20321
20321
|
"children": [
|
|
@@ -20351,17 +20351,17 @@
|
|
|
20351
20351
|
},
|
|
20352
20352
|
"id": 1093,
|
|
20353
20353
|
"name": "ElementaryTypeName",
|
|
20354
|
-
"src": "
|
|
20354
|
+
"src": "11276:6:5"
|
|
20355
20355
|
}
|
|
20356
20356
|
],
|
|
20357
20357
|
"id": 1094,
|
|
20358
20358
|
"name": "ArrayTypeName",
|
|
20359
|
-
"src": "
|
|
20359
|
+
"src": "11276:8:5"
|
|
20360
20360
|
}
|
|
20361
20361
|
],
|
|
20362
20362
|
"id": 1095,
|
|
20363
20363
|
"name": "VariableDeclaration",
|
|
20364
|
-
"src": "
|
|
20364
|
+
"src": "11276:25:5"
|
|
20365
20365
|
},
|
|
20366
20366
|
{
|
|
20367
20367
|
"attributes": {
|
|
@@ -20406,17 +20406,17 @@
|
|
|
20406
20406
|
},
|
|
20407
20407
|
"id": 1096,
|
|
20408
20408
|
"name": "ElementaryTypeName",
|
|
20409
|
-
"src": "
|
|
20409
|
+
"src": "11308:6:5"
|
|
20410
20410
|
}
|
|
20411
20411
|
],
|
|
20412
20412
|
"id": 1097,
|
|
20413
20413
|
"name": "ArrayTypeName",
|
|
20414
|
-
"src": "
|
|
20414
|
+
"src": "11308:8:5"
|
|
20415
20415
|
}
|
|
20416
20416
|
],
|
|
20417
20417
|
"id": 1098,
|
|
20418
20418
|
"name": "NewExpression",
|
|
20419
|
-
"src": "
|
|
20419
|
+
"src": "11304:12:5"
|
|
20420
20420
|
},
|
|
20421
20421
|
{
|
|
20422
20422
|
"attributes": {
|
|
@@ -20474,7 +20474,7 @@
|
|
|
20474
20474
|
},
|
|
20475
20475
|
"id": 1099,
|
|
20476
20476
|
"name": "Identifier",
|
|
20477
|
-
"src": "
|
|
20477
|
+
"src": "11317:12:5"
|
|
20478
20478
|
},
|
|
20479
20479
|
{
|
|
20480
20480
|
"attributes": {
|
|
@@ -20488,12 +20488,12 @@
|
|
|
20488
20488
|
},
|
|
20489
20489
|
"id": 1100,
|
|
20490
20490
|
"name": "Identifier",
|
|
20491
|
-
"src": "
|
|
20491
|
+
"src": "11330:8:5"
|
|
20492
20492
|
}
|
|
20493
20493
|
],
|
|
20494
20494
|
"id": 1101,
|
|
20495
20495
|
"name": "IndexAccess",
|
|
20496
|
-
"src": "
|
|
20496
|
+
"src": "11317:22:5"
|
|
20497
20497
|
},
|
|
20498
20498
|
{
|
|
20499
20499
|
"attributes": {
|
|
@@ -20507,32 +20507,32 @@
|
|
|
20507
20507
|
},
|
|
20508
20508
|
"id": 1102,
|
|
20509
20509
|
"name": "Identifier",
|
|
20510
|
-
"src": "
|
|
20510
|
+
"src": "11340:1:5"
|
|
20511
20511
|
}
|
|
20512
20512
|
],
|
|
20513
20513
|
"id": 1103,
|
|
20514
20514
|
"name": "IndexAccess",
|
|
20515
|
-
"src": "
|
|
20515
|
+
"src": "11317:25:5"
|
|
20516
20516
|
}
|
|
20517
20517
|
],
|
|
20518
20518
|
"id": 1104,
|
|
20519
20519
|
"name": "MemberAccess",
|
|
20520
|
-
"src": "
|
|
20520
|
+
"src": "11317:35:5"
|
|
20521
20521
|
}
|
|
20522
20522
|
],
|
|
20523
20523
|
"id": 1105,
|
|
20524
20524
|
"name": "MemberAccess",
|
|
20525
|
-
"src": "
|
|
20525
|
+
"src": "11317:42:5"
|
|
20526
20526
|
}
|
|
20527
20527
|
],
|
|
20528
20528
|
"id": 1106,
|
|
20529
20529
|
"name": "FunctionCall",
|
|
20530
|
-
"src": "
|
|
20530
|
+
"src": "11304:56:5"
|
|
20531
20531
|
}
|
|
20532
20532
|
],
|
|
20533
20533
|
"id": 1107,
|
|
20534
20534
|
"name": "VariableDeclarationStatement",
|
|
20535
|
-
"src": "
|
|
20535
|
+
"src": "11276:84:5"
|
|
20536
20536
|
},
|
|
20537
20537
|
{
|
|
20538
20538
|
"children": [
|
|
@@ -20562,12 +20562,12 @@
|
|
|
20562
20562
|
},
|
|
20563
20563
|
"id": 1108,
|
|
20564
20564
|
"name": "ElementaryTypeName",
|
|
20565
|
-
"src": "
|
|
20565
|
+
"src": "11387:4:5"
|
|
20566
20566
|
}
|
|
20567
20567
|
],
|
|
20568
20568
|
"id": 1109,
|
|
20569
20569
|
"name": "VariableDeclaration",
|
|
20570
|
-
"src": "
|
|
20570
|
+
"src": "11387:6:5"
|
|
20571
20571
|
},
|
|
20572
20572
|
{
|
|
20573
20573
|
"attributes": {
|
|
@@ -20584,12 +20584,12 @@
|
|
|
20584
20584
|
},
|
|
20585
20585
|
"id": 1110,
|
|
20586
20586
|
"name": "Literal",
|
|
20587
|
-
"src": "
|
|
20587
|
+
"src": "11394:1:5"
|
|
20588
20588
|
}
|
|
20589
20589
|
],
|
|
20590
20590
|
"id": 1111,
|
|
20591
20591
|
"name": "VariableDeclarationStatement",
|
|
20592
|
-
"src": "
|
|
20592
|
+
"src": "11387:8:5"
|
|
20593
20593
|
},
|
|
20594
20594
|
{
|
|
20595
20595
|
"attributes": {
|
|
@@ -20618,7 +20618,7 @@
|
|
|
20618
20618
|
},
|
|
20619
20619
|
"id": 1112,
|
|
20620
20620
|
"name": "Identifier",
|
|
20621
|
-
"src": "
|
|
20621
|
+
"src": "11397:1:5"
|
|
20622
20622
|
},
|
|
20623
20623
|
{
|
|
20624
20624
|
"attributes": {
|
|
@@ -20676,7 +20676,7 @@
|
|
|
20676
20676
|
},
|
|
20677
20677
|
"id": 1113,
|
|
20678
20678
|
"name": "Identifier",
|
|
20679
|
-
"src": "
|
|
20679
|
+
"src": "11399:12:5"
|
|
20680
20680
|
},
|
|
20681
20681
|
{
|
|
20682
20682
|
"attributes": {
|
|
@@ -20690,12 +20690,12 @@
|
|
|
20690
20690
|
},
|
|
20691
20691
|
"id": 1114,
|
|
20692
20692
|
"name": "Identifier",
|
|
20693
|
-
"src": "
|
|
20693
|
+
"src": "11412:8:5"
|
|
20694
20694
|
}
|
|
20695
20695
|
],
|
|
20696
20696
|
"id": 1115,
|
|
20697
20697
|
"name": "IndexAccess",
|
|
20698
|
-
"src": "
|
|
20698
|
+
"src": "11399:22:5"
|
|
20699
20699
|
},
|
|
20700
20700
|
{
|
|
20701
20701
|
"attributes": {
|
|
@@ -20709,27 +20709,27 @@
|
|
|
20709
20709
|
},
|
|
20710
20710
|
"id": 1116,
|
|
20711
20711
|
"name": "Identifier",
|
|
20712
|
-
"src": "
|
|
20712
|
+
"src": "11422:1:5"
|
|
20713
20713
|
}
|
|
20714
20714
|
],
|
|
20715
20715
|
"id": 1117,
|
|
20716
20716
|
"name": "IndexAccess",
|
|
20717
|
-
"src": "
|
|
20717
|
+
"src": "11399:25:5"
|
|
20718
20718
|
}
|
|
20719
20719
|
],
|
|
20720
20720
|
"id": 1118,
|
|
20721
20721
|
"name": "MemberAccess",
|
|
20722
|
-
"src": "
|
|
20722
|
+
"src": "11399:35:5"
|
|
20723
20723
|
}
|
|
20724
20724
|
],
|
|
20725
20725
|
"id": 1119,
|
|
20726
20726
|
"name": "MemberAccess",
|
|
20727
|
-
"src": "
|
|
20727
|
+
"src": "11399:42:5"
|
|
20728
20728
|
}
|
|
20729
20729
|
],
|
|
20730
20730
|
"id": 1120,
|
|
20731
20731
|
"name": "BinaryOperation",
|
|
20732
|
-
"src": "
|
|
20732
|
+
"src": "11397:44:5"
|
|
20733
20733
|
},
|
|
20734
20734
|
{
|
|
20735
20735
|
"children": [
|
|
@@ -20757,17 +20757,17 @@
|
|
|
20757
20757
|
},
|
|
20758
20758
|
"id": 1121,
|
|
20759
20759
|
"name": "Identifier",
|
|
20760
|
-
"src": "
|
|
20760
|
+
"src": "11443:1:5"
|
|
20761
20761
|
}
|
|
20762
20762
|
],
|
|
20763
20763
|
"id": 1122,
|
|
20764
20764
|
"name": "UnaryOperation",
|
|
20765
|
-
"src": "
|
|
20765
|
+
"src": "11443:3:5"
|
|
20766
20766
|
}
|
|
20767
20767
|
],
|
|
20768
20768
|
"id": 1123,
|
|
20769
20769
|
"name": "ExpressionStatement",
|
|
20770
|
-
"src": "
|
|
20770
|
+
"src": "11443:3:5"
|
|
20771
20771
|
},
|
|
20772
20772
|
{
|
|
20773
20773
|
"children": [
|
|
@@ -20806,7 +20806,7 @@
|
|
|
20806
20806
|
},
|
|
20807
20807
|
"id": 1124,
|
|
20808
20808
|
"name": "Identifier",
|
|
20809
|
-
"src": "
|
|
20809
|
+
"src": "11474:9:5"
|
|
20810
20810
|
},
|
|
20811
20811
|
{
|
|
20812
20812
|
"attributes": {
|
|
@@ -20820,12 +20820,12 @@
|
|
|
20820
20820
|
},
|
|
20821
20821
|
"id": 1125,
|
|
20822
20822
|
"name": "Identifier",
|
|
20823
|
-
"src": "
|
|
20823
|
+
"src": "11484:1:5"
|
|
20824
20824
|
}
|
|
20825
20825
|
],
|
|
20826
20826
|
"id": 1126,
|
|
20827
20827
|
"name": "IndexAccess",
|
|
20828
|
-
"src": "
|
|
20828
|
+
"src": "11474:12:5"
|
|
20829
20829
|
},
|
|
20830
20830
|
{
|
|
20831
20831
|
"attributes": {
|
|
@@ -20859,7 +20859,7 @@
|
|
|
20859
20859
|
},
|
|
20860
20860
|
"id": 1127,
|
|
20861
20861
|
"name": "Identifier",
|
|
20862
|
-
"src": "
|
|
20862
|
+
"src": "11489:6:5"
|
|
20863
20863
|
},
|
|
20864
20864
|
{
|
|
20865
20865
|
"attributes": {
|
|
@@ -20873,12 +20873,12 @@
|
|
|
20873
20873
|
},
|
|
20874
20874
|
"id": 1128,
|
|
20875
20875
|
"name": "Identifier",
|
|
20876
|
-
"src": "
|
|
20876
|
+
"src": "11496:8:5"
|
|
20877
20877
|
}
|
|
20878
20878
|
],
|
|
20879
20879
|
"id": 1129,
|
|
20880
20880
|
"name": "IndexAccess",
|
|
20881
|
-
"src": "
|
|
20881
|
+
"src": "11489:16:5"
|
|
20882
20882
|
},
|
|
20883
20883
|
{
|
|
20884
20884
|
"attributes": {
|
|
@@ -20934,7 +20934,7 @@
|
|
|
20934
20934
|
},
|
|
20935
20935
|
"id": 1130,
|
|
20936
20936
|
"name": "Identifier",
|
|
20937
|
-
"src": "
|
|
20937
|
+
"src": "11506:12:5"
|
|
20938
20938
|
},
|
|
20939
20939
|
{
|
|
20940
20940
|
"attributes": {
|
|
@@ -20948,12 +20948,12 @@
|
|
|
20948
20948
|
},
|
|
20949
20949
|
"id": 1131,
|
|
20950
20950
|
"name": "Identifier",
|
|
20951
|
-
"src": "
|
|
20951
|
+
"src": "11519:8:5"
|
|
20952
20952
|
}
|
|
20953
20953
|
],
|
|
20954
20954
|
"id": 1132,
|
|
20955
20955
|
"name": "IndexAccess",
|
|
20956
|
-
"src": "
|
|
20956
|
+
"src": "11506:22:5"
|
|
20957
20957
|
},
|
|
20958
20958
|
{
|
|
20959
20959
|
"attributes": {
|
|
@@ -20967,17 +20967,17 @@
|
|
|
20967
20967
|
},
|
|
20968
20968
|
"id": 1133,
|
|
20969
20969
|
"name": "Identifier",
|
|
20970
|
-
"src": "
|
|
20970
|
+
"src": "11529:1:5"
|
|
20971
20971
|
}
|
|
20972
20972
|
],
|
|
20973
20973
|
"id": 1134,
|
|
20974
20974
|
"name": "IndexAccess",
|
|
20975
|
-
"src": "
|
|
20975
|
+
"src": "11506:25:5"
|
|
20976
20976
|
}
|
|
20977
20977
|
],
|
|
20978
20978
|
"id": 1135,
|
|
20979
20979
|
"name": "MemberAccess",
|
|
20980
|
-
"src": "
|
|
20980
|
+
"src": "11506:35:5"
|
|
20981
20981
|
},
|
|
20982
20982
|
{
|
|
20983
20983
|
"attributes": {
|
|
@@ -20991,37 +20991,37 @@
|
|
|
20991
20991
|
},
|
|
20992
20992
|
"id": 1136,
|
|
20993
20993
|
"name": "Identifier",
|
|
20994
|
-
"src": "
|
|
20994
|
+
"src": "11542:1:5"
|
|
20995
20995
|
}
|
|
20996
20996
|
],
|
|
20997
20997
|
"id": 1137,
|
|
20998
20998
|
"name": "IndexAccess",
|
|
20999
|
-
"src": "
|
|
20999
|
+
"src": "11506:38:5"
|
|
21000
21000
|
}
|
|
21001
21001
|
],
|
|
21002
21002
|
"id": 1138,
|
|
21003
21003
|
"name": "IndexAccess",
|
|
21004
|
-
"src": "
|
|
21004
|
+
"src": "11489:56:5"
|
|
21005
21005
|
}
|
|
21006
21006
|
],
|
|
21007
21007
|
"id": 1139,
|
|
21008
21008
|
"name": "Assignment",
|
|
21009
|
-
"src": "
|
|
21009
|
+
"src": "11474:71:5"
|
|
21010
21010
|
}
|
|
21011
21011
|
],
|
|
21012
21012
|
"id": 1140,
|
|
21013
21013
|
"name": "ExpressionStatement",
|
|
21014
|
-
"src": "
|
|
21014
|
+
"src": "11474:71:5"
|
|
21015
21015
|
}
|
|
21016
21016
|
],
|
|
21017
21017
|
"id": 1141,
|
|
21018
21018
|
"name": "Block",
|
|
21019
|
-
"src": "
|
|
21019
|
+
"src": "11447:146:5"
|
|
21020
21020
|
}
|
|
21021
21021
|
],
|
|
21022
21022
|
"id": 1142,
|
|
21023
21023
|
"name": "ForStatement",
|
|
21024
|
-
"src": "
|
|
21024
|
+
"src": "11383:210:5"
|
|
21025
21025
|
},
|
|
21026
21026
|
{
|
|
21027
21027
|
"attributes": {
|
|
@@ -21040,62 +21040,62 @@
|
|
|
21040
21040
|
},
|
|
21041
21041
|
"id": 1143,
|
|
21042
21042
|
"name": "Identifier",
|
|
21043
|
-
"src": "
|
|
21043
|
+
"src": "11679:9:5"
|
|
21044
21044
|
}
|
|
21045
21045
|
],
|
|
21046
21046
|
"id": 1144,
|
|
21047
21047
|
"name": "Return",
|
|
21048
|
-
"src": "
|
|
21048
|
+
"src": "11672:16:5"
|
|
21049
21049
|
}
|
|
21050
21050
|
],
|
|
21051
21051
|
"id": 1145,
|
|
21052
21052
|
"name": "Block",
|
|
21053
|
-
"src": "
|
|
21053
|
+
"src": "11253:455:5"
|
|
21054
21054
|
}
|
|
21055
21055
|
],
|
|
21056
21056
|
"id": 1146,
|
|
21057
21057
|
"name": "IfStatement",
|
|
21058
|
-
"src": "
|
|
21058
|
+
"src": "11187:521:5"
|
|
21059
21059
|
}
|
|
21060
21060
|
],
|
|
21061
21061
|
"id": 1147,
|
|
21062
21062
|
"name": "Block",
|
|
21063
|
-
"src": "
|
|
21063
|
+
"src": "11168:555:5"
|
|
21064
21064
|
}
|
|
21065
21065
|
],
|
|
21066
21066
|
"id": 1148,
|
|
21067
21067
|
"name": "IfStatement",
|
|
21068
|
-
"src": "
|
|
21068
|
+
"src": "11123:600:5"
|
|
21069
21069
|
}
|
|
21070
21070
|
],
|
|
21071
21071
|
"id": 1149,
|
|
21072
21072
|
"name": "Block",
|
|
21073
|
-
"src": "
|
|
21073
|
+
"src": "11108:626:5"
|
|
21074
21074
|
}
|
|
21075
21075
|
],
|
|
21076
21076
|
"id": 1150,
|
|
21077
21077
|
"name": "ForStatement",
|
|
21078
|
-
"src": "
|
|
21078
|
+
"src": "11057:677:5"
|
|
21079
21079
|
}
|
|
21080
21080
|
],
|
|
21081
21081
|
"id": 1151,
|
|
21082
21082
|
"name": "Block",
|
|
21083
|
-
"src": "
|
|
21083
|
+
"src": "11046:695:5"
|
|
21084
21084
|
}
|
|
21085
21085
|
],
|
|
21086
21086
|
"id": 1152,
|
|
21087
21087
|
"name": "FunctionDefinition",
|
|
21088
|
-
"src": "
|
|
21088
|
+
"src": "10909:832:5"
|
|
21089
21089
|
}
|
|
21090
21090
|
],
|
|
21091
21091
|
"id": 1153,
|
|
21092
21092
|
"name": "ContractDefinition",
|
|
21093
|
-
"src": "321:
|
|
21093
|
+
"src": "321:11425:5"
|
|
21094
21094
|
}
|
|
21095
21095
|
],
|
|
21096
21096
|
"id": 1154,
|
|
21097
21097
|
"name": "SourceUnit",
|
|
21098
|
-
"src": "150:
|
|
21098
|
+
"src": "150:11596:5"
|
|
21099
21099
|
},
|
|
21100
21100
|
"compiler": {
|
|
21101
21101
|
"name": "solc",
|
|
@@ -21105,12 +21105,12 @@
|
|
|
21105
21105
|
"84532": {
|
|
21106
21106
|
"events": {},
|
|
21107
21107
|
"links": {},
|
|
21108
|
-
"address": "
|
|
21109
|
-
"transactionHash": "
|
|
21108
|
+
"address": "0x5640812D73f0D3d820832BFb53ed6fC4a9383283",
|
|
21109
|
+
"transactionHash": "0xb3c4a985c4b26f0865e44529536499986381d120e62efaee31813eb437d38b8d"
|
|
21110
21110
|
}
|
|
21111
21111
|
},
|
|
21112
21112
|
"schemaVersion": "3.4.3",
|
|
21113
|
-
"updatedAt": "2024-06-
|
|
21113
|
+
"updatedAt": "2024-06-10T13:26:12.941Z",
|
|
21114
21114
|
"networkType": "ethereum",
|
|
21115
21115
|
"devdoc": {
|
|
21116
21116
|
"methods": {
|