From 2d76b03e828e2eb44357c50a04b82898c7be7c97 Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sat, 8 Feb 2020 21:55:30 +0200 Subject: [PATCH 1/8] add repadmin script --- .gitignore | 1 + package-lock.json | 7 +- package.json | 3 +- scripts/ReputationAdmin.json | 7920 ++++++++++++++++++++++++++++++++++ scripts/beneficiaries.txt | 2550 +++++++++++ scripts/repadmin.js | 70 + 6 files changed, 10549 insertions(+), 2 deletions(-) create mode 100644 scripts/ReputationAdmin.json create mode 100644 scripts/beneficiaries.txt create mode 100644 scripts/repadmin.js diff --git a/.gitignore b/.gitignore index 3c3629e..37d7e73 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ node_modules +.env diff --git a/package-lock.json b/package-lock.json index 280f091..5b1dc33 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1232,6 +1232,11 @@ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=" }, + "dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==" + }, "drbg.js": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", @@ -4894,7 +4899,7 @@ "requires": { "underscore": "1.8.3", "web3-core-helpers": "1.0.0-beta.37", - "websocket": "git://github.com/frozeman/WebSocket-Node.git#browserifyCompatible" + "websocket": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2" } }, "web3-shh": { diff --git a/package.json b/package.json index 909e368..0583052 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ }, "homepage": "https://github.com/daostack/ETHDenver-DAO#readme", "dependencies": { - "@daostack/migration": "0.0.1-rc.40-v1" + "@daostack/migration": "0.0.1-rc.40-v1", + "dotenv": "^8.2.0" } } diff --git a/scripts/ReputationAdmin.json b/scripts/ReputationAdmin.json new file mode 100644 index 0000000..26565f9 --- /dev/null +++ b/scripts/ReputationAdmin.json @@ -0,0 +1,7920 @@ +{ + "contractName": "ReputationAdmin", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "activationEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "activationStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "limitRepReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "repRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_activationStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_activationEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxRepReward", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "reputationMint", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "reputationBurn", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "metadata": "{\"compiler\":{\"version\":\"0.5.13+commit.5b0b510c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[],\"name\":\"activationEndTime\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"activationStartTime\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"avatar\",\"outputs\":[{\"internalType\":\"contract Avatar\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract Avatar\",\"name\":\"_avatar\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_activationStartTime\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_activationEndTime\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_maxRepReward\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"limitRepReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"repRewardLeft\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_beneficiaries\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_amounts\",\"type\":\"uint256[]\"}],\"name\":\"reputationBurn\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_beneficiaries\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_amounts\",\"type\":\"uint256[]\"}],\"name\":\"reputationMint\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{\"initialize(address,uint256,uint256,uint256)\":{\"details\":\"initialize\",\"params\":{\"_activationEndTime\":\"end time for allowing minting\",\"_activationStartTime\":\"start time for allowing minting\",\"_avatar\":\"the avatar to mint reputation from\",\"_maxRepReward\":\"maximum reputation mintable by this scheme\"}},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"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.\"},\"reputationBurn(address[],uint256[])\":{\"details\":\"reputationBurn function\",\"params\":{\"_amounts\":\"the amounts of reputation to burn for beneficiaries\",\"_beneficiaries\":\"the beneficiaries address to burm reputation from\"}},\"reputationMint(address[],uint256[])\":{\"details\":\"reputationBurn function\",\"params\":{\"_amounts\":\"the amounts of reputation to mint for beneficiaries\",\"_beneficiaries\":\"the beneficiaries address to mint reputation from\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"title\":\"A scheme for reputation minting/burning by an authorized account\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/oren/daostack/arc/contracts/schemes/ReputationAdmin.sol\":\"ReputationAdmin\"},\"evmVersion\":\"petersburg\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/oren/daostack/arc/contracts/controller/Avatar.sol\":{\"keccak256\":\"0xdc75e96aca5c6aeaa3bbf97d2a3a1d305c1c168b74f1d5a6b151648e1b71086f\",\"urls\":[\"bzz-raw://425e5a7e0d27fe14af052e826a1757135afc30cf6941986dcd2c336e34c5d24c\",\"dweb:/ipfs/QmR9Jn4ZNx8LNyzSRWhdNh7rG8pccSHLX3iqdSk26VYw3R\"]},\"/Users/oren/daostack/arc/contracts/controller/Controller.sol\":{\"keccak256\":\"0x88fe5ca7618e1ed502a9665e53bfab5260282a9a7b561361ee8067af59a58f5a\",\"urls\":[\"bzz-raw://911676f75c5f83d54a7c892bb8dd39daa7b199c358536e7347ca150e815759bc\",\"dweb:/ipfs/QmT8TtonKcEgjrok8b3zUkGZQL6FEZCXFdkYMc5jV61bD6\"]},\"/Users/oren/daostack/arc/contracts/controller/DAOToken.sol\":{\"keccak256\":\"0x567235b3ec3884704725a775559a2c60b46c56d144072929035dbadeeb65e884\",\"urls\":[\"bzz-raw://8944f3ffa3f1fbc1aa6bfddf5f055a15bec79f51dcca655d5a8698aa9dfd38d4\",\"dweb:/ipfs/QmUZWJVgaXkMVMGiXAHkiETCHGptt6wCRLUiaGrzxk7Lv4\"]},\"/Users/oren/daostack/arc/contracts/globalConstraints/GlobalConstraintInterface.sol\":{\"keccak256\":\"0x83fb7666df1270aa8d857a631172b555dcf4f24fabba9a2a241d2b1ca2e574ef\",\"urls\":[\"bzz-raw://2499d07b8ba63936601c61884415a5f6848f1883e452efb608ccb181d98125e8\",\"dweb:/ipfs/QmeZCTMZ6KwJX1HLRZMMTZugskPDR6dvaNGEknEyyBePxt\"]},\"/Users/oren/daostack/arc/contracts/libs/SafeERC20.sol\":{\"keccak256\":\"0x1e91e541a9e835c05372a53eb7879e05bc47f6355602d6d3bf4bbdd8f660fc95\",\"urls\":[\"bzz-raw://ba9d1c3e68e38adc57e3097d191e7328816839ca918aff208338fb447b0792d8\",\"dweb:/ipfs/QmWisfDaqBSoYjg2U93VsZL43Lba4Ko7mbe6YS2wZpgvDR\"]},\"/Users/oren/daostack/arc/contracts/schemes/ReputationAdmin.sol\":{\"keccak256\":\"0x63c9d357dc9034cf4c1c22325bbfe743ba71bee83c4918b48a3be67b03142e92\",\"urls\":[\"bzz-raw://fd49aa2ad761c38870d994e88e057bb251de2f909b19b1689b49e048bc52cd88\",\"dweb:/ipfs/QmPVBLRjc8vMhH85bjc9vHYnjjLtUVeR1TzcMJ6AS8Ek9r\"]},\"@daostack/infra/contracts/Reputation.sol\":{\"keccak256\":\"0xec21bc058552cae458e68fa91aad7219d11be2bc9710183696d828065f03d6ea\",\"urls\":[\"bzz-raw://a3262e0088c924072428cfe69d78c06e93cec3caeee410af8ab36eee2c8f8d66\",\"dweb:/ipfs/QmNhcQd2pxWXYJrMz8kVsZUfFVYUSgKjZCUcFseyBSjZiq\"]},\"openzeppelin-solidity/contracts/GSN/Context.sol\":{\"keccak256\":\"0x90a3995645af7562d84b9d69363ffa5ae7217714ab61e951bf7bc450f40e4061\",\"urls\":[\"bzz-raw://216ef9d6b614db4eb46970b4e84903f2534a45572dd30a79f0041f1a5830f436\",\"dweb:/ipfs/QmNPrJ4MWKUAWzKXpUqeyKRUfosaoANZAqXgvepdrCwZAG\"]},\"openzeppelin-solidity/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x640b6dee7a4b830bdfd52b5031a07fc2b12209f5b2e29e5d364a7d37f69d8076\",\"urls\":[\"bzz-raw://31113152e1ddb78fe7a4197f247591ca894e93f916867beb708d8e747b6cc74f\",\"dweb:/ipfs/QmbZaJyXdpsYGykVhHH9qpVGQg9DGCxE2QufbCUy3daTgq\"]},\"openzeppelin-solidity/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xecd8ab29d9a5771c3964d0cd1788c4a5098a0081b20fb275da850a22b1c59806\",\"urls\":[\"bzz-raw://696a75bc2c55407ce8251ccc7d19ecb1b7b2be1796a160a6524312babcc7e3d4\",\"dweb:/ipfs/QmQViKEp3y99h9uhRssE29TmjBKRnFMaoz3eJZ4eggggg2\"]},\"openzeppelin-solidity/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0x65a4078c03875c25413a068ce9cfdd7e68a90f8786612d1189c89341e6e3b802\",\"urls\":[\"bzz-raw://45c0d95495b944fbb1aa09d900b0ab530903a432125ab8fddfa05064a7988991\",\"dweb:/ipfs/Qma2VeknkKA1THeubGzshWFk44BktXkXP1UKp9Un2uDSsu\"]},\"openzeppelin-solidity/contracts/token/ERC20/ERC20Burnable.sol\":{\"keccak256\":\"0x9b94356691f3cbf90a5d83ae3fdf6a5a662bb004d2bd8b034160d60221807e64\",\"urls\":[\"bzz-raw://14a9d33db455302b8bb9fdb28998efefbe5a1cb41b29e31391609f646b2ab351\",\"dweb:/ipfs/Qmd4wFr6GEMZnnxgXeq3gmp7cs8tqDuHp3TVNhCbjnux2V\"]},\"openzeppelin-solidity/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe5bb0f57cff3e299f360052ba50f1ea0fff046df2be070b6943e0e3c3fdad8a9\",\"urls\":[\"bzz-raw://59fd025151435da35faa8093a5c7a17de02de9d08ad27275c5cdf05050820d91\",\"dweb:/ipfs/QmQMvwEcPhoRXzbXyrdoeRtvLoifUW9Qh7Luho7bmUPRkc\"]},\"openzeppelin-solidity/contracts/utils/Address.sol\":{\"keccak256\":\"0x70df50e240407aa50915ad14f61b1a901fa335b37de20955b99ed647be756af0\",\"urls\":[\"bzz-raw://9404711f3206610c08ea97fa52c7b6b4d2e9d536e96fc4b7210aa7e24f796c36\",\"dweb:/ipfs/QmZDzpVzjoap13SuPEq5pVCrmdjoKVZnTsQPLKXAbynTTW\"]}},\"version\":1}", + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610eae806100756000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80638da5cb5b116100715780638da5cb5b146101ff5780638f32d59b14610207578063c0b7a42d14610223578063cc5cd2e7146102e1578063e843cc18146102e9578063f2fde38b146102f1576100b4565b80630f3ce408146100b95780634271f6d3146101795780634ec81af1146101935780635aef7de6146101cb5780636f15e1e0146101ef578063715018a6146101f7575b600080fd5b610177600480360360408110156100cf57600080fd5b810190602081018135600160201b8111156100e957600080fd5b8201836020820111156100fb57600080fd5b803590602001918460208302840111600160201b8311171561011c57600080fd5b919390929091602081019035600160201b81111561013957600080fd5b82018360208201111561014b57600080fd5b803590602001918460208302840111600160201b8311171561016c57600080fd5b509092509050610317565b005b6101816103fc565b60408051918252519081900360200190f35b610177600480360360808110156101a957600080fd5b506001600160a01b038135169060208101359060408101359060600135610402565b6101d361056c565b604080516001600160a01b039092168252519081900360200190f35b61018161057b565b610177610581565b6101d3610612565b61020f610621565b604080519115158252519081900360200190f35b6101776004803603604081101561023957600080fd5b810190602081018135600160201b81111561025357600080fd5b82018360208201111561026557600080fd5b803590602001918460208302840111600160201b8311171561028657600080fd5b919390929091602081019035600160201b8111156102a357600080fd5b8201836020820111156102b557600080fd5b803590602001918460208302840111600160201b831117156102d657600080fd5b509092509050610645565b610181610723565b610181610729565b6101776004803603602081101561030757600080fd5b50356001600160a01b031661072f565b61031f610621565b61035e576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146103ab576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f5576103ed8585838181106103c557fe5b905060200201356001600160a01b03168484848181106103e157fe5b90506020020135610782565b6001016103ae565b5050505050565b60045481565b61040a610621565b610449576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b6001546001600160a01b0316156104a7576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0384166104fa576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8183106105385760405162461bcd60e51b8152600401808060200182810382526029815260200180610e316029913960400191505060405180910390fd5b600180546001600160a01b0319166001600160a01b0395909516949094179093556002919091556003556004819055600555565b6001546001600160a01b031681565b60055481565b610589610621565b6105c8576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b0316610636610989565b6001600160a01b031614905090565b61064d610621565b61068c576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146106d9576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f55761071b8585838181106106f357fe5b905060200201356001600160a01b031684848481811061070f57fe5b9050602002013561098d565b6001016106dc565b60035481565b60025481565b610737610621565b610776576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b61077f81610c0f565b50565b6002544210156107d9576040805162461bcd60e51b815260206004820181905260248201527f4d696e74696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610827576040805162461bcd60e51b815260206004820152601560248201527426b4b73a34b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b6005541561084657600454610842908263ffffffff610caf16565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561089457600080fd5b505afa1580156108a8573d6000803e3d6000fd5b505050506040513d60208110156108be57600080fd5b50516001546040805163757cca5960e11b8152600481018590526001600160a01b03868116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561091e57600080fd5b505af1158015610932573d6000803e3d6000fd5b505050506040513d602081101561094857600080fd5b50516109855760405162461bcd60e51b8152600401808060200182810382526021815260200180610e106021913960400191505060405180910390fd5b5050565b3390565b6002544210156109e4576040805162461bcd60e51b815260206004820181905260248201527f4275726e696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610a32576040805162461bcd60e51b8152602060048201526015602482015274213ab93734b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b60055415610aba57600454600554610a4f9163ffffffff610caf16565b811115610aa3576040805162461bcd60e51b815260206004820152601c60248201527f43616e6e6f74206275726e206d6f7265207468616e206d696e74656400000000604482015290519081900360640190fd5b600454610ab6908263ffffffff610cf816565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0857600080fd5b505afa158015610b1c573d6000803e3d6000fd5b505050506040513d6020811015610b3257600080fd5b505160015460408051630dd29a4f60e31b8152600481018590526001600160a01b038681166024830152928316604482015290519190921691636e94d2789160648083019260209291908290030181600087803b158015610b9257600080fd5b505af1158015610ba6573d6000803e3d6000fd5b505050506040513d6020811015610bbc57600080fd5b5051610985576040805162461bcd60e51b815260206004820152601e60248201527f4275726e2072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6001600160a01b038116610c545760405162461bcd60e51b8152600401808060200182810382526026815260200180610dea6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610cf183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d52565b9392505050565b600082820183811015610cf1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610de15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610da6578181015183820152602001610d8e565b50505050905090810190601f168015610dd35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734d696e74696e672072657075746174696f6e2073686f756c6420737563636565645f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820dd2f8d3b8c95e0f0539c7002276f9575f68b1ed30430d6781a1fcffa5396058564736f6c634300050d0032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80638da5cb5b116100715780638da5cb5b146101ff5780638f32d59b14610207578063c0b7a42d14610223578063cc5cd2e7146102e1578063e843cc18146102e9578063f2fde38b146102f1576100b4565b80630f3ce408146100b95780634271f6d3146101795780634ec81af1146101935780635aef7de6146101cb5780636f15e1e0146101ef578063715018a6146101f7575b600080fd5b610177600480360360408110156100cf57600080fd5b810190602081018135600160201b8111156100e957600080fd5b8201836020820111156100fb57600080fd5b803590602001918460208302840111600160201b8311171561011c57600080fd5b919390929091602081019035600160201b81111561013957600080fd5b82018360208201111561014b57600080fd5b803590602001918460208302840111600160201b8311171561016c57600080fd5b509092509050610317565b005b6101816103fc565b60408051918252519081900360200190f35b610177600480360360808110156101a957600080fd5b506001600160a01b038135169060208101359060408101359060600135610402565b6101d361056c565b604080516001600160a01b039092168252519081900360200190f35b61018161057b565b610177610581565b6101d3610612565b61020f610621565b604080519115158252519081900360200190f35b6101776004803603604081101561023957600080fd5b810190602081018135600160201b81111561025357600080fd5b82018360208201111561026557600080fd5b803590602001918460208302840111600160201b8311171561028657600080fd5b919390929091602081019035600160201b8111156102a357600080fd5b8201836020820111156102b557600080fd5b803590602001918460208302840111600160201b831117156102d657600080fd5b509092509050610645565b610181610723565b610181610729565b6101776004803603602081101561030757600080fd5b50356001600160a01b031661072f565b61031f610621565b61035e576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146103ab576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f5576103ed8585838181106103c557fe5b905060200201356001600160a01b03168484848181106103e157fe5b90506020020135610782565b6001016103ae565b5050505050565b60045481565b61040a610621565b610449576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b6001546001600160a01b0316156104a7576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0384166104fa576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8183106105385760405162461bcd60e51b8152600401808060200182810382526029815260200180610e316029913960400191505060405180910390fd5b600180546001600160a01b0319166001600160a01b0395909516949094179093556002919091556003556004819055600555565b6001546001600160a01b031681565b60055481565b610589610621565b6105c8576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b0316610636610989565b6001600160a01b031614905090565b61064d610621565b61068c576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146106d9576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f55761071b8585838181106106f357fe5b905060200201356001600160a01b031684848481811061070f57fe5b9050602002013561098d565b6001016106dc565b60035481565b60025481565b610737610621565b610776576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b61077f81610c0f565b50565b6002544210156107d9576040805162461bcd60e51b815260206004820181905260248201527f4d696e74696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610827576040805162461bcd60e51b815260206004820152601560248201527426b4b73a34b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b6005541561084657600454610842908263ffffffff610caf16565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561089457600080fd5b505afa1580156108a8573d6000803e3d6000fd5b505050506040513d60208110156108be57600080fd5b50516001546040805163757cca5960e11b8152600481018590526001600160a01b03868116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561091e57600080fd5b505af1158015610932573d6000803e3d6000fd5b505050506040513d602081101561094857600080fd5b50516109855760405162461bcd60e51b8152600401808060200182810382526021815260200180610e106021913960400191505060405180910390fd5b5050565b3390565b6002544210156109e4576040805162461bcd60e51b815260206004820181905260248201527f4275726e696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610a32576040805162461bcd60e51b8152602060048201526015602482015274213ab93734b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b60055415610aba57600454600554610a4f9163ffffffff610caf16565b811115610aa3576040805162461bcd60e51b815260206004820152601c60248201527f43616e6e6f74206275726e206d6f7265207468616e206d696e74656400000000604482015290519081900360640190fd5b600454610ab6908263ffffffff610cf816565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0857600080fd5b505afa158015610b1c573d6000803e3d6000fd5b505050506040513d6020811015610b3257600080fd5b505160015460408051630dd29a4f60e31b8152600481018590526001600160a01b038681166024830152928316604482015290519190921691636e94d2789160648083019260209291908290030181600087803b158015610b9257600080fd5b505af1158015610ba6573d6000803e3d6000fd5b505050506040513d6020811015610bbc57600080fd5b5051610985576040805162461bcd60e51b815260206004820152601e60248201527f4275726e2072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6001600160a01b038116610c545760405162461bcd60e51b8152600401808060200182810382526026815260200180610dea6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610cf183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d52565b9392505050565b600082820183811015610cf1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610de15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610da6578181015183820152602001610d8e565b50505050905090810190601f168015610dd35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734d696e74696e672072657075746174696f6e2073686f756c6420737563636565645f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820dd2f8d3b8c95e0f0539c7002276f9575f68b1ed30430d6781a1fcffa5396058564736f6c634300050d0032", + "sourceMap": "273:3983:21:-;;;707:12:67;-1:-1:-1;;;;;707:10:67;:12;:::i;:::-;698:6;:21;;-1:-1:-1;;;;;;698:21:67;-1:-1:-1;;;;;698:21:67;;;;;;;734:40;;767:6;;;734:40;;698:6;;734:40;273:3983:21;;788:96:63;867:10;788:96;:::o;273:3983:21:-;;;;;;;", + "deployedSourceMap": "273:3983:21:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;273:3983:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1655:330;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1655:330:21;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;1655:330:21;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1655:330:21;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;1655:330:21;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;1655:330:21;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1655:330:21;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;1655:330:21;;-1:-1:-1;1655:330:21;-1:-1:-1;1655:330:21;:::i;:::-;;452:28;;;:::i;:::-;;;;;;;;;;;;;;;;819:624;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;819:624:21;;;;;;;;;;;;;;;;;;:::i;348:20::-;;;:::i;:::-;;;;-1:-1:-1;;;;;348:20:21;;;;;;;;;;;;;;486:29;;;:::i;1642:137:67:-;;;:::i;857:77::-;;;:::i;1208:92::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;2197:330:21;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2197:330:21;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;2197:330:21;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2197:330:21;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;2197:330:21;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;2197:330:21;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2197:330:21;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;2197:330:21;;-1:-1:-1;2197:330:21;-1:-1:-1;2197:330:21;:::i;414:32::-;;;:::i;374:34::-;;;:::i;1928:107:67:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1928:107:67;-1:-1:-1;;;;;1928:107:67;;:::i;1655:330:21:-;1061:9:67;:7;:9::i;:::-;1053:54;;;;;-1:-1:-1;;;1053:54:67;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1053:54:67;;;;;;;;;;;;;;;1780:40:21;;;1772:75;;;;;-1:-1:-1;;;1772:75:21;;;;;;;;;;;;-1:-1:-1;;;1772:75:21;;;;;;;;;;;;;;;1862:9;1857:122;1875:25;;;1857:122;;;1921:47;1937:14;;1952:1;1937:17;;;;;;;;;;;;;-1:-1:-1;;;;;1937:17:21;1956:8;;1965:1;1956:11;;;;;;;;;;;;;1921:15;:47::i;:::-;1902:3;;1857:122;;;;1655:330;;;;:::o;452:28::-;;;;:::o;819:624::-;1061:9:67;:7;:9::i;:::-;1053:54;;;;;-1:-1:-1;;;1053:54:67;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1053:54:67;;;;;;;;;;;;;;;1011:6:21;;-1:-1:-1;;;;;1011:6:21;:19;1003:59;;;;;-1:-1:-1;;;1003:59:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1080:20:21;;1072:54;;;;;-1:-1:-1;;;1072:54:21;;;;;;;;;;;;-1:-1:-1;;;1072:54:21;;;;;;;;;;;;;;;1167:18;1144:20;:41;1136:95;;;;-1:-1:-1;;;1136:95:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1241:6;:16;;-1:-1:-1;;;;;;1241:16:21;-1:-1:-1;;;;;1241:16:21;;;;;;;;;;;1267:19;:42;;;;1319:17;:38;1367:13;:29;;;1406:14;:30;819:624::o;348:20::-;;;-1:-1:-1;;;;;348:20:21;;:::o;486:29::-;;;;:::o;1642:137:67:-;1061:9;:7;:9::i;:::-;1053:54;;;;;-1:-1:-1;;;1053:54:67;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1053:54:67;;;;;;;;;;;;;;;1740:1;1724:6;;1703:40;;-1:-1:-1;;;;;1724:6:67;;;;1703:40;;1740:1;;1703:40;1770:1;1753:19;;-1:-1:-1;;;;;;1753:19:67;;;1642:137::o;857:77::-;895:7;921:6;-1:-1:-1;;;;;921:6:67;857:77;:::o;1208:92::-;1248:4;1287:6;;-1:-1:-1;;;;;1287:6:67;1271:12;:10;:12::i;:::-;-1:-1:-1;;;;;1271:22:67;;1264:29;;1208:92;:::o;2197:330:21:-;1061:9:67;:7;:9::i;:::-;1053:54;;;;;-1:-1:-1;;;1053:54:67;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1053:54:67;;;;;;;;;;;;;;;2322:40:21;;;2314:75;;;;;-1:-1:-1;;;2314:75:21;;;;;;;;;;;;-1:-1:-1;;;2314:75:21;;;;;;;;;;;;;;;2404:9;2399:122;2417:25;;;2399:122;;;2463:47;2479:14;;2494:1;2479:17;;;;;;;;;;;;;-1:-1:-1;;;;;2479:17:21;2498:8;;2507:1;2498:11;;;;;;;;;;;;;2463:15;:47::i;:::-;2444:3;;2399:122;;414:32;;;;:::o;374:34::-;;;;:::o;1928:107:67:-;1061:9;:7;:9::i;:::-;1053:54;;;;;-1:-1:-1;;;1053:54:67;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1053:54:67;;;;;;;;;;;;;;;2000:28;2019:8;2000:18;:28::i;:::-;1928:107;:::o;2735:608:21:-;2886:19;;2879:3;:26;;2871:71;;;;;-1:-1:-1;;;2871:71:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3020:17;;3014:3;:23;3006:57;;;;;-1:-1:-1;;;3006:57:21;;;;;;;;;;;;-1:-1:-1;;;3006:57:21;;;;;;;;;;;;;;;3078:14;;:18;3074:91;;3128:13;;:26;;3146:7;3128:26;:17;:26;:::i;:::-;3112:13;:42;3074:91;3207:6;;;;;;;;;-1:-1:-1;;;;;3207:6:21;-1:-1:-1;;;;;3207:12:21;;:14;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3207:14:21;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3207:14:21;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3207:14:21;3269:6;;3196:81;;;-1:-1:-1;;;3196:81:21;;;;;;;;-1:-1:-1;;;;;3196:81:21;;;;;;;3269:6;;;3196:81;;;;;;:41;;;;;;;:81;;;;;3207:14;;3196:81;;;;;;;3269:6;3196:41;:81;;;5:2:-1;;;;30:1;27;20:12;5:2;3196:81:21;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3196:81:21;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3196:81:21;3175:161;;;;-1:-1:-1;;;3175:161:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2735:608;;:::o;788:96:63:-;867:10;788:96;:::o;3550:704:21:-;3701:19;;3694:3;:26;;3686:71;;;;;-1:-1:-1;;;3686:71:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3835:17;;3829:3;:23;3821:57;;;;;-1:-1:-1;;;3821:57:21;;;;;;;;;;;;-1:-1:-1;;;3821:57:21;;;;;;;;;;;;;;;3893:14;;:18;3889:190;;3965:13;;3946:14;;:33;;;:18;:33;:::i;:::-;3935:7;:44;;3927:85;;;;;-1:-1:-1;;;3927:85:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;4042:13;;:26;;4060:7;4042:26;:17;:26;:::i;:::-;4026:13;:42;3889:190;4121:6;;;;;;;;;-1:-1:-1;;;;;4121:6:21;-1:-1:-1;;;;;4121:12:21;;:14;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4121:14:21;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4121:14:21;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4121:14:21;4183:6;;4110:81;;;-1:-1:-1;;;4110:81:21;;;;;;;;-1:-1:-1;;;;;4110:81:21;;;;;;;4183:6;;;4110:81;;;;;;:41;;;;;;;:81;;;;;4121:14;;4110:81;;;;;;;4183:6;4110:41;:81;;;5:2:-1;;;;30:1;27;20:12;5:2;4110:81:21;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4110:81:21;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4110:81:21;4089:158;;;;;-1:-1:-1;;;4089:158:21;;;;;;;;;;;;;;;;;;;;;;;;;;;2136:225:67;-1:-1:-1;;;;;2209:22:67;;2201:73;;;;-1:-1:-1;;;2201:73:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2310:6;;;2289:38;;-1:-1:-1;;;;;2289:38:67;;;;2310:6;;;2289:38;;;2337:6;:17;;-1:-1:-1;;;;;;2337:17:67;-1:-1:-1;;;;;2337:17:67;;;;;;;;;;2136:225::o;1274:134:66:-;1332:7;1358:43;1362:1;1365;1358:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1351:50;1274:134;-1:-1:-1;;;1274:134:66:o;834:176::-;892:7;923:5;;;946:6;;;;938:46;;;;;-1:-1:-1;;;938:46:66;;;;;;;;;;;;;;;;;;;;;;;;;;;1732:187;1818:7;1853:12;1845:6;;;;1837:29;;;;-1:-1:-1;;;1837:29:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;1837:29:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1888:5:66;;;1732:187::o", + "source": "pragma solidity 0.5.13;\n\nimport \"openzeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"openzeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"../controller/Controller.sol\";\n\n/**\n * @title A scheme for reputation minting/burning by an authorized account\n */\n\ncontract ReputationAdmin is Ownable {\n using SafeMath for uint256;\n\n Avatar public avatar;\n uint256 public activationStartTime;\n uint256 public activationEndTime;\n uint256 public repRewardLeft;\n uint256 public limitRepReward;\n\n /**\n * @dev initialize\n * @param _avatar the avatar to mint reputation from\n * @param _activationStartTime start time for allowing minting\n * @param _activationEndTime end time for allowing minting\n * @param _maxRepReward maximum reputation mintable by this scheme\n */\n function initialize(\n Avatar _avatar,\n uint256 _activationStartTime,\n uint256 _activationEndTime,\n uint256 _maxRepReward\n ) external onlyOwner {\n require(avatar == Avatar(0), \"can be called only one time\");\n require(_avatar != Avatar(0), \"avatar cannot be zero\");\n require(_activationStartTime < _activationEndTime, \"_activationStartTime < _activationEndTime\");\n avatar = _avatar;\n activationStartTime = _activationStartTime;\n activationEndTime = _activationEndTime;\n repRewardLeft = _maxRepReward;\n limitRepReward = _maxRepReward;\n }\n\n /**\n * @dev reputationBurn function\n * @param _beneficiaries the beneficiaries address to mint reputation from\n * @param _amounts the amounts of reputation to mint for beneficiaries\n */\n function reputationMint(address[] calldata _beneficiaries, uint256[] calldata _amounts) external onlyOwner {\n require(_beneficiaries.length == _amounts.length, \"Arrays length mismatch\");\n for (uint256 i=0; i < _beneficiaries.length; i++) {\n _reputationMint(_beneficiaries[i], _amounts[i]);\n }\n }\n\n /**\n * @dev reputationBurn function\n * @param _beneficiaries the beneficiaries address to burm reputation from\n * @param _amounts the amounts of reputation to burn for beneficiaries\n */\n function reputationBurn(address[] calldata _beneficiaries, uint256[] calldata _amounts) external onlyOwner {\n require(_beneficiaries.length == _amounts.length, \"Arrays length mismatch\");\n for (uint256 i=0; i < _beneficiaries.length; i++) {\n _reputationBurn(_beneficiaries[i], _amounts[i]);\n }\n }\n\n /**\n * @dev reputationMint function\n * @param _beneficiary the beneficiary address to mint reputation for\n * @param _amount the amount of reputation to mint the the beneficirary\n */\n function _reputationMint(address _beneficiary, uint256 _amount) private {\n // solhint-disable-next-line not-rely-on-time\n require(now >= activationStartTime, \"Minting period did not start yet\");\n // solhint-disable-next-line not-rely-on-time\n require(now < activationEndTime, \"Minting period ended.\");\n\n if (limitRepReward > 0) {\n repRewardLeft = repRewardLeft.sub(_amount);\n }\n\n require(\n Controller(avatar.owner()).mintReputation(_amount, _beneficiary, address(avatar)),\n \"Minting reputation should succeed\"\n );\n }\n\n /**\n * @dev reputationBurn function\n * @param _beneficiary the beneficiary address to burm reputation from\n * @param _amount the amount of reputation to burn for a beneficirary\n */\n function _reputationBurn(address _beneficiary, uint256 _amount) private {\n // solhint-disable-next-line not-rely-on-time\n require(now >= activationStartTime, \"Burning period did not start yet\");\n // solhint-disable-next-line not-rely-on-time\n require(now < activationEndTime, \"Burning period ended.\");\n\n if (limitRepReward > 0) {\n require(_amount <= limitRepReward.sub(repRewardLeft), \"Cannot burn more than minted\");\n repRewardLeft = repRewardLeft.add(_amount);\n }\n\n require(\n Controller(avatar.owner()).burnReputation(_amount, _beneficiary, address(avatar)),\n \"Burn reputation should succeed\"\n );\n }\n}\n", + "sourcePath": "/Users/oren/daostack/arc/contracts/schemes/ReputationAdmin.sol", + "ast": { + "absolutePath": "/Users/oren/daostack/arc/contracts/schemes/ReputationAdmin.sol", + "exportedSymbols": { + "ReputationAdmin": [ + 8136 + ] + }, + "id": 8137, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7862, + "literals": [ + "solidity", + "0.5", + ".13" + ], + "nodeType": "PragmaDirective", + "src": "0:23:21" + }, + { + "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 7863, + "nodeType": "ImportDirective", + "scope": 8137, + "sourceUnit": 20510, + "src": "25:63:21", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "openzeppelin-solidity/contracts/math/SafeMath.sol", + "file": "openzeppelin-solidity/contracts/math/SafeMath.sol", + "id": 7864, + "nodeType": "ImportDirective", + "scope": 8137, + "sourceUnit": 20396, + "src": "89:59:21", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/Users/oren/daostack/arc/contracts/controller/Controller.sol", + "file": "../controller/Controller.sol", + "id": 7865, + "nodeType": "ImportDirective", + "scope": 8137, + "sourceUnit": 1798, + "src": "149:38:21", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 7866, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 20509, + "src": "301:7:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$20509", + "typeString": "contract Ownable" + } + }, + "id": 7867, + "nodeType": "InheritanceSpecifier", + "src": "301:7:21" + } + ], + "contractDependencies": [ + 20058, + 20509 + ], + "contractKind": "contract", + "documentation": "@title A scheme for reputation minting/burning by an authorized account", + "fullyImplemented": true, + "id": 8136, + "linearizedBaseContracts": [ + 8136, + 20509, + 20058 + ], + "name": "ReputationAdmin", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 7870, + "libraryName": { + "contractScope": null, + "id": 7868, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 20395, + "src": "321:8:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$20395", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "315:27:21", + "typeName": { + "id": 7869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "334:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 7872, + "name": "avatar", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "348:20:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "typeName": { + "contractScope": null, + "id": 7871, + "name": "Avatar", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 337, + "src": "348:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7874, + "name": "activationStartTime", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "374:34:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "374:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7876, + "name": "activationEndTime", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "414:32:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7875, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "414:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7878, + "name": "repRewardLeft", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "452:28:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7877, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "452:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7880, + "name": "limitRepReward", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "486:29:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7879, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "486:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 7938, + "nodeType": "Block", + "src": "993:450:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "id": 7898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7894, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "1011:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 7896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1028:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 7895, + "name": "Avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 337, + "src": "1021:6:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Avatar_$337_$", + "typeString": "type(contract Avatar)" + } + }, + "id": 7897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1021:9:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "src": "1011:19:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "63616e2062652063616c6c6564206f6e6c79206f6e652074696d65", + "id": 7899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1032:29:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_61459d8c2e83c03ac4ccaf4013950b2282c585e1eb42ab84ceae1eecfe85edd8", + "typeString": "literal_string \"can be called only one time\"" + }, + "value": "can be called only one time" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_61459d8c2e83c03ac4ccaf4013950b2282c585e1eb42ab84ceae1eecfe85edd8", + "typeString": "literal_string \"can be called only one time\"" + } + ], + "id": 7893, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1003:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1003:59:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7901, + "nodeType": "ExpressionStatement", + "src": "1003:59:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "id": 7907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7903, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7882, + "src": "1080:7:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 7905, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1098:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 7904, + "name": "Avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 337, + "src": "1091:6:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Avatar_$337_$", + "typeString": "type(contract Avatar)" + } + }, + "id": 7906, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1091:9:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "src": "1080:20:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "6176617461722063616e6e6f74206265207a65726f", + "id": 7908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1102:23:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3338e04ce106ab83a89a6f78ac95362796c47f8acb99702d3b473607a80d58e0", + "typeString": "literal_string \"avatar cannot be zero\"" + }, + "value": "avatar cannot be zero" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3338e04ce106ab83a89a6f78ac95362796c47f8acb99702d3b473607a80d58e0", + "typeString": "literal_string \"avatar cannot be zero\"" + } + ], + "id": 7902, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1072:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1072:54:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7910, + "nodeType": "ExpressionStatement", + "src": "1072:54:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7912, + "name": "_activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7884, + "src": "1144:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "id": 7913, + "name": "_activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7886, + "src": "1167:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1144:41:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "5f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d65", + "id": 7915, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1187:43:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c7c241f48a56446d2e05779fff3b0e088217d2bb13f82ee9341d50d610a6a01", + "typeString": "literal_string \"_activationStartTime < _activationEndTime\"" + }, + "value": "_activationStartTime < _activationEndTime" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8c7c241f48a56446d2e05779fff3b0e088217d2bb13f82ee9341d50d610a6a01", + "typeString": "literal_string \"_activationStartTime < _activationEndTime\"" + } + ], + "id": 7911, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1136:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1136:95:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7917, + "nodeType": "ExpressionStatement", + "src": "1136:95:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7918, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "1241:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7919, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7882, + "src": "1250:7:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "src": "1241:16:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "id": 7921, + "nodeType": "ExpressionStatement", + "src": "1241:16:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7922, + "name": "activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7874, + "src": "1267:19:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7923, + "name": "_activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7884, + "src": "1289:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1267:42:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7925, + "nodeType": "ExpressionStatement", + "src": "1267:42:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7928, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7926, + "name": "activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7876, + "src": "1319:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7927, + "name": "_activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7886, + "src": "1339:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1319:38:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7929, + "nodeType": "ExpressionStatement", + "src": "1319:38:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7930, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "1367:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7931, + "name": "_maxRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7888, + "src": "1383:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1367:29:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7933, + "nodeType": "ExpressionStatement", + "src": "1367:29:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7934, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "1406:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7935, + "name": "_maxRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7888, + "src": "1423:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1406:30:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7937, + "nodeType": "ExpressionStatement", + "src": "1406:30:21" + } + ] + }, + "documentation": "@dev initialize\n@param _avatar the avatar to mint reputation from\n@param _activationStartTime start time for allowing minting\n@param _activationEndTime end time for allowing minting\n@param _maxRepReward maximum reputation mintable by this scheme", + "id": 7939, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 7891, + "modifierName": { + "argumentTypes": null, + "id": 7890, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20442, + "src": "983:9:21", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "983:9:21" + } + ], + "name": "initialize", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7889, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7882, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "848:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "typeName": { + "contractScope": null, + "id": 7881, + "name": "Avatar", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 337, + "src": "848:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7884, + "name": "_activationStartTime", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "872:28:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7883, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "872:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7886, + "name": "_activationEndTime", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "910:26:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7885, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "910:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7888, + "name": "_maxRepReward", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "946:21:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7887, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "946:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "838:135:21" + }, + "returnParameters": { + "id": 7892, + "nodeType": "ParameterList", + "parameters": [], + "src": "993:0:21" + }, + "scope": 8136, + "src": "819:624:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 7981, + "nodeType": "Block", + "src": "1762:223:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7951, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7942, + "src": "1780:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1780:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7953, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7945, + "src": "1805:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 7954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1805:15:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1780:40:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "417272617973206c656e677468206d69736d61746368", + "id": 7956, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1822:24:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + }, + "value": "Arrays length mismatch" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + } + ], + "id": 7950, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1772:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1772:75:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7958, + "nodeType": "ExpressionStatement", + "src": "1772:75:21" + }, + { + "body": { + "id": 7979, + "nodeType": "Block", + "src": "1907:72:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 7971, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7942, + "src": "1937:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7973, + "indexExpression": { + "argumentTypes": null, + "id": 7972, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1952:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1937:17:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 7974, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7945, + "src": "1956:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 7976, + "indexExpression": { + "argumentTypes": null, + "id": 7975, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1965:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1956:11:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7970, + "name": "_reputationMint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8075, + "src": "1921:15:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 7977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1921:47:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7978, + "nodeType": "ExpressionStatement", + "src": "1921:47:21" + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7963, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1875:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7964, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7942, + "src": "1879:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1879:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1875:25:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7980, + "initializationExpression": { + "assignments": [ + 7960 + ], + "declarations": [ + { + "constant": false, + "id": 7960, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 7980, + "src": "1862:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7959, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1862:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 7962, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 7961, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1872:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1862:11:21" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 7968, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1902:3:21", + "subExpression": { + "argumentTypes": null, + "id": 7967, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1902:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7969, + "nodeType": "ExpressionStatement", + "src": "1902:3:21" + }, + "nodeType": "ForStatement", + "src": "1857:122:21" + } + ] + }, + "documentation": "@dev reputationBurn function\n@param _beneficiaries the beneficiaries address to mint reputation from\n@param _amounts the amounts of reputation to mint for beneficiaries", + "id": 7982, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 7948, + "modifierName": { + "argumentTypes": null, + "id": 7947, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20442, + "src": "1752:9:21", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1752:9:21" + } + ], + "name": "reputationMint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7946, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7942, + "name": "_beneficiaries", + "nodeType": "VariableDeclaration", + "scope": 7982, + "src": "1679:33:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 7940, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1679:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 7941, + "length": null, + "nodeType": "ArrayTypeName", + "src": "1679:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7945, + "name": "_amounts", + "nodeType": "VariableDeclaration", + "scope": 7982, + "src": "1714:27:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 7943, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1714:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7944, + "length": null, + "nodeType": "ArrayTypeName", + "src": "1714:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1678:64:21" + }, + "returnParameters": { + "id": 7949, + "nodeType": "ParameterList", + "parameters": [], + "src": "1762:0:21" + }, + "scope": 8136, + "src": "1655:330:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 8024, + "nodeType": "Block", + "src": "2304:223:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7994, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7985, + "src": "2322:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2322:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7996, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7988, + "src": "2347:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 7997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2347:15:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2322:40:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "417272617973206c656e677468206d69736d61746368", + "id": 7999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2364:24:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + }, + "value": "Arrays length mismatch" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + } + ], + "id": 7993, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "2314:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2314:75:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8001, + "nodeType": "ExpressionStatement", + "src": "2314:75:21" + }, + { + "body": { + "id": 8022, + "nodeType": "Block", + "src": "2449:72:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 8014, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7985, + "src": "2479:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 8016, + "indexExpression": { + "argumentTypes": null, + "id": 8015, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2494:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2479:17:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 8017, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7988, + "src": "2498:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 8019, + "indexExpression": { + "argumentTypes": null, + "id": 8018, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2507:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2498:11:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8013, + "name": "_reputationBurn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8135, + "src": "2463:15:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 8020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2463:47:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8021, + "nodeType": "ExpressionStatement", + "src": "2463:47:21" + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8009, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8006, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2417:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 8007, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7985, + "src": "2421:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 8008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2421:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2417:25:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8023, + "initializationExpression": { + "assignments": [ + 8003 + ], + "declarations": [ + { + "constant": false, + "id": 8003, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 8023, + "src": "2404:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8002, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2404:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 8005, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 8004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2414:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2404:11:21" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 8011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2444:3:21", + "subExpression": { + "argumentTypes": null, + "id": 8010, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2444:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8012, + "nodeType": "ExpressionStatement", + "src": "2444:3:21" + }, + "nodeType": "ForStatement", + "src": "2399:122:21" + } + ] + }, + "documentation": "@dev reputationBurn function\n@param _beneficiaries the beneficiaries address to burm reputation from\n@param _amounts the amounts of reputation to burn for beneficiaries", + "id": 8025, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 7991, + "modifierName": { + "argumentTypes": null, + "id": 7990, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20442, + "src": "2294:9:21", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "2294:9:21" + } + ], + "name": "reputationBurn", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7989, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7985, + "name": "_beneficiaries", + "nodeType": "VariableDeclaration", + "scope": 8025, + "src": "2221:33:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 7983, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2221:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 7984, + "length": null, + "nodeType": "ArrayTypeName", + "src": "2221:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7988, + "name": "_amounts", + "nodeType": "VariableDeclaration", + "scope": 8025, + "src": "2256:27:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 7986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2256:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7987, + "length": null, + "nodeType": "ArrayTypeName", + "src": "2256:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2220:64:21" + }, + "returnParameters": { + "id": 7992, + "nodeType": "ParameterList", + "parameters": [], + "src": "2304:0:21" + }, + "scope": 8136, + "src": "2197:330:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 8074, + "nodeType": "Block", + "src": "2807:536:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8033, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "2879:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 8034, + "name": "activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7874, + "src": "2886:19:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2879:26:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4d696e74696e6720706572696f6420646964206e6f7420737461727420796574", + "id": 8036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2907:34:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_581971410a6a9f85fc8f8b875e9b3af3ab58d6dfe586601be2f2a203c337c85f", + "typeString": "literal_string \"Minting period did not start yet\"" + }, + "value": "Minting period did not start yet" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_581971410a6a9f85fc8f8b875e9b3af3ab58d6dfe586601be2f2a203c337c85f", + "typeString": "literal_string \"Minting period did not start yet\"" + } + ], + "id": 8032, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "2871:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2871:71:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8038, + "nodeType": "ExpressionStatement", + "src": "2871:71:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8040, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "3014:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "id": 8041, + "name": "activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7876, + "src": "3020:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3014:23:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4d696e74696e6720706572696f6420656e6465642e", + "id": 8043, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3039:23:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_00077f5d045580d51a6da98894d674132b79c89c04d7a58fe11b42583454213b", + "typeString": "literal_string \"Minting period ended.\"" + }, + "value": "Minting period ended." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_00077f5d045580d51a6da98894d674132b79c89c04d7a58fe11b42583454213b", + "typeString": "literal_string \"Minting period ended.\"" + } + ], + "id": 8039, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3006:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3006:57:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8045, + "nodeType": "ExpressionStatement", + "src": "3006:57:21" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8046, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "3078:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 8047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3095:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3078:18:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 8057, + "nodeType": "IfStatement", + "src": "3074:91:21", + "trueBody": { + "id": 8056, + "nodeType": "Block", + "src": "3098:67:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 8054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 8049, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "3112:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8052, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8029, + "src": "3146:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 8050, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "3128:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 20251, + "src": "3128:17:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 8053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3128:26:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3112:42:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8055, + "nodeType": "ExpressionStatement", + "src": "3112:42:21" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8065, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8029, + "src": "3238:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 8066, + "name": "_beneficiary", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8027, + "src": "3247:12:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8068, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "3269:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + ], + "id": 8067, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3261:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 8069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3261:15:21", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "id": 8060, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "3207:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "id": 8061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 20432, + "src": "3207:12:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 8062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3207:14:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8059, + "name": "Controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1797, + "src": "3196:10:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Controller_$1797_$", + "typeString": "type(contract Controller)" + } + }, + "id": 8063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3196:26:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Controller_$1797", + "typeString": "contract Controller" + } + }, + "id": 8064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "mintReputation", + "nodeType": "MemberAccess", + "referencedDeclaration": 730, + "src": "3196:41:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (uint256,address,address) external returns (bool)" + } + }, + "id": 8070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3196:81:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4d696e74696e672072657075746174696f6e2073686f756c642073756363656564", + "id": 8071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3291:35:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32429f7e0cd8961dc24e77dcf085fe9f4bf49c75e9d23fc80df5b2aafa0adc42", + "typeString": "literal_string \"Minting reputation should succeed\"" + }, + "value": "Minting reputation should succeed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_32429f7e0cd8961dc24e77dcf085fe9f4bf49c75e9d23fc80df5b2aafa0adc42", + "typeString": "literal_string \"Minting reputation should succeed\"" + } + ], + "id": 8058, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3175:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3175:161:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8073, + "nodeType": "ExpressionStatement", + "src": "3175:161:21" + } + ] + }, + "documentation": "@dev reputationMint function\n@param _beneficiary the beneficiary address to mint reputation for\n@param _amount the amount of reputation to mint the the beneficirary", + "id": 8075, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_reputationMint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8027, + "name": "_beneficiary", + "nodeType": "VariableDeclaration", + "scope": 8075, + "src": "2760:20:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8026, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2760:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 8029, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 8075, + "src": "2782:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8028, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2782:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2759:39:21" + }, + "returnParameters": { + "id": 8031, + "nodeType": "ParameterList", + "parameters": [], + "src": "2807:0:21" + }, + "scope": 8136, + "src": "2735:608:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + }, + { + "body": { + "id": 8134, + "nodeType": "Block", + "src": "3622:632:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8083, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "3694:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 8084, + "name": "activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7874, + "src": "3701:19:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3694:26:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4275726e696e6720706572696f6420646964206e6f7420737461727420796574", + "id": 8086, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3722:34:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cc67274b0ea6caa936eaca3e757564d765326ed8656b81cc5422cfeceb1205f8", + "typeString": "literal_string \"Burning period did not start yet\"" + }, + "value": "Burning period did not start yet" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_cc67274b0ea6caa936eaca3e757564d765326ed8656b81cc5422cfeceb1205f8", + "typeString": "literal_string \"Burning period did not start yet\"" + } + ], + "id": 8082, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3686:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3686:71:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8088, + "nodeType": "ExpressionStatement", + "src": "3686:71:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8092, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8090, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "3829:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "id": 8091, + "name": "activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7876, + "src": "3835:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3829:23:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4275726e696e6720706572696f6420656e6465642e", + "id": 8093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3854:23:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc025f6c0796865eb39b94f6e36d923346d980af137f8908e8c2d8e6743684e8", + "typeString": "literal_string \"Burning period ended.\"" + }, + "value": "Burning period ended." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_dc025f6c0796865eb39b94f6e36d923346d980af137f8908e8c2d8e6743684e8", + "typeString": "literal_string \"Burning period ended.\"" + } + ], + "id": 8089, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3821:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3821:57:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8095, + "nodeType": "ExpressionStatement", + "src": "3821:57:21" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8096, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "3893:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 8097, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3910:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3893:18:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 8117, + "nodeType": "IfStatement", + "src": "3889:190:21", + "trueBody": { + "id": 8116, + "nodeType": "Block", + "src": "3913:166:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8100, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "3935:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8103, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "3965:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 8101, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "3946:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 20251, + "src": "3946:18:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 8104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3946:33:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3935:44:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "43616e6e6f74206275726e206d6f7265207468616e206d696e746564", + "id": 8106, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3981:30:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_278f48e96a0bbf1f2658e62d2b8e0dcd2f075997734779f53a51b2a661ed87b8", + "typeString": "literal_string \"Cannot burn more than minted\"" + }, + "value": "Cannot burn more than minted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_278f48e96a0bbf1f2658e62d2b8e0dcd2f075997734779f53a51b2a661ed87b8", + "typeString": "literal_string \"Cannot burn more than minted\"" + } + ], + "id": 8099, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3927:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3927:85:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8108, + "nodeType": "ExpressionStatement", + "src": "3927:85:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 8114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 8109, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "4026:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8112, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "4060:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 8110, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "4042:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 20235, + "src": "4042:17:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 8113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4042:26:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4026:42:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8115, + "nodeType": "ExpressionStatement", + "src": "4026:42:21" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8125, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "4152:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 8126, + "name": "_beneficiary", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8077, + "src": "4161:12:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8128, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "4183:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + ], + "id": 8127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4175:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 8129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4175:15:21", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "id": 8120, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "4121:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "id": 8121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 20432, + "src": "4121:12:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 8122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4121:14:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8119, + "name": "Controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1797, + "src": "4110:10:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Controller_$1797_$", + "typeString": "type(contract Controller)" + } + }, + "id": 8123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4110:26:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Controller_$1797", + "typeString": "contract Controller" + } + }, + "id": 8124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "burnReputation", + "nodeType": "MemberAccess", + "referencedDeclaration": 763, + "src": "4110:41:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (uint256,address,address) external returns (bool)" + } + }, + "id": 8130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4110:81:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4275726e2072657075746174696f6e2073686f756c642073756363656564", + "id": 8131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4205:32:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f69f33abdcad84f8254860c3ac7b34ecec5b5a817139eb85f3de866120bcc728", + "typeString": "literal_string \"Burn reputation should succeed\"" + }, + "value": "Burn reputation should succeed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f69f33abdcad84f8254860c3ac7b34ecec5b5a817139eb85f3de866120bcc728", + "typeString": "literal_string \"Burn reputation should succeed\"" + } + ], + "id": 8118, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "4089:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4089:158:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8133, + "nodeType": "ExpressionStatement", + "src": "4089:158:21" + } + ] + }, + "documentation": "@dev reputationBurn function\n@param _beneficiary the beneficiary address to burm reputation from\n@param _amount the amount of reputation to burn for a beneficirary", + "id": 8135, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_reputationBurn", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8080, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8077, + "name": "_beneficiary", + "nodeType": "VariableDeclaration", + "scope": 8135, + "src": "3575:20:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8076, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3575:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 8079, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 8135, + "src": "3597:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8078, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3597:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3574:39:21" + }, + "returnParameters": { + "id": 8081, + "nodeType": "ParameterList", + "parameters": [], + "src": "3622:0:21" + }, + "scope": 8136, + "src": "3550:704:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + } + ], + "scope": 8137, + "src": "273:3983:21" + } + ], + "src": "0:4257:21" + }, + "legacyAST": { + "absolutePath": "/Users/oren/daostack/arc/contracts/schemes/ReputationAdmin.sol", + "exportedSymbols": { + "ReputationAdmin": [ + 8136 + ] + }, + "id": 8137, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7862, + "literals": [ + "solidity", + "0.5", + ".13" + ], + "nodeType": "PragmaDirective", + "src": "0:23:21" + }, + { + "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 7863, + "nodeType": "ImportDirective", + "scope": 8137, + "sourceUnit": 20510, + "src": "25:63:21", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "openzeppelin-solidity/contracts/math/SafeMath.sol", + "file": "openzeppelin-solidity/contracts/math/SafeMath.sol", + "id": 7864, + "nodeType": "ImportDirective", + "scope": 8137, + "sourceUnit": 20396, + "src": "89:59:21", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/Users/oren/daostack/arc/contracts/controller/Controller.sol", + "file": "../controller/Controller.sol", + "id": 7865, + "nodeType": "ImportDirective", + "scope": 8137, + "sourceUnit": 1798, + "src": "149:38:21", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 7866, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 20509, + "src": "301:7:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$20509", + "typeString": "contract Ownable" + } + }, + "id": 7867, + "nodeType": "InheritanceSpecifier", + "src": "301:7:21" + } + ], + "contractDependencies": [ + 20058, + 20509 + ], + "contractKind": "contract", + "documentation": "@title A scheme for reputation minting/burning by an authorized account", + "fullyImplemented": true, + "id": 8136, + "linearizedBaseContracts": [ + 8136, + 20509, + 20058 + ], + "name": "ReputationAdmin", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 7870, + "libraryName": { + "contractScope": null, + "id": 7868, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 20395, + "src": "321:8:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$20395", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "315:27:21", + "typeName": { + "id": 7869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "334:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 7872, + "name": "avatar", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "348:20:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "typeName": { + "contractScope": null, + "id": 7871, + "name": "Avatar", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 337, + "src": "348:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7874, + "name": "activationStartTime", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "374:34:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "374:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7876, + "name": "activationEndTime", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "414:32:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7875, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "414:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7878, + "name": "repRewardLeft", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "452:28:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7877, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "452:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 7880, + "name": "limitRepReward", + "nodeType": "VariableDeclaration", + "scope": 8136, + "src": "486:29:21", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7879, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "486:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 7938, + "nodeType": "Block", + "src": "993:450:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "id": 7898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7894, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "1011:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 7896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1028:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 7895, + "name": "Avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 337, + "src": "1021:6:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Avatar_$337_$", + "typeString": "type(contract Avatar)" + } + }, + "id": 7897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1021:9:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "src": "1011:19:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "63616e2062652063616c6c6564206f6e6c79206f6e652074696d65", + "id": 7899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1032:29:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_61459d8c2e83c03ac4ccaf4013950b2282c585e1eb42ab84ceae1eecfe85edd8", + "typeString": "literal_string \"can be called only one time\"" + }, + "value": "can be called only one time" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_61459d8c2e83c03ac4ccaf4013950b2282c585e1eb42ab84ceae1eecfe85edd8", + "typeString": "literal_string \"can be called only one time\"" + } + ], + "id": 7893, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1003:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1003:59:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7901, + "nodeType": "ExpressionStatement", + "src": "1003:59:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "id": 7907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7903, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7882, + "src": "1080:7:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 7905, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1098:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 7904, + "name": "Avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 337, + "src": "1091:6:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Avatar_$337_$", + "typeString": "type(contract Avatar)" + } + }, + "id": 7906, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1091:9:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "src": "1080:20:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "6176617461722063616e6e6f74206265207a65726f", + "id": 7908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1102:23:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3338e04ce106ab83a89a6f78ac95362796c47f8acb99702d3b473607a80d58e0", + "typeString": "literal_string \"avatar cannot be zero\"" + }, + "value": "avatar cannot be zero" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3338e04ce106ab83a89a6f78ac95362796c47f8acb99702d3b473607a80d58e0", + "typeString": "literal_string \"avatar cannot be zero\"" + } + ], + "id": 7902, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1072:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1072:54:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7910, + "nodeType": "ExpressionStatement", + "src": "1072:54:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7912, + "name": "_activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7884, + "src": "1144:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "id": 7913, + "name": "_activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7886, + "src": "1167:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1144:41:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "5f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d65", + "id": 7915, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1187:43:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c7c241f48a56446d2e05779fff3b0e088217d2bb13f82ee9341d50d610a6a01", + "typeString": "literal_string \"_activationStartTime < _activationEndTime\"" + }, + "value": "_activationStartTime < _activationEndTime" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8c7c241f48a56446d2e05779fff3b0e088217d2bb13f82ee9341d50d610a6a01", + "typeString": "literal_string \"_activationStartTime < _activationEndTime\"" + } + ], + "id": 7911, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1136:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1136:95:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7917, + "nodeType": "ExpressionStatement", + "src": "1136:95:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7918, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "1241:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7919, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7882, + "src": "1250:7:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "src": "1241:16:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "id": 7921, + "nodeType": "ExpressionStatement", + "src": "1241:16:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7922, + "name": "activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7874, + "src": "1267:19:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7923, + "name": "_activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7884, + "src": "1289:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1267:42:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7925, + "nodeType": "ExpressionStatement", + "src": "1267:42:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7928, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7926, + "name": "activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7876, + "src": "1319:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7927, + "name": "_activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7886, + "src": "1339:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1319:38:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7929, + "nodeType": "ExpressionStatement", + "src": "1319:38:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7930, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "1367:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7931, + "name": "_maxRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7888, + "src": "1383:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1367:29:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7933, + "nodeType": "ExpressionStatement", + "src": "1367:29:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 7936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 7934, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "1406:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 7935, + "name": "_maxRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7888, + "src": "1423:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1406:30:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7937, + "nodeType": "ExpressionStatement", + "src": "1406:30:21" + } + ] + }, + "documentation": "@dev initialize\n@param _avatar the avatar to mint reputation from\n@param _activationStartTime start time for allowing minting\n@param _activationEndTime end time for allowing minting\n@param _maxRepReward maximum reputation mintable by this scheme", + "id": 7939, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 7891, + "modifierName": { + "argumentTypes": null, + "id": 7890, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20442, + "src": "983:9:21", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "983:9:21" + } + ], + "name": "initialize", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7889, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7882, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "848:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + }, + "typeName": { + "contractScope": null, + "id": 7881, + "name": "Avatar", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 337, + "src": "848:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7884, + "name": "_activationStartTime", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "872:28:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7883, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "872:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7886, + "name": "_activationEndTime", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "910:26:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7885, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "910:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7888, + "name": "_maxRepReward", + "nodeType": "VariableDeclaration", + "scope": 7939, + "src": "946:21:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7887, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "946:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "838:135:21" + }, + "returnParameters": { + "id": 7892, + "nodeType": "ParameterList", + "parameters": [], + "src": "993:0:21" + }, + "scope": 8136, + "src": "819:624:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 7981, + "nodeType": "Block", + "src": "1762:223:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7951, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7942, + "src": "1780:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1780:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7953, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7945, + "src": "1805:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 7954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1805:15:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1780:40:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "417272617973206c656e677468206d69736d61746368", + "id": 7956, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1822:24:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + }, + "value": "Arrays length mismatch" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + } + ], + "id": 7950, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "1772:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1772:75:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7958, + "nodeType": "ExpressionStatement", + "src": "1772:75:21" + }, + { + "body": { + "id": 7979, + "nodeType": "Block", + "src": "1907:72:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 7971, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7942, + "src": "1937:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7973, + "indexExpression": { + "argumentTypes": null, + "id": 7972, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1952:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1937:17:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 7974, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7945, + "src": "1956:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 7976, + "indexExpression": { + "argumentTypes": null, + "id": 7975, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1965:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1956:11:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7970, + "name": "_reputationMint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8075, + "src": "1921:15:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 7977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1921:47:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7978, + "nodeType": "ExpressionStatement", + "src": "1921:47:21" + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 7963, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1875:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7964, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7942, + "src": "1879:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1879:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1875:25:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7980, + "initializationExpression": { + "assignments": [ + 7960 + ], + "declarations": [ + { + "constant": false, + "id": 7960, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 7980, + "src": "1862:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7959, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1862:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 7962, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 7961, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1872:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1862:11:21" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 7968, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1902:3:21", + "subExpression": { + "argumentTypes": null, + "id": 7967, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7960, + "src": "1902:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7969, + "nodeType": "ExpressionStatement", + "src": "1902:3:21" + }, + "nodeType": "ForStatement", + "src": "1857:122:21" + } + ] + }, + "documentation": "@dev reputationBurn function\n@param _beneficiaries the beneficiaries address to mint reputation from\n@param _amounts the amounts of reputation to mint for beneficiaries", + "id": 7982, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 7948, + "modifierName": { + "argumentTypes": null, + "id": 7947, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20442, + "src": "1752:9:21", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1752:9:21" + } + ], + "name": "reputationMint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7946, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7942, + "name": "_beneficiaries", + "nodeType": "VariableDeclaration", + "scope": 7982, + "src": "1679:33:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 7940, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1679:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 7941, + "length": null, + "nodeType": "ArrayTypeName", + "src": "1679:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7945, + "name": "_amounts", + "nodeType": "VariableDeclaration", + "scope": 7982, + "src": "1714:27:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 7943, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1714:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7944, + "length": null, + "nodeType": "ArrayTypeName", + "src": "1714:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1678:64:21" + }, + "returnParameters": { + "id": 7949, + "nodeType": "ParameterList", + "parameters": [], + "src": "1762:0:21" + }, + "scope": 8136, + "src": "1655:330:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 8024, + "nodeType": "Block", + "src": "2304:223:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7994, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7985, + "src": "2322:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 7995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2322:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7996, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7988, + "src": "2347:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 7997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2347:15:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2322:40:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "417272617973206c656e677468206d69736d61746368", + "id": 7999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2364:24:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + }, + "value": "Arrays length mismatch" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_582fd48f3876d7686bfeaaaa0db0589073271dedd50d66094f02fee2a3d2e01c", + "typeString": "literal_string \"Arrays length mismatch\"" + } + ], + "id": 7993, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "2314:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2314:75:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8001, + "nodeType": "ExpressionStatement", + "src": "2314:75:21" + }, + { + "body": { + "id": 8022, + "nodeType": "Block", + "src": "2449:72:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 8014, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7985, + "src": "2479:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 8016, + "indexExpression": { + "argumentTypes": null, + "id": 8015, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2494:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2479:17:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 8017, + "name": "_amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7988, + "src": "2498:8:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 8019, + "indexExpression": { + "argumentTypes": null, + "id": 8018, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2507:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2498:11:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8013, + "name": "_reputationBurn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8135, + "src": "2463:15:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 8020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2463:47:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8021, + "nodeType": "ExpressionStatement", + "src": "2463:47:21" + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8009, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8006, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2417:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 8007, + "name": "_beneficiaries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7985, + "src": "2421:14:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 8008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2421:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2417:25:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8023, + "initializationExpression": { + "assignments": [ + 8003 + ], + "declarations": [ + { + "constant": false, + "id": 8003, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 8023, + "src": "2404:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8002, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2404:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 8005, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 8004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2414:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2404:11:21" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 8011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2444:3:21", + "subExpression": { + "argumentTypes": null, + "id": 8010, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8003, + "src": "2444:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8012, + "nodeType": "ExpressionStatement", + "src": "2444:3:21" + }, + "nodeType": "ForStatement", + "src": "2399:122:21" + } + ] + }, + "documentation": "@dev reputationBurn function\n@param _beneficiaries the beneficiaries address to burm reputation from\n@param _amounts the amounts of reputation to burn for beneficiaries", + "id": 8025, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 7991, + "modifierName": { + "argumentTypes": null, + "id": 7990, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20442, + "src": "2294:9:21", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "2294:9:21" + } + ], + "name": "reputationBurn", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7989, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7985, + "name": "_beneficiaries", + "nodeType": "VariableDeclaration", + "scope": 8025, + "src": "2221:33:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 7983, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2221:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 7984, + "length": null, + "nodeType": "ArrayTypeName", + "src": "2221:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 7988, + "name": "_amounts", + "nodeType": "VariableDeclaration", + "scope": 8025, + "src": "2256:27:21", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 7986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2256:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7987, + "length": null, + "nodeType": "ArrayTypeName", + "src": "2256:9:21", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2220:64:21" + }, + "returnParameters": { + "id": 7992, + "nodeType": "ParameterList", + "parameters": [], + "src": "2304:0:21" + }, + "scope": 8136, + "src": "2197:330:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 8074, + "nodeType": "Block", + "src": "2807:536:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8033, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "2879:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 8034, + "name": "activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7874, + "src": "2886:19:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2879:26:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4d696e74696e6720706572696f6420646964206e6f7420737461727420796574", + "id": 8036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2907:34:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_581971410a6a9f85fc8f8b875e9b3af3ab58d6dfe586601be2f2a203c337c85f", + "typeString": "literal_string \"Minting period did not start yet\"" + }, + "value": "Minting period did not start yet" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_581971410a6a9f85fc8f8b875e9b3af3ab58d6dfe586601be2f2a203c337c85f", + "typeString": "literal_string \"Minting period did not start yet\"" + } + ], + "id": 8032, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "2871:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2871:71:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8038, + "nodeType": "ExpressionStatement", + "src": "2871:71:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8040, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "3014:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "id": 8041, + "name": "activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7876, + "src": "3020:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3014:23:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4d696e74696e6720706572696f6420656e6465642e", + "id": 8043, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3039:23:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_00077f5d045580d51a6da98894d674132b79c89c04d7a58fe11b42583454213b", + "typeString": "literal_string \"Minting period ended.\"" + }, + "value": "Minting period ended." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_00077f5d045580d51a6da98894d674132b79c89c04d7a58fe11b42583454213b", + "typeString": "literal_string \"Minting period ended.\"" + } + ], + "id": 8039, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3006:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3006:57:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8045, + "nodeType": "ExpressionStatement", + "src": "3006:57:21" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8046, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "3078:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 8047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3095:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3078:18:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 8057, + "nodeType": "IfStatement", + "src": "3074:91:21", + "trueBody": { + "id": 8056, + "nodeType": "Block", + "src": "3098:67:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 8054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 8049, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "3112:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8052, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8029, + "src": "3146:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 8050, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "3128:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 20251, + "src": "3128:17:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 8053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3128:26:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3112:42:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8055, + "nodeType": "ExpressionStatement", + "src": "3112:42:21" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8065, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8029, + "src": "3238:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 8066, + "name": "_beneficiary", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8027, + "src": "3247:12:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8068, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "3269:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + ], + "id": 8067, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3261:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 8069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3261:15:21", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "id": 8060, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "3207:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "id": 8061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 20432, + "src": "3207:12:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 8062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3207:14:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8059, + "name": "Controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1797, + "src": "3196:10:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Controller_$1797_$", + "typeString": "type(contract Controller)" + } + }, + "id": 8063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3196:26:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Controller_$1797", + "typeString": "contract Controller" + } + }, + "id": 8064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "mintReputation", + "nodeType": "MemberAccess", + "referencedDeclaration": 730, + "src": "3196:41:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (uint256,address,address) external returns (bool)" + } + }, + "id": 8070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3196:81:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4d696e74696e672072657075746174696f6e2073686f756c642073756363656564", + "id": 8071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3291:35:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32429f7e0cd8961dc24e77dcf085fe9f4bf49c75e9d23fc80df5b2aafa0adc42", + "typeString": "literal_string \"Minting reputation should succeed\"" + }, + "value": "Minting reputation should succeed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_32429f7e0cd8961dc24e77dcf085fe9f4bf49c75e9d23fc80df5b2aafa0adc42", + "typeString": "literal_string \"Minting reputation should succeed\"" + } + ], + "id": 8058, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3175:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3175:161:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8073, + "nodeType": "ExpressionStatement", + "src": "3175:161:21" + } + ] + }, + "documentation": "@dev reputationMint function\n@param _beneficiary the beneficiary address to mint reputation for\n@param _amount the amount of reputation to mint the the beneficirary", + "id": 8075, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_reputationMint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8027, + "name": "_beneficiary", + "nodeType": "VariableDeclaration", + "scope": 8075, + "src": "2760:20:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8026, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2760:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 8029, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 8075, + "src": "2782:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8028, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2782:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2759:39:21" + }, + "returnParameters": { + "id": 8031, + "nodeType": "ParameterList", + "parameters": [], + "src": "2807:0:21" + }, + "scope": 8136, + "src": "2735:608:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + }, + { + "body": { + "id": 8134, + "nodeType": "Block", + "src": "3622:632:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8083, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "3694:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 8084, + "name": "activationStartTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7874, + "src": "3701:19:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3694:26:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4275726e696e6720706572696f6420646964206e6f7420737461727420796574", + "id": 8086, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3722:34:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cc67274b0ea6caa936eaca3e757564d765326ed8656b81cc5422cfeceb1205f8", + "typeString": "literal_string \"Burning period did not start yet\"" + }, + "value": "Burning period did not start yet" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_cc67274b0ea6caa936eaca3e757564d765326ed8656b81cc5422cfeceb1205f8", + "typeString": "literal_string \"Burning period did not start yet\"" + } + ], + "id": 8082, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3686:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3686:71:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8088, + "nodeType": "ExpressionStatement", + "src": "3686:71:21" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8092, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8090, + "name": "now", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21109, + "src": "3829:3:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "id": 8091, + "name": "activationEndTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7876, + "src": "3835:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3829:23:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4275726e696e6720706572696f6420656e6465642e", + "id": 8093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3854:23:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc025f6c0796865eb39b94f6e36d923346d980af137f8908e8c2d8e6743684e8", + "typeString": "literal_string \"Burning period ended.\"" + }, + "value": "Burning period ended." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_dc025f6c0796865eb39b94f6e36d923346d980af137f8908e8c2d8e6743684e8", + "typeString": "literal_string \"Burning period ended.\"" + } + ], + "id": 8089, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3821:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3821:57:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8095, + "nodeType": "ExpressionStatement", + "src": "3821:57:21" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8096, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "3893:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 8097, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3910:1:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3893:18:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 8117, + "nodeType": "IfStatement", + "src": "3889:190:21", + "trueBody": { + "id": 8116, + "nodeType": "Block", + "src": "3913:166:21", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 8100, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "3935:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8103, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "3965:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 8101, + "name": "limitRepReward", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7880, + "src": "3946:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 20251, + "src": "3946:18:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 8104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3946:33:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3935:44:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "43616e6e6f74206275726e206d6f7265207468616e206d696e746564", + "id": 8106, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3981:30:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_278f48e96a0bbf1f2658e62d2b8e0dcd2f075997734779f53a51b2a661ed87b8", + "typeString": "literal_string \"Cannot burn more than minted\"" + }, + "value": "Cannot burn more than minted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_278f48e96a0bbf1f2658e62d2b8e0dcd2f075997734779f53a51b2a661ed87b8", + "typeString": "literal_string \"Cannot burn more than minted\"" + } + ], + "id": 8099, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "3927:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3927:85:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8108, + "nodeType": "ExpressionStatement", + "src": "3927:85:21" + }, + { + "expression": { + "argumentTypes": null, + "id": 8114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 8109, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "4026:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8112, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "4060:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 8110, + "name": "repRewardLeft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7878, + "src": "4042:13:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 20235, + "src": "4042:17:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 8113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4042:26:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4026:42:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8115, + "nodeType": "ExpressionStatement", + "src": "4026:42:21" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8125, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "4152:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 8126, + "name": "_beneficiary", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8077, + "src": "4161:12:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 8128, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "4183:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + ], + "id": 8127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4175:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 8129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4175:15:21", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "id": 8120, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7872, + "src": "4121:6:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$337", + "typeString": "contract Avatar" + } + }, + "id": 8121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 20432, + "src": "4121:12:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 8122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4121:14:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8119, + "name": "Controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1797, + "src": "4110:10:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Controller_$1797_$", + "typeString": "type(contract Controller)" + } + }, + "id": 8123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4110:26:21", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Controller_$1797", + "typeString": "contract Controller" + } + }, + "id": 8124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "burnReputation", + "nodeType": "MemberAccess", + "referencedDeclaration": 763, + "src": "4110:41:21", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (uint256,address,address) external returns (bool)" + } + }, + "id": 8130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4110:81:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4275726e2072657075746174696f6e2073686f756c642073756363656564", + "id": 8131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4205:32:21", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f69f33abdcad84f8254860c3ac7b34ecec5b5a817139eb85f3de866120bcc728", + "typeString": "literal_string \"Burn reputation should succeed\"" + }, + "value": "Burn reputation should succeed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f69f33abdcad84f8254860c3ac7b34ecec5b5a817139eb85f3de866120bcc728", + "typeString": "literal_string \"Burn reputation should succeed\"" + } + ], + "id": 8118, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 21110, + 21111 + ], + "referencedDeclaration": 21111, + "src": "4089:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4089:158:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8133, + "nodeType": "ExpressionStatement", + "src": "4089:158:21" + } + ] + }, + "documentation": "@dev reputationBurn function\n@param _beneficiary the beneficiary address to burm reputation from\n@param _amount the amount of reputation to burn for a beneficirary", + "id": 8135, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_reputationBurn", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8080, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8077, + "name": "_beneficiary", + "nodeType": "VariableDeclaration", + "scope": 8135, + "src": "3575:20:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8076, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3575:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 8079, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 8135, + "src": "3597:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8078, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3597:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3574:39:21" + }, + "returnParameters": { + "id": 8081, + "nodeType": "ParameterList", + "parameters": [], + "src": "3622:0:21" + }, + "scope": 8136, + "src": "3550:704:21", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + } + ], + "scope": 8137, + "src": "273:3983:21" + } + ], + "src": "0:4257:21" + }, + "compiler": { + "name": "solc", + "version": "0.5.13+commit.5b0b510c.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.20", + "updatedAt": "2020-02-06T07:28:47.470Z", + "devdoc": { + "methods": { + "initialize(address,uint256,uint256,uint256)": { + "details": "initialize", + "params": { + "_activationEndTime": "end time for allowing minting", + "_activationStartTime": "start time for allowing minting", + "_avatar": "the avatar to mint reputation from", + "_maxRepReward": "maximum reputation mintable by this scheme" + } + }, + "isOwner()": { + "details": "Returns true if the caller is the current owner." + }, + "owner()": { + "details": "Returns the address of the current owner." + }, + "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." + }, + "reputationBurn(address[],uint256[])": { + "details": "reputationBurn function", + "params": { + "_amounts": "the amounts of reputation to burn for beneficiaries", + "_beneficiaries": "the beneficiaries address to burm reputation from" + } + }, + "reputationMint(address[],uint256[])": { + "details": "reputationBurn function", + "params": { + "_amounts": "the amounts of reputation to mint for beneficiaries", + "_beneficiaries": "the beneficiaries address to mint reputation from" + } + }, + "transferOwnership(address)": { + "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." + } + }, + "title": "A scheme for reputation minting/burning by an authorized account" + }, + "userdoc": { + "methods": {} + } +} diff --git a/scripts/beneficiaries.txt b/scripts/beneficiaries.txt new file mode 100644 index 0000000..0c238fa --- /dev/null +++ b/scripts/beneficiaries.txt @@ -0,0 +1,2550 @@ +0xbd4df5b9c78b55b8f6dd873061ec603fe58c33db +0xe9f248ab62825ef746197745bebad4aec71de703 +0xc414002ccd9ae18df3ca1143670b26bfd905c325 +0x2a4ad80864a8b09d452c4ef7179ea6b206431d2c +0xcc9812202b453ffe9a2e5df90eb8aa987ffd6b15 +0x990d59d6352b4ac63c78740d50d7efbe7db45b93 +0xc288fb81a535b6e88dfd0c3204e1121002d2f8e3 +0x81e51dd42e255fe026af8fb8358b7bca9f254c35 +0x0a8572b31e9b6176c61c30945863433336f3b822 +0x8743b92e57f9c20959f284e497f006bbe273ac7a +0x56bb11e5709be247f9f6141fb812aa53a9abcdc3 +0x7cc7f5eb145ce0ebf7e0e860930dde8a29847af8 +0x7e23e15ab7dc7447d0abe94960809db5bffb8fea +0x9be8e7e24ffd62af9a2373e8b6ae1efd102dc4c0 +0x2055721fe9db3b1670baa45124f4eec5f61a9b40 +0xc1cdd70467394c314cc014be00f7f6edd5fc4792 +0x0bc222f8461232efdd812266a6ad7f5da25f9ff0 +0x0c52916ef044d2f35cb435b19d73acb6db587f49 +0x94fa7750aa74bab0348ef4939d8c231f42acdf76 +0x6220111cc426bb397433cb31cb8fc9fadb4a8e65 +0xb1929ee6b4b73bc12c12ffccea466b78f57e5f55 +0x485635851b9d6260b1f5d12b3fb00f56df657a9a +0x7068573b6e9efeef0ffec5ab7035db6c77867217 +0xee36ab9cf1ec039436f984a269e4a1b8943d424a +0x39f8c2cca2f2af1d601cfa85dc83ec0b7965dc5c +0xee50b3fd4d773c5ed87769146eb38a0e258fcc06 +0x2df56e6c994c12414183508a7d679a6b881eae9d +0x6e4f551724e6893b7146844f904b4bf335dbfc13 +0x984194853f99d040864dbd695f79aca237610470 +0xc062c2cedde8a76667a8b6102a8f34eb7040d0be +0x06e07532b82d4c49802ebf210b10ab3079d24bb3 +0xc46a8c0c86de85ff9c34eb05676d7394d62b1554 +0x6b2bde38f0cf014e55de1fb8f41dbf6955e18b35 +0x13b21532e1550dda8fe7d3de0901015f64a61f1f +0x49c5d488b201f690ff0d4e9595d71daa0088d393 +0xfd87ee618ebff6a176f49076838eebf3b8260b4c +0x809ebbca4261998fc742d9262c035ee21a01c268 +0xaa3fc88f4aa5f38670ff7eef21c56105769005df +0x7b9e836315e60e3f0c8bbb9e36f3cab57dbc9700 +0xacef7e85e337291eb112544be69ed303d946715e +0x009ebb3291a784a02fe270f0f91f14f4e46226ce +0xd829a0d9cef9c920e74ea6077c99bdc966d5ddf2 +0xb3dc66a1205359804bd3b349d84a17899fb64bee +0x4733f55f2e85b2e5db255966d7cc0100589d26fc +0xe609673e452e53e623026ed3cd34cc606a68624f +0x1554b2c2dc9b2133318dd332b9ef2499f9792079 +0xbb85fec7eb8824dfd1db7bfe1c253d2549a5ebdf +0xbe5c911aa09032cf156d384f6820b0458ea6bf83 +0x6d299fa547b56df692d8102a19f8175094b9f145 +0x26a557e59026e5b922782da2b131ad7a5ce23ebf +0x933d031913181e71e579fce5b32ea88355de2ad1 +0x117ea90d5b58f6d5d77617c3babc5017c6b55938 +0x454302d52b2fc7eb6408d9a1251fc2f782728b7d +0xfd631a7d855147bbb73a4f8a42c64d7d9e2a6ec7 +0x5feeec39a3b2f359d02aa4f67c15f824447c542e +0x16362ad563faac7498ddcb369365147018b349c5 +0xfea16e9ecd5c78420efd5b8c720366afa37c4cb4 +0xb1f3e1b7705da169f0a80bc39324ce791704b9d0 +0x69a3076accb64ee394c2b45a5b780daff28bea4a +0xaff0c031342862889e9cbe2374fcf3e9613f0d41 +0x7793a3cc94010875d8bc4636081b5c01958b655e +0x7be1c912d8251fecf0706ad768f2231da6ab9c03 +0x395f8d07d48dc7a81534de67962be7a47266f80a +0xf4080cc6c02ccd2660217c2c7ee5158e5387ba5b +0xa801475debe2e7cee0addfb3588e15f262b398b8 +0x32c2c73f10b6ad9516aa000a1ef88d9633c36d8d +0xaa9f4019409d4c21cf4f47526237d28e9e237771 +0xc01a9f7abd13d63c84efec509a131237878d3d92 +0x83b98c9b32a0ff0a31b4373f94bd8b7fbb6123d8 +0xd90e2c84122c829150c20b143a7af2dc93ccff45 +0x7f243ce223b953ce659cd1c4287e74f87bf46d68 +0x86944490e47eaa94edaa02ee7f91f4b9e31cc880 +0xd28f169c431fa533c026e565bba6cfad47c66b84 +0x9a29ba39114db868fe2514fef0dda3315a2cbb57 +0xae8671e4588e251c12a1478914d8368df3f7e8c9 +0x1e8efe8e08af128c0001d4e9e8ec2153bc704001 +0x410f9998ad8adf57003a7e8da6bba4e36888c113 +0x856b5d1113f9390edc8bc40aecb923f99be15a3e +0xc610116b8690bcdb1abd34d3d240ecd01e3a188e +0x09cd07dcee4d7242dcf48cb17c6fc58f372c30e0 +0xc96a7f82ca1197f5ecc13dce164d4c42ab5a137a +0xc8a6757c28b33bddc9ea21cd0a989fc8e6523d5a +0x3967b717b4f7db397e609f547f3129e8e295ace8 +0x1470059932cac3561112217f1ed678e3721fb881 +0xa1f7aa42841df77669ee97a18ee39afdf1a6ed32 +0xcae85684d8fa19722fce02324dfff6a0508f6c83 +0x419425bd9cb2e576806fbe597aacf172e26e83e5 +0x3a46ff7c6ff9135ae7240885290180977b07c901 +0x3af4948f8eb515d74a6d417f9bd6f65c1cc13379 +0x6af76e6f1e849d607ffd26b630e3cfd638881790 +0xe0ba922f5c0f2574db609a4cd31113162de3ee0e +0x55f3f62ac1a90b2ed3b5114350e377c13178ba41 +0x95800459db86bf0986c7b3f33f473a9f047ca4e5 +0xb1cf8de43a908f70c71bb998a1bacbf0a4a93f05 +0x8cb77a3ec223881b313fe3254a16c45e22959ab6 +0x52d32fb7911909f4e57071bfd93e741fb2bfee96 +0x43951eb29dea076e1ac40c8c95a7508d1f84e91c +0x3722e9924e5e5f1f9d01382906dae975c3a2799a +0x7f54c33aa6f4f52b014f7ffc400a5e432a2b30ea +0xf10b9341b4d8199757b2cd9caa182f4511e0ac1a +0xb776b4895b0cbe77eca501e6cdd593629bddbd79 +0x163db18ccefa335ba53bc8d190b67994032fc28b +0xcb44db034fc66b525c02b8a0cd1c9cdc824195d5 +0xa72663803be48f8fbca2552c99f295bbb2394cba +0xfeb8db6a62073bb8c19ff55c4163db585149727f +0xc2ea238eb4874b92041b66d9639690e1a47dff71 +0xb81713a9c7779304314c92ee60b4edb795065035 +0x56db6c9b02792ce0d1fa1b5656d4f685b77f9fcd +0x611dc7bd060c8be56e3fca079a2c7d85d450b162 +0x42141e7c293b487616b5d2c48910655243e8efe2 +0x6b1f06f57b55a8005ad65c9605a5731cf9c31672 +0x6bb3f182f30487af139e91efa90ee8d3d4048bae +0xf9f33353990f9b5708d0d794ba96bb1d11115d77 +0x510dfef416c3c556b6cd1b73cbcf800310a5c624 +0x352b1c56644a98fe95200267bbef6d0ddf8fd1a5 +0xba0d4bb6fa10c09eee0dca9b034cae349c4b13c3 +0x463c223508ce7d9a0344adcfafe8738d210caf20 +0x0573d495fe0d9084cbf651c2504fe6dc7d7cbdd3 +0x65f86930d0131bf2e152d8582f09f5adf588aa09 +0xb8410a0b73481901b5a310443f211bb4fc4b6e52 +0xde25f79186f516edb2c30f7691c95cca6aa391a8 +0x24d39ced441435608f00ee831a54a7aefe869a50 +0x35bd0ab078ce697762c0e2ec110e193c183e5749 +0xff1d4e09eef4f4b628f95c6930b934c39ed3addd +0xa81f9c64ca33aef217b96123c7bb9fb7f358cf7b +0xf75c25bc7d9551de4d51e5275655b60d009d7602 +0x519a72a9424cf4d78e803010caa9daf805a9652e +0x937d798fc1c359dbf58055bfa8981efd80f8e389 +0x6727aa3c021975ec12aae020c473528334b18c76 +0x86f2ecf08fed86f13bf5980021b965f19df88a1a +0xfcf859cce3ea37ca8863b99a0021d240534a27f7 +0xb2a4f56c667431aa3fa86b39078f67b7f5219062 +0xc6938441aaa05f54191c8144ae005866dee7c7e8 +0xc72d12e9eef083af7e5b75b7cf3b20cbe9ad5696 +0xb00d05f05cf498a087f5780436d25751cf91ca1d +0xb094bc6b0eed14fffaa72af59572b66d0b1dc7b3 +0xcdb8a7ccc8683a1bd3373d8fd28e198e88535693 +0xb1d93836b0e0e4eec8d07e61e09e305564399ed4 +0xdfda8ff20e2a8f3bfe0175b2b044041755c2b7e7 +0x7acce0df8524ef2140b23fba2b2009d1a2e36386 +0x16bc6a2b10ec12969b28e5338d08a15f36ee8946 +0x4b0a6c609a3dbf6bfc21d5576bb6cfcdba175bc9 +0x39bfeb0bb15b1e622f76abb8e24707ea33c20743 +0x7a3f125fdd8007fa9ceb5cb688502a2b5acc2540 +0x40542d649c29933956bed304f82764c17f38c3cf +0x26ae29f5b973a3099edf6f2fbb8ceb683066ffb3 +0x8bfd6a3a343d5553a3191b02aef93147d9631fd0 +0x0cfe4db9cdb9b2c5f2990bd03b2a7e0c8d5dfd68 +0x8a5e12f95d9c7f64caf9558a2016a9e2636dd71c +0x7663e2297bb44ef23a5d62200c2ec7774479ef8f +0x8ead940495c5830a16d6ad7023b019cd0e2c1a14 +0x38f9b768c5f19425c665d2a366394a5791f8f03e +0x6404e3e155a2c5360578ba31266038ab55ea3cb0 +0x740fe0fbb38f4d2e4a8204300daa072ea93f6bf7 +0x7ad1304e286e6934610ccfb3addfc9a9d4a2fe3f +0x2c101e6f75d685f29bcdbafda982f6ebfd30522c +0xc2d56eee56c6fca460660df11924659b4ba20855 +0x5a192d71749658532b594a1e6a7272d3b1fe65c9 +0x854cc80dd7ec1ec8a2a2b94317f54c3921085603 +0xbc8edb8a7eb4c247cb0db4c4185c564c6f65d428 +0x8b1df41aeabbb0c9d736a0cbb64fcf864f0458cc +0xcfcc661d13ae3eebc5c1cfdecb2db75f8782d5cc +0xf230fbe5e417b99fb2217211286abadf7a7f07c3 +0x85e02c43198ea51bf6d18a3ff38517df6895c45e +0xd7acaa71d12121fc350fe5971074b2624bb84106 +0x38d862dbb78b87647178458b2ab8763122039884 +0x939258f96b752d73e4e767032febe4d162445cd8 +0x0c301a78da5a70493aeb56662775b5f5e46f8985 +0x2173c34280c9275dd18b1dbd769e207530052c70 +0x4616d4253c7636bc807bd9e8a32e4e909d5cf96d +0x95f7046d682ef5da41b868d6760c1d80f18724e9 +0x061c0f2d5566dcde5f85612f5e0c0b2773c8f568 +0xe2dfe896ff5347bed2050dabf04bdb368920fa2f +0x5fb1559507797dd3f98b603622cbd3497039a043 +0xec1319527d82b6dbe63e1d6268e2fccdc9886a96 +0x2a9341618b0ba2ed246c0962b87991940376f690 +0x768ffa2904c1f422cdd2c16b6cf2a47e2631e3e6 +0x2d2c850126f893e0c9108eaa910e08403d401342 +0xf23bb5eca1e4e88c484d2f654323aa59648a1159 +0x39d255135a6e4cd4b893db115f9de6ee243e4add +0xf78b43abb4a39a8d94e66544622028894d45fc7f +0x663e57113733a7c3e2aff9fca24246f06cf39354 +0x439b52d5b6b42319da76b452f6e0237d41150f1d +0x76468c654c0d80b3bb09af2b479dbc56965e88d9 +0x9ae67274d001ed9131959cb7fcd07d048fb1231e +0x1f6e54ce4c85bc0a046e0650fb91606ac105c59c +0xa5c77513c4018f9a7e820b5de3dc8314cefd70ce +0x1df0d217a83d8610801799704804729a6c389fb3 +0xb2517378a7fb1a407a7ddddc57e6da9ab1e850d7 +0x8b6bbe3f11ddf9ed1d527658c3257b3278efbc48 +0xfa5b24df24a35b237f0a8b2c94140134e1e61b6f +0xa17aa973202291ac1fdae7c21e8e72cc4e823b69 +0xde01c7b01712ff2afaff3e792f7becbda6e53a95 +0x7203191395e9615fb3a867c5f92bb22fff761bf9 +0xe07ac5942afbbef05a984e9a5debf638c95cc847 +0x00b15fddab078e3d9cfd7e3448e4a9589aaae7d2 +0x50f47d3d6578a35dd923735c746c156f8c48491d +0x6545fd75ad7212c627a7d91db391732abb0c7323 +0x6c8157ae6659dba04744ee5b7f80b8c22c63ffc8 +0x9049cd55e645291a7f89fed0fb9b565aeb231664 +0xea32d33cd2d293b3fccfce62d5fb19e5962a2d92 +0xca0ad7b7148c41b0851b8c8ee7bf4606725a287c +0x047b3b476a18655024785c0a1131b4442f80250c +0x021b1582adba629681d1c100fe72fc0bd660d2df +0x42387e5925abb8fbb8e74b9acf02804bc45987c1 +0xe4c3482f5023fb7fe310269abfcf9640bfb938f4 +0xdfdf46904c8afe91c001bbd0fe9af533780d1d97 +0x43a68fca722f9c7672066a775de8feb64526a5d5 +0xc9ec67bb3cca90a8b6c4d8e5b8efa49ab01f3b4d +0x369a437239525e44f27fc3e48c76e400626bb419 +0x538de606eaa5af4ef2322c7b451d4f3336b7cbba +0xd12242fd8f2701fc0c3e1a7074fa05e1eca33ec8 +0xaa9665325cca43f773eb14b0166c45145931b1e0 +0xbf52bbebe39ba8a33846ab3a98ab135e362edc1c +0xda652e803ae41c2b580f7baf4ed7bdd184b54cac +0x0971fe8924c3b2ed66391cc4386488ff9a0e4989 +0x8e401ce27ffea2b8bd64a197429889d484d83106 +0x38552f51554114dadb2b526d193108f5d29346d1 +0x9d554c8094e8f4e96da43668ca81b1b29493f0ce +0x1a9ea8bd720eafa50dccdb626dc2f88a826763aa +0x2d97700d173235955876995b277d1d4dd0cf3b5f +0x857ad2efc69b02976c7adb68484956777d324e78 +0xe261229956fce214c1d48f3bd906abb6edaadabc +0x6f028e971e35e8fcc4c7011bb7472ef7dd196a70 +0x3150496ae07a4a7fb52920d424c9e032a88af36d +0x9317c9ba5c4998d233abacf446b65323811130f7 +0x58c448eeba97bca9c1cce25a42ae3cf25362edd5 +0x11fe451a82c21ddcc5daddcff91f099c4ae7c370 +0xabdddc83ddd79bb0fb69dc3f8e3c0c280c150fad +0x47058011124047ffb474e2c5d02fa7823e08f8d2 +0x50c2abd309d48ffed15b94aa76dca6e5f1a1bd28 +0xd4376180f584e355001b336dee797192457a1327 +0xace682b057e8197abd0cff9ac0150c5b20278405 +0xba1c8a0194be3eaa391c15d121def3c4e84b7c10 +0xc934d10f988498079718d9bad3a5630728b780e0 +0xeb06858ecde4415a43cfb8524a406a4698cea57c +0x2d9bfd83e219cda68c5c402a680b9d3069e5e456 +0x9469a54656fe8ae008115eeda913110d2f0264a6 +0x9050bb72d9b7a667d66d55c330e743903f3022a6 +0x2dcbd212567d10efe57e8a52d7a61b14f200cc42 +0x1c2730fbad75340bca4825bfe5fc9165f137234a +0x1ffeb4c1c6a2037448a864b7163719c1a5039bf1 +0x199ac1c9527f17deb15d932ea4cc0d9b06349f7d +0xba382b60787cb2f6d9623e429aceefbc4f39f6b2 +0x1b871aa98024cdabd29f41553917abdad3e8ff24 +0xaa41a4ebd39ee28ba2ebc6754884bf1eae568f27 +0x6cfa958b4271af95d147d9e5d8da1f362603a939 +0x375b8d693cf74a8fb684d2b92def639bfdb97981 +0x46d5ae2b945adf82503d50f40ac069a669f1fb84 +0xca92f2e38c2e7ecb544797cfc7dc10f691600640 +0x44cffef6545b16b58652cc18b5c455668cc55bf2 +0x7d4ac67d537931ca55e902b012870f211547ccfb +0xf55d20c8d41283edf7c98710ed0fc7660d1fe569 +0x3e9e9b19c8ee15c271e7fe74776da558688570c1 +0x6f10ef934b75817946983323981c1d486d60fa6d +0xc284cc04f449fc81e0a3f743942266b5fa4ae192 +0x3db4f3ad3a5a2205953ccad81bc8fdc99ed90ea8 +0x57092934453830a48b56eb44e223c164004a6f18 +0x5bd652b97bc7704ff861a9a933782af9d97bf244 +0x2ad94f0aecf081a67b00fc6a253924de1bf3fd1c +0x95be7e94961f4d21524d2a3949e8f7b8ffe9d104 +0xa831c0471ff24722ce841688bb42fd2d308362b0 +0x2f8f4fbb0d5689bf6bf826fc68e01fd4dfbfaf30 +0x87e70070df248cf0cba1581f31b0019d6edc77b8 +0x910c3da13cbf4748c333410a6cc513f9b10e2ae8 +0xd6b25d11274d96e70a7eb3170de7e3d4447eb5b7 +0x9ec19f23e3bd9a33bf9bb6d58091926fe5f1b19a +0x84fa5b87fb90669af1bb14c103b6fc5779d455e2 +0xd1ccc0e139f9afe4cb8f61e1d34bc08f6b659d31 +0x37eda8d84bfa8082d7dbfeb4ea3e99275c5a3e1a +0xccccca260844df4f9feddcc9203ea9b13c5f4434 +0x6c7499a9636fb35a549e02e91e04791f55002217 +0x3c616a49faae4c9066fad75dfab679177650ba89 +0x18fa6849ee7bd8269fa4325eeec0690417c8c0f1 +0x86e43654f7bc93dee97d7d97b88e23ef90c6a5c7 +0x98545ef1ab42ca751df30c33f491399f5db61768 +0xa3aa50b41f93ea1f397c976c82d0f7bb23f11d38 +0x9aa13e89d946907c342024075f45dd3c1c4f3893 +0xdc61419e464c21993c877706d808897e867486a9 +0x7f641664b7371de8747e85603daa564e42c9b2c3 +0x7537a086d51e1fa1e79347d9eefad63113509cd0 +0xe754c8623d03991be5f5c8e3a08c8577f9dd0181 +0x13f734733abc620f2f79ca05695b29179a0e7d70 +0xfccd7d3d9e40405724b1dd2fd5761f49978c517c +0x65f6ab8d6467da9d9a60baef550ec31b32aee273 +0x7fe0bd11f273a57f479ae0bb81ff1ff9774944aa +0x1a9416e898522c30ed527e5d68f8af7ea738ff3d +0x7fb87086e9575613696daba560757ca24b89fed4 +0xaf1fa11cbf19fd6ea3166a5c55c609625af8b28a +0xab2a229caeaefd6ff5b9f36743ae2ad9f9072264 +0x09f7a1c8f5aec4e76925d8b052cc4aaa9159f68e +0xda21532df11ab5cf98105bb00689d776a0cf3798 +0x96362c6703223f434f2b50335e9edb0113a73823 +0x39237b5a0a589e1aeacb3bed063ed17ea5833a83 +0xfb12bd28fbabca56836521feb8b549bed2bc0b2d +0x6b6afbb4b0846e453c4358a315827c5d6f1240f1 +0x1d7030259b8ee3c357a4b903fbeba71b83e3a47d +0x365807144dea0ffe08de39449d04e2d25d634c94 +0xc99fd9b7880128509ce50a30f4c15a75bfdacd15 +0x2b886131e1f6a86255e39fb7b71e0eaacf2daea4 +0x55aeab05cca0e89b12f8a5b51c56ae922716fb0d +0x136c27a1e7586108385d2e9984649eeef4322598 +0xbd0c551c30f5f253a4d35b2bc17f47a918417308 +0x507a8293d17e31891340be15dbddfdf0267777c7 +0xfa047515a186f583dafd6f26a357d6fbf8d14091 +0x066bbdbf82f868e399e9caf45e8946244f8e1287 +0x18d2ea44945d5f35eb3e8e0267d9b78db572c173 +0x1792dc75edbe2355099b42ee348b9fafe5e78e34 +0xd275efe127d9cb1ad15fcc96eb5e9a0f0849c91c +0x598f13c9ef6eaff79918f9bac7ed02bc7c592a1a +0xd6059720a90bf2205a2203135e3b485c72bb8b3d +0xf2ae078fe3413efd17eb9cefbef24dece8d40b37 +0x7e10ab9a21a7be17b339b289e6267ab6f378fd88 +0x23d1afa1df91de057cf80e9ef29a56d234fa65b1 +0x53247150766857ed89acf2c3c4a7cfd3e6029817 +0x704b24408d9f1b2e951e3aba97241726af2524ab +0xf3e8cbdfd7b1164c48f116ef33e785a2f9fa26c8 +0xc7dd6f24f47811c1f4370447fadd5bf11345292d +0x4b615d6cd84b4c10b46757f74cad94b0f0f06d47 +0xcb229e558646c28222ad7def82a9d1b1a56f1645 +0xa0093bd6c5c499300d1b8316ea79a69199ec4cfb +0x29a23de213823654f24320ffe9b069bf44907832 +0xc99ccb23c341d8a02113c63f735f36a8ab2d4be6 +0x3ab0f67540694848c684cb85073d3548dd4495ba +0x5de615ed7b409131de2a2b760fffc59dc90b24d6 +0x2882db1ce16297673b0f4e4c6b06f4621cf81702 +0x743d23c14d0d6f5460a7434772c4560f2b3ddb6b +0xa07a3a911ed6aba35e4b36f1352a2c70b725027a +0x1c57c0bf787fc5009451c58870b4112196283e1a +0x0b2d57aaf3c7251af2eb160c6f25e4d8313ec37b +0xa3e0cfcb6b802666846f3330c78055363b6a3c3b +0xe7d32eb6dacee5593f5db21b1f43be7c32276569 +0xd98112b95342e2c03447fab2b269f4ec606382ae +0x128c4b9e0320804913501a41e3dedcc0c82d4798 +0xa835dc8e2418b7f2c485d712dfd2b872cf4e272f +0xaba1f394067347d4b32957d78b3053862a43503a +0xf740fda0f4a0f4d1e52fbc01628dfea62ec56e3b +0x55bfc2ef90b893dea88830f0cef9fcf8cfeabc4f +0x68c90108a4c032d8a45ccc5dc4075a2c35438ff5 +0xe2be97f6c3d8f2bdc3bef5aef31a1ac8fcf7398d +0x42c5d198318f4c83267195c5f9946dd56f55efd1 +0x6a55072dcb44a3a7523150b219ff4c76f2d2ec28 +0xd564fdd7f363974b1d1a4ef7228c86eb715fb8ec +0x465349d17ce307dcb0e7b783c4d919148c8903b0 +0xc74b21f7d602db33dc29c5da5491581e822d015e +0x6d18aa0de0fe22c085121201bde9a41a717c602b +0x312dc850df8b77eec8400b25d07f051b56dbc8f4 +0x4993c65db048f9edbc1785ad897fa66718dcb63d +0x6ca5589293fbd6e421035bb957d13ce59d91ab94 +0x0ab881542949adb5c81b3fc3e56302d1326ebdbb +0xed3ee6db48fc27a06f2a3c24ad3a77342f515e3d +0x25a3e67dd9e27e2d44832842b71807c0157dccd1 +0x8e736d2527b8c3beb1cede977cdb9e8fda1738ca +0xb3e61e1784200469628527d12e5001ede413f911 +0xe99f838fc33d17bd1a76eb3c9247654db119c11e +0x83686c5ebbf9579529f1fd92eb90c78d614f1e86 +0xb9a019cb250f34067e44a7268164e7e3e69072b0 +0x0b21073cc40d28e75860ca65cbf6183d9ae8e4db +0x7b1c563995974e734c82514bafa2c06f6181e3f9 +0x77288e73387556b8d4aba3983a7dcf0f6db31526 +0xea709bb2e5ebf6261c2c2e2362fcb517f3b66720 +0xc7705f5e4154b96c9795494016586f0968529454 +0x2bf908a820e7b6599b69cc6ad413d8ca1653aa19 +0x7ffb98a356bc021f72bff2302b8561409ea6c350 +0x8e341d92ff88a8ccb26ac192d209c97f3669c550 +0x8a8daf8546f152a760b3fa20493e444fff9e89c2 +0x1319197c8a593e9725704995ecdb13b284dcddff +0xa6545fdb97245958bd75e1bfc417eff09f22e06d +0x840a800c795c751fa516bd5ad4bb23a7568c57d2 +0x89a63047ea70f3d488be29f62e2495bc9cbaf611 +0x26ef8762f159bdabe0640822779d9469c85c10c5 +0x6ef7d82acfcee8bd1cee854bf6b713759ff3f4b7 +0x5a34a4689caa2f22dd2d2515e9ea1afecb79fa28 +0x0f29676dbcfdb5533290f07948ef51d4111d3570 +0xa94204d3f7b24d183cf62bb8c3ea0f5feecae1b7 +0x2e5ee49b1b9aca991b0aa9e49c080d56c12d3572 +0xdbcb78bd5312b34a245b42a191bb61662d81edf8 +0xc0104e8385958915019ae79399eb5f88f0a3d310 +0x84c99241aca19affcbb0ee6eac066464c3b8097c +0xf2b41ded70fc7c2a16322aad452d7d591cca476a +0x951d7460a14f3f8d37ed66ff7e9be3be62a94a29 +0xb70316c256fc56e3edd29d3fe04b5b9749267840 +0xfc61843a23f7a3f3133d403e40d1b0b3dc952704 +0xc59994721c97dd78781680a053b0a8fbc8fc2c64 +0x64f14233fc7f804d201320be485ffbf0f6535969 +0x29c05d64adf6d2bc5a0cfa6491bbd1fdb65c78d1 +0x6db790c33f86af00a3277bc5b712ca6fdffdd452 +0x13da38d533f0fd1826204e1b2ce620b3a393513b +0x5a6e11e0c99d6a518b43f22a86c8b013e00d3a78 +0x68d4772f04a6d7c395ee360570da2fb32dc166ae +0x380f940f187056c875e0058459e3530f7ba5db69 +0x54ba1f505a7cc94c1dc73fc18ac63ba1e8a2908a +0x02da8ff947a0cb2c6bd9a7b1fa787cb3a13602d1 +0x0ba983604982b0080dfea545466803dd52b06974 +0x58ff6cc36da9bb8ebb519c77b4270257187d42c5 +0x50929b3a0c4313d60150a7b5cf5435b339dfb376 +0xf02010b6b5d830dc0e90a1c334c19baa69cd2d68 +0x5c44c26e412605c90b5552e16f75e2cc0b8a887f +0x37f03f030531a33567d91d34799e78e598788e23 +0x9b762d551362e9cf0e7ecb3bcf3d6445e5dce9d2 +0x0d73a190ae29b9a1759606ad6e07f6a29d32fecc +0x618b34dcb581a8b8290d65abf6781923b80a23c7 +0x6b6b9d860411ff55af91ed06025d4dc2fed1e117 +0x920a2950f733f8481a60c190fb9dced25a4de09d +0x7bea19de8f7993f96aedb2f1aab5bc2f3dabf212 +0xe5fa29fbc1fe04254892957f7e5f7d7036609926 +0x2a64d6f5a5a2b3dfeae678ae108022749b958ce1 +0xbe164a3dcaaf1f16b8563bd0a3e6b059e1c50f5a +0x379686cd831979cb2f505c2ffd6feccd48315a80 +0xf6fb922b796572432f43bbe403c27c9d46215247 +0x047a66e9ecf30a33cc440f9d81ad9e4922be40a1 +0xbdccd2321f43685041aa3097327d10d6ff18bc3c +0xcf50f1e2d33bd415d094d5c6d769c0ffcb895494 +0xb1fd74fcc477dd7515391aeb31663c75362c59e8 +0xbe772a20f983ac4a6f40a9b7d2352a701cb10c26 +0x17ca6a6c144879e9a2c92c20cf5fbe279c5924c7 +0x8385be42bf3983f6f5c44514c591b9b863c85a7a +0xec4f49e960241a385c3c863faf07b8d3a469e478 +0xaf63f72ac679fff9621d5b8bc160e53efd10faa5 +0x202a1b8fad195404823ae71f15ebc7c74c3f7afc +0xc0b155fcf05289e8351e5372ccb2a803354c63bc +0xb99420855bcd80b29acdfe5f4a3b8a2f670b410e +0x9e94e5f9e6e51fc652bda4a3854dadef63b50144 +0x334fcd84deb7594d3e86b8ce32336519041fa32a +0x5a0ad9385e9cb83da163fb63826fe0e83136f6bf +0xa1272ae5bcb7a6e86b4c78a296433257adcec283 +0x650dcecb55a2470aba2d27a38b01b3f8585b8879 +0x0be489a7948a468b359adbfc8bc55191d47822d7 +0x97005c1125a25ba9df9f3df68ac71507065349da +0xcc53e429f1ea74b944e0f52bc7179e145fdb4fb8 +0x4e13d04ca15e6a905df8cd91f7112fc674f1a61d +0xd48979c36d277acc10528375faf9aba071146228 +0xde56c24069969a3251e1c85014c0699258e8141e +0x1f5fa362c36d0f9ed41f3025b79d674054835f6c +0x2c93f5f3676ee2b068870017fcdc569895491c7c +0x5be4325af01762ee8408e086628f61171781d400 +0x83555dbaabe00f71f8c82f5cbe02aac2830a0a64 +0x0ef065f10107c961ad520f6e96fd887f8603a532 +0x801530d8ead68f31242a03a679ebae0f13cd920b +0xa81fcebc78144e0fd15b8657c427d55f68cdf9c3 +0x889f4bb06ab23ea577f83c566a79d9c4e1989aeb +0x48dc2771345153fe5642abe0b667d29a39e90b1c +0x0e72aaa13ef96d6c8823cca98db2845b9e833692 +0x64b697733ed0206303bc250d4f4d87d3f444c5ee +0x5b6e4a0711e1b3ab224501aba6c6b5212cc7f70b +0x497d2d3b37d42296d28ff97ad5e69a7a0cfa0ced +0xf5b00fa098e65f50849db4dc79b4e1e5dfcad6a1 +0x9379d0cf550d8797b5fca74184dd05860d323dc2 +0x97cd2658df48ca13bb1b4bdc33956a2c1d0c7f21 +0x1f1d60901fb2b6b9aaa633bd79cd4a590ed0e666 +0xe9d5574cd364620a48b8c75af428b5c568ce4cec +0x0ac30ca7a76b3fad0e7355f0509d6ab4db6b6ac8 +0xa49ca38465c202a566f00a092b25881a329bb54d +0x26a8f7ad13fffc47790c905e5bc5fae84896157a +0x0b5b741a13ecb885e0e97bb47da7072dcde60abb +0x09df0fac49986ba83fc8020fe8363df1f288692c +0x15f27ced806cd3ecf0f4213eba3f5d464e45fe19 +0x926d552f8c7d8ad70a3764627e78d2b359327453 +0x9988635fe480cb8f4c3b475016dda08cba4ce64a +0xfbc6b69adcd4842214aa6681580b4c63e14a6175 +0xd262a986adc6df4df26422db7c6886bd3e846259 +0xecd3ccd8fdf9fd4a65cc1b0dc4b50725bbe0d304 +0xbe7208ede01673d0b7338fef14cdd9218501ab81 +0x059af6a361735d948cdb66defd50fb80862b47b0 +0xa9c17f983e6dcb33182065249bd1618a13231c2f +0x8b569aec7831cb446c0a96a5bb8b85be00eb835b +0xd7d67593421e9e7679c709fad348b6e189163de5 +0x42857f308d9d40d32ebfef4525c397d1bb6c3538 +0xf588a9a1127e6faa5083b8c64dc7aa12cee5c9a5 +0x8f11bc3e7d49b46ce2f18f41270559e35f7abea5 +0x226466a7c016479236199ef8e3fc989ef47faa74 +0x186d22ac4f6d115fe6fb2094cdb6366626e0cb7c +0xbae7e742d138c6fee7fdbd4c824ea96893650825 +0x3a01c145cd338cc667ddf9e376c147fb987f3218 +0x4ea80729d751309fde37881eb90da45f0ec949e1 +0xe237eedbb144ffe7dbe84061d6b51e722b2368bb +0x8aa095b5f88cf6e760b136375ccfc5aa43214977 +0xf29ec3282bfc2a63731f3d6f9f036c978bc4eedf +0xb17897797b2c69e4be40bde657f703c3507e53cd +0x5a7957e033016feb811d67d9517d9d7c3856ff2c +0xfaeadcc3604dec5f3cdde17845a242962f96d6d6 +0x72c1dd1777a18929fc1acdd72f34c7cb64d18897 +0x72809ca45edcaf24fe7d3d0bbc885ac8cd672fd4 +0x08d1ead29e4f53116ecd418fa994cdd863d769cf +0xf85f8968f4bfdea7c09023c11e7bcb3a2173cdb8 +0x359447331ca9a918d1640ac110e3e1d6cae26b07 +0x37916bfbc3c9cd7e8390252975e29bca27d585e3 +0x829941b63c3eb3e1ed3dcf19065f089c5cce8426 +0x6507b87ffb5327308ee3ebc3548432a027c430bf +0x451c7c68ceff2a724fc66dfd5c887ba02254cb2b +0x05f131c7a59a62fa03c2f07ca7535cd06dcd5f7d +0xdcc751b7f3fdd182859f369386ad27557fb1d145 +0x3b38483231ea0ce28546402a7c185d4b3cc3f3e6 +0x16ef798c2e5767c8e671cf012d5f6641f9071dcc +0x49377b9c7b32fa547491e2a23a31cc5a434a9087 +0xef4394e347bc6c986080402c109efa4f5feed255 +0xc6c04a236049732d3a9cff9b8ca34411b289394e +0x004f07caa2f19486bed96f021db83eddc1c0ae7a +0x4e30bcf9cf937f437b80f3bd25a5ef3c3f0e0353 +0x65489555e266f830be592c69bf71b7e532e62caa +0x479eaa10081f7c288af80ebdc3653244de0b3ac0 +0xdade61b22c2700bc58e412f10d9fdbaef0847a6e +0x39f73ca38ee6aaddf65d9c7e7889fd30c8016d09 +0xd31bdfa99bfcd4cdcacdf75e758474b098ffb821 +0x155a2f9a959ce30b712670c54396fc553b027e3a +0xd52584cf0ecfd69a4a1f9db6fce7f12289f6a9e9 +0x0cd7200c03c299a674f03cef52a38ab5a80a62a0 +0x42f55f503f835a46c88c1496f2c5c246071c43f1 +0x19341c8ff82672a3a9fcfd063a5bb4197052bb26 +0x302a56e248e2a704eee354a0ad5fca485db9eb26 +0x1cfe1fc7237c0ef06dd908ba33d61f572017fcb9 +0xc4f4657352e49c831e5e83e8b769349701c71bd5 +0x8f4156ec0d8d03df3ce9bd9914196fa7e7722fc1 +0x9f48b22ddc14f623c963b4d5d8aaf9e09686f9a9 +0x1083c57f8f786083d76271c4eabfd44ce786ac09 +0xdceb62f279b31eacb4f05e5a0b64061d4f0da376 +0x4c611dcb89ea431dc39ed9f3dcb8faee740d61cc +0xad4496b226628502e83d1ef1ca724ee08d05fb52 +0x708a71636b5377e63d8b3c758e8d4e3716b21cae +0x3e566657fc6d362f5e1898bb56c37fa21b840452 +0xf27f854988fbdc7b4000b3c358db76ff71f87902 +0x1b23184eeb7dcfde781c2b97232ef85bcfde311f +0xea593ed6fd037d95421e80c0e00ccb9c492d2620 +0x3ed959fc49661a59b753f2671097385a980c49d3 +0x75a970bf1bdc3af9c3b973f390a70db42996a0e1 +0xe0f862dbf82de85b2678b85b240d74e9b600ce55 +0x2329f08db7b5ddfe9c059687dcaf538d6f8604fa +0x2e33da3bec80210ce893686c27efe93954a21277 +0x02cd88cf81eb263c974b86dd72005111a67b6f93 +0x5cad1ba5b385ded8ae03418dc6d55def547839f1 +0xfd4fdd4ee339c58b769d8535c7ff463d824b7d23 +0x0b525063b2b3043f9e169de578525dfee342cec6 +0x79f069f4150273c0dd07122725fbe403150cc4c3 +0x7bfc3e3763fadb575648ac9dbd65aa05ae8dd7d5 +0xab4ae3959edffeb18745be46ce1f7ffb8073cc04 +0x72d9e8749031a883d0ee37ea24cd5f9305386785 +0x841097978bc36bdfd94ab86cf2c90b4ce722a41a +0x160eb2241e232d0a886ff07db4ae985abf9468fd +0x5a217280ebb0c5bf9ab61782fb131accd6e697ed +0x1cc742a395328ecb281ff0a6a02b6a7d2d8c525f +0xc436d5cfeba74eb212e2e1adadc1209057d4a694 +0xbb1ad06b730f91039d149540f0cc6db914641fe7 +0x79e3aaf0dfb83e8da9d3fcf7662490691760448a +0x9609cfbf46e5ef4c6b557fc673f94c978c646a48 +0x2a97cf6c2d2b9f7fd06746cc5c9cf1d982ce06ba +0xc530b1c4ba34019f8f65836160f022e4b4a5f556 +0x9e629dfd8dcf082f53afc7aec124c82e9d9f140b +0xf47d4f8fa4c369b0e695d6c797ce711270259538 +0xffc5aa441714749da5fef0cbf41b591561f686b8 +0x9be34cfe72923cec91b9b9b3072e9f09573eb009 +0x4fdade6569f225947c50eae12eae64e9e4b034bc +0x52c3a5e9d5e7d68fa013ff26bbe4182439a362d6 +0xa1a8884a3b934eb16dab6ec80d895fe04849263d +0x241c70ef0187e6054a26332114c11339b376e331 +0x0bdab7e364e82b5da4d0b5e9f9410a15830c3efa +0xfb97df19cbaa4e2a1c2fd305fcd5272c56426a57 +0xd436a6b95993c802044ebf1e992aa86d80639ec3 +0x1bf5de2f3e80cc31aebbf43e28f43c87d9bbfbcd +0xb72425ce3d3be84bb507244c45104c40a8d378e9 +0xff87aff290788d785aa1f2ea85e6cafe713ae9f9 +0xa086caa624097b095b88ac69462b783c3068915e +0x790f2ec7d0e61b40184938336ffc2c92f0b39011 +0xf709b58aff04be3890c3ecd02b24bb7ec321b640 +0x04330ed6b72664fb4aaedf392ddf0e275dc182d3 +0x57dd63cd69cf9695bc1ccd25021c2974943bb002 +0x02ace67468a08bd09a1bf812bf065f2999dbccf4 +0x69556ef8ed5cd39b68d67b8cdc438d3d1541aead +0xafb71e3648120cd57c323ec32519c71e55bbed27 +0xc7990f379325b92ccdf619f4f43d0a0506dc8004 +0x983e6cf28a03abf8f28dd446e7cee4e13bedafd9 +0x72caa6f15ab80bc8a8b0e471b5f1323aec41ebbd +0x6924c7125db077c5ff2be1c9afdb322ca662965a +0x87b9f42cd64642974881f2bc67b29b07c6cc76c8 +0x60f55a25f85a0d4886f2afd09d11ee4b1631733b +0xb8487ae16a3926d16d099e13438ef50a6ed497af +0x09e3f81aef509732f637627afb0356f96b73f7b3 +0xd7deaf950815d037be735f2320582c6f276bac17 +0xfdacc63735f52e6319518ffc778abf8de718d010 +0x8056f99acd1dca92e4ebe2dedea0dc0b5cd8afbf +0xd14e1add09e4238c2b6d6bf69b73ce456ece51e9 +0x3773694ea1248fa871aa5117905ea0889fd1244e +0x24a4c9fc25a10a2725b8a3779ddb00a5fd256d85 +0xcadc3916dcc95603a20ee3bd79a64d965f1028ec +0x7f35c44376726b9b231d83561d0c0cfeaa4dad5c +0xb54be6043b3f9d4d14f9e82dcfa0f06e9fe2c41c +0x326d783468e045af387c88c774833dfc9bf8b5d5 +0x5515b6876dfbe659219066807fc26d49bd94eaa5 +0xe0c99a445afb626af7181c56971c5414a09aa5b5 +0xe5d3f8fc681708348f6d130afdcc97f582144cae +0xfb6f21ad49c570d18508b8d569a767307e45032f +0x234c89e1a4d0d9daa34197102cabba9eb497e050 +0x0b1f06ed464ed59b1f799c02c3366b5833a93d97 +0xaf9d823ca0623876cdf7dcd5c6eb906ff14d752a +0xc09d61e5e9b752119c44cda648bb0d37cc97d5fe +0x86cdce3cef46e58cb4b77388d97cc4d0acbc154e +0x4e553a04e989a32ecbbb1a8394bb6f853d1c24dd +0xe1a1e32bf653505deab27672e833e038941d2162 +0xa8a63c858bf39392881b9f6f5d6de30c0cf1d903 +0x3637059fd11332b447721976c99e9423789ceb63 +0xc17dfa1751917afe1e8cb5ffc9ecdb14633ebe01 +0x029823487e53112ea105efdfe74517cf56e19c61 +0xbcead37213c8df3fd9bce3138b6727e77c13b297 +0x6d223d6e93e9230dc6e7fc91387a8988db24b23c +0xa1f842f17c21dffcfd483aa446302c99e1fcf254 +0xbc00b4bfce0d95a9db7e1fcbe9121467c3a598ec +0x4d27caf31f152d35c0f4c9b6535c688ca09d3848 +0xfdfdb19c9874f0e217436ddffbad236f5bff5683 +0xf751ad98b1bebe8e44a1fb2f3fedf66af7d4e1b1 +0xc4fe629c115d533d67bbdf9b668f1750950e1795 +0x1c8d613fca63bd982ca32831674dd6833919396f +0x21690e185fa952008ce377dc86034c5dd87b8eec +0x1eb8270f0bb4d633cc3d9629e453aa92c3470984 +0xd615ca0ea2ce40a4f5c4f04671e774454dff1405 +0x2951c5d87f5225aac4dd30168c5cd6e5676f11f2 +0xb1926804b7b85bac60bb9ba0e593ba6bcee35d14 +0xfd11f5c083e8f1ef9b9a93dd2c02a526b07eef66 +0x243012b5f4a1776272a4b87dd3b9f2e98c4938f6 +0x9f891e719c21e3eafbe6ba8d1ecada36259adc30 +0xfff2393f344d206cca567ef6582b233e5106e61e +0x8bf2caad75c344d33cdcb3e8f2e5f08e12bc3666 +0x74c6d0ea66f90a4e92ba075f98434bddcfc8010b +0x2f0d0d2fc16d49c279de7e4635d8edb8fb312b4d +0xb21b545c7282a3fbf8d1bda011f5404ff8eaf3e5 +0x3da67edd935d58ef2b329d423554de8dc3b0e982 +0x997ce4fbe0319e4176215655fb266840eaf5ccbd +0x8bb785278bc8ab7d483d6cd5787a9da065492528 +0x986ed0381f09092bd369be4e3c15fe8a1996d246 +0xafbc68b64ede8a876b453c997038aab5809cde74 +0x0b38aff40e2bdc04088d6774b60ea13d310faeb2 +0x6e456adc97a81213f74dee8c12a1a63078f74a0e +0x6c09c9f2dab2516d54a0755d40ffb24271548207 +0xeb47be2bc88ef41269e986808494cb84949d8417 +0x860d87bc8ec41c3fb8c0bfe34542ed8e20359f2a +0x2f82dc0c39d1c7be7de9e8c0be0486e2687d5d59 +0xc1c11a3232385c83243b4b0637770ebe95b37acf +0x7f35caccf8b2fed3a520ef4cd768dbf0182e2a9c +0x4b2f52898194bda22517c297f44acd944e57cc95 +0x8c47e8a1c97c1b4e4b890732ac0bd2e7a9ef6f56 +0x03ca771c61dfaed0d5ae82699e301f77f0d24364 +0x7734c34e80dbd063f150edc40f3fc6c8b2e01c90 +0x053a305079416a6b77f229498073d30ca822c658 +0xde33c2de6df19ab2300d75df44e1cd0172ee97de +0x5d0b4731c31832b4a1d5925c9ec6de4261c154c9 +0x430a5a5d5d5c4260e3681bba6bc333fc683f717c +0x4470e06d7c50e04c5553126c659640c3a5a53b12 +0xb10326bbcd58aaf5576538ec62ae897ea3764332 +0x0143e979c9c4096e0f6914df529225fc42d8873b +0xa4f0d486f79945b0b75511b5bf732dde7d055570 +0x78aa0a6ff81fe4d79a2e520d3deec5f863c2462c +0x53c5f81d2c20e23b9175721aff62405439e4f531 +0x7d9fffcd6c0f0e0d40a06b25cda10117ef13438a +0xef46e0eba19968a117b634b1698d7bc6600ec828 +0x43cf17089bf8cf05e858ef3d01d2f45aa7b14356 +0xb1394195be535155b528fe490ca76ff9ac1b15fd +0x6f1bab35802ec2d3bbde2ed94670d334932027e1 +0xaecea75d6c44254f4dc160925ead29f7120cc5b0 +0xa2cfa6fea40384a199049a341f12cb7f4f994827 +0xdbc78ce94173252f3e86476f945fc8073b764253 +0x0e2c220d317f2dd8df3f0752424968c5c668dcf3 +0xd5debf2a5436d1a36be1acd52798a48b2421fd14 +0x8a707b565ac6ad65c9107314bd327bdbe5356764 +0x4228b7637b01de7d5569ef9cbb3ae209e7c099d1 +0xdf086cd5fa29b8131361d9255911563ffe891635 +0xd98eae836e91bdab657ebf8b78ce0b8015370f20 +0x78136371606e58754475ff3bff78a459113fd033 +0xf51e255e622b9c5328dc8ee99654097e58a29a32 +0xfa7cb715e75c6d42c20e0d12357f3c7cbcf7fd96 +0xe9abd1bcd27f14e20b0f28b7b9fc5f85378fb175 +0xbd448a2ef98d8a15a921663003812fcad689c00d +0x125015b0cd9a50dadb6dfc35cc618f494f37b660 +0x2ba3ce677b9a6ca3448906d128c34696551eb342 +0x10dc8549d21d500331c998b6c07cb6bb066d2dc6 +0x406f73498bdff1568f6a9d4554702aef8f90e4b6 +0x0b430902e266c3be5747dd31e0ab76b900378dff +0x1f6b5955edf81d32792700983465f6144146616c +0x97ce5291a14c438e385dae8d901e98ec98cbd6d5 +0xc37ef876aed1a74e33b7d90bbb590ab1df8d6f99 +0xe6e4f094a4ddd4d1d88abb7fa313df9c3915ccf0 +0x6fdb4d698124507d9cf940d42aabb04558eaa470 +0xf4832854e4200c3ba0d6bd4b98e4d38e5a6b8bb6 +0xfed01df1c73ad6b0d01452d5d52398edbd17d349 +0x1dc36ce9b33b2e0e2226266431d42c1ddf62de76 +0x5471b480c4d21948fd490c776e699668a103c532 +0x4e381b2033b228777fa84dc6f5ca0a7dc6af534d +0xd6e9a0cfd087ba0e5f8d6f85abea970c1c566d70 +0x36f3af1abdccc75e18288ef1c2dc30af4efb4f21 +0xc543d45ff8f6af5d50ba107f669b18f485d2bd5b +0x6dd35dec2a30e1faa3298f7ed4e7232a1c7c2098 +0xeab7737ed1160e196d1c6010f046f6c7b2f306f8 +0xbfc7cb744cb82a56b4d94db846b9f8f27a8fb3fb +0xcc17d1b41dfa102e32d9c15eda79dc1ae38d2f32 +0x63160765bc3119fc2ee50195cfd226c876d3247e +0xe7493cd05721f52f821bbd01df7ddcf6dc0cfe82 +0x82be67a3ca7dbddd155c3718132837fab59d8464 +0xb5e86553dc0cdbcf66bedd9df33caa6a48b50f16 +0xe0ff43685ed7a8b68b8533ec7fbf47a54b3c38a7 +0x27d050a53bab461b9ea6179118aa2b202e47621d +0xff34c21a2088a307e21b2e78c88b74be5da98c79 +0xb17b5ff1daa503a92a075684dce39bf3b34be9c5 +0xb86bc8535303050be1d31877150e9c3cf974a5c8 +0x9b6e9a47908ff3e40be2fb39823e7621228eb1cf +0x988659c9c507b6c911a7b358cad95d0838e61e2d +0x0b1241719d2c5b57fd76ef523407ed4ce22535ba +0x40d0ed21eab0e03ecd49044801f32af9408a55ec +0x2f16c97bbb496e76144a4a2bddac4c0f30e6a96a +0xbe1f68b45adce58921b5849b791b5219a9d1d35e +0xd53ffada9a6cef734f2f86f4d717f75d0eb944d5 +0x17ccc1d369cb42119d3455366d848fa52ad00c1c +0x690af52cd5889eacc7b5c7fa3b6bcd8a5b4cea1f +0x1e6e1cdaedcc25d1521de0210bd192f5931e6670 +0x5cfbdca6b777ff904a7aaa485411d79be8ec2ac0 +0xf3e1829cffe397d73ed1b5a02bed7aab823796ad +0xe300416b10108dd3540ee502835e1eb895da468c +0x604380a628aa1e5c37860f8984b57cd4c8970719 +0x1dcd7babe072397c05836fb906b834ff8a704c13 +0x667c1d868267aad2b45466ed4e2c64a32b02520d +0xe5d3d935f5cc7762e61dba696daaffafc0b6c0f2 +0xf49363f38dcf9ae72f38114a87bd4102ddc68d8a +0x3c528dc6f2c133db0e76c7a44c6ed4264c1c9f15 +0x989acf6b61ea5afd49b0dd9337969931bb6932e9 +0xdfc960df49ae2ebadd2c64490079a47836adc319 +0x2ba5dd74591b230ff2bff7e81e899cc287f12fca +0xbaeff6b45274d50e1a504b383bde7b02b5cba90d +0xf6110a6de63de1019f8e8874f5a45baa6bc3a6a6 +0x964eebaf1eae14e1ea129e8a4afb135ba74dc45f +0x19ad181979978452230aae762ded4d8f20d0309b +0x864277981bbd6d84d413385bf9faeb67a078747f +0xae2d660949a443762be37218dee5b308898e8962 +0x0323200e2bea11b3a58177485e433c142e0ad007 +0x7454707ddab8e186625605315e2ee41cd933b90e +0x91d2741019e66a3da7464e75a05eeb9d460633e9 +0xe9749d6336f8b59aabf7ffae406591aaf516f8f6 +0xcb0974897c8026866c9ef366817c760af8468814 +0xc50654b966897edd95a3b5467fde42c04d421a47 +0x5ce16efc0c7072c6855094616db4150f51fb6e4f +0xb49b090c0290d1633acc02aae5a956161803638e +0xf8b35c7117e6ad02cc460682181e01bdebe40894 +0xc530fb8b998ae25f6b28f46959755e5f82bbf77b +0x890a3783d01c9bf067e92ce0cd547b929292c67d +0xa80064991d83c05f35f301b5f16d5206c27ca686 +0x6c43a8628cf1e7c791cdca14d6659b29e2485e67 +0x6136c07b72bdf4d8fe1863a3274e02ad0d2cd317 +0x8625006e778e98c12aa833b5b58830f9af0619b3 +0xb7af802dd4dd18c220878dd83e762c3736d40035 +0x2692873c8da7bc8291eac35d049ba48f8f8f318e +0xdbdc01239e47276ee9cc5926b7feb7df8b7e0dc4 +0x3b15bdebf05387359e7ac5274f8a33567f957f44 +0x0ca8234d5701d0c425e7fdb18ef1737e304c40de +0x54f9fc444852effa44528e808559fffe641782cf +0x11021548388fae1218b913df1824bc9f050bb7b2 +0x660f2f993c5d7019fc817645b249acf0c3ea36f7 +0x1031d336c7af3b697f16cd7fc00c0c57af757eef +0xcbc53c20381ddb1d7951c2d7aa76f49e60b97f1c +0x6638f68ffbb6284753c500524e2ee6b750439f00 +0xc80a001e3b97126600c177d397099ac5066278aa +0x3ed71db100767fd2ade5f5ee14c326753bc445e2 +0x50b51517412b8a344fda22667ce8c312f861c53f +0xfb5b1d873300ec5119c671bcd9ba0a79a9c69ff3 +0x15d9a44f71beb306a462126f17811b35f1bfb2cc +0x73b837e0c2545e4aa848444814e30db6dfd78e89 +0xe0e66f918bc47b35583f57aa838321a5af227033 +0x4955db6a892627a2b542792702ae7b0f100ea72c +0x3323bd18bb314e3d3b32ec01b643709de3b7b181 +0x59722bd6878bbb851f78a374fa32d7e3d3277238 +0x7215ebf66d92b4b396ac058a80fff6496b27c334 +0xf7d5cd2bc7ff6c2b12c1e57f7def59621a3f9c27 +0x48c0d3e0d300ea5dd49ef5ec1f7a6c859c2fc577 +0x0c38fcb971271e4cc32fee302226c54c06f3af55 +0x275b331b31028c11c81efa77bffac730494c95c1 +0xfe7fbf508c6d1ceebd80279cb0c924bbb7aa285c +0x013581b95090bfec04f85e941f7cd600284d726b +0x05f11fd5bc5242bf567d7bfb84ea4ebec3a6615b +0x4bd1456315783817bbc7662356191804ac1a60be +0xd5084e00ec81c5c2472fb8d5c3233cee9ec4f247 +0x0a163205ee18af8b2f9c5f34dbb71141cfbf6f16 +0x59b69fab2956cc6d2397126c217dcb042cf6f980 +0xaeb57c6c1511369383d9f2f9f2b9608783ed7bb5 +0x1a4ff540adecc847112275484fe9bfdbcfcdd493 +0x992b5b9fb6e2a91483bd60772107a1f7a9002397 +0x6e4f033dc8d8423d7b6835d2a51ebce58cbd1087 +0x38abaac64cd744782058eeebe1303446ba2d4808 +0x3c12c79258b7214fec3338e065bd7775644a06ad +0xba9f9cd53fcc02d75d7f638c7517b3e00f770b1b +0x4d25f6f9ea5b7c0323e1e82f066123cf03926dc4 +0xc633da0e486d21d26b4a39ea9c9364ebe3fc1d66 +0xb46e6ebe415ab907e89d93e35b05b09521d91f5a +0x2da2dbef441d4b78233800bd35d9c0bb394d9544 +0xa31da64bcb492f4e6664dccaf44d8a6b42c209dc +0x8bcb6827f2b5c54eb7f41af196c323e8ff2980be +0x11243eb630af1506e3c0f21fdc13e062219848e9 +0x181deb7b7b7083e6475142497c4c55a270d736b3 +0xec05937d362825ce6c3851d9ee56dfba8f394f75 +0x85040ce633eb28d27010b4aa1538f6f04ccdfd9d +0x294365cfb46eb3ea0e7bf23b527a64066fd5a5da +0x3f3fdcf3068e0ad59e5623b501dcf94becf7fe59 +0xd544c316ecdc80730cbea1e6f0e0b32fac35184c +0x3ca2d90a4f64d91729e3b4368a7fffad843ba671 +0xe681a036d2350a223c0a91cf3b534a7051393dd7 +0x1fe722bee8cfbad51d30615bc03542218994b7d5 +0x3c0ae05eedf8a261af08c1f5657a37e143ab4f23 +0x0f6e8ac3ac6b74897b1569df3e7f7f3e1260dea5 +0xdd4467a84bb5a1b6dfc88e2bf62535a746058f59 +0xeda0b1ca5be5a3815af24e89e35252560e8c62b7 +0x2702bd676b9fb304f200293f67432c6d208de54f +0xbaf955b62e3b9122cfba6e332806e1741cbbfc5e +0xde6992223b443a0b323bf1958ab3d3f610a7962c +0x46a204d56918cf83374cca2848e4c841d007f38d +0x2a55afe410d996c685e44554f8b2e154143caead +0x6f1d0489efe63aab2106d4ecf27dbb861df0e558 +0x92825b5690e19f6b6f99895983d4778e70690444 +0xfc9c6a7efcf3f2f8be3bcb755823736d0537ba0e +0xd58308ec6653d91c78e69f974147a43856f3bb2e +0x06e3aaf6a9b72165fbee62e4983bd7c1895af1cb +0x3e6447ae8eec2e0d621de27d450b14b59bc38cda +0xfcae97e71bf812da88daa51775daaac16c50f86a +0x47e8fa16bac5be2a86d601e53867371f9ad679d5 +0xbacf9b1130aba206f8454b4cb21f080acc01f054 +0x7559e9e0458cb1f7ceaf34a496b15cd1bd18349f +0x750fb9265044b088c510e1273ddd1aa1311f475d +0xee1426a161424188011da884321d36b9fb6a5496 +0xfa2979dd612d23be3c758f863c7d9cf82df2a12a +0x2b9318565c8c61881bd94c5a37d1a5971978319d +0x66b4c589a2a5a95a9e829b0dd37ec6e000e108f9 +0xde5b58f77eabdabe4a3746d7558def9f40c998e9 +0x82969a9386f1aaccf58b1b28962e30c32ccf722c +0x211e6084a6b2ba20ff6fcd35da993d9d9abb6473 +0x231235f53c0ef053c05eb376895e3d6779bde43d +0xdb4912220ebfe68ef89a6e88b2974fcdb1c5906f +0xadd307ff64118eedf0365640bf0b97604f644d7f +0xaf91c2302bad0db6405b51cf6987efb42740c755 +0xa765ce91740dfc15646f756780bb66305e9d3d87 +0x41b059e186a01159af28ba7324587b7e5429a3ea +0x4f52029018b40823476147682e26d1aaca5a0894 +0x15b29118063cbc89e0e201435e3f5f5f99ff3761 +0xba16f70203b58ba97fed69dccda3cdab148e4cae +0x6395a292486a0d91866f11d7d76d864ed70582ea +0xb89b64330a9c6a9b53abb4b2fd6877cfba5ed1ad +0x039c249c9fdfdd43c625fcbbaeb6f69f044b0727 +0xe3bbad2d0ca96b52c284b74e35540a28afeaabe4 +0x1e5f1a0a7dbaa8c9548ee27e6c18d082f6303827 +0x95a0e03382a92c3fd926a66541e0d699bb2e0c3d +0x86f7c85cd33e4d80e0b0262d9386672df091b090 +0x64c7acf683dbcedc6911b6bd626d79086dd98e4f +0x3148220ccc0c6f8dbcff8c18315c8f7f7189d121 +0x0636c42d755f52519a27e0cf50678a9c15590b61 +0x60fa70025b4c61075ce2e63d681063ce43f26e9d +0x63a7a5701ced5e3692bbc33370c23eab09cf9cb5 +0x92f9ece5063a84867e468bfa5525ba433bfe3949 +0xf218292c197da0dca426d079e984a6f87a080d8f +0x88a07aa3af37b89f8d58dfb726fac395d715ff62 +0x3e1f3be95b003f8cea049c203730baba3ac6fda0 +0x2aaf7cf4b954e7fac6b5a593e4084cab5b8e2144 +0x4d3ee2fd7b2906bc45c0836df540890c4f9ae550 +0x1d8b90e052a599a2bd643bc7dae9884694181949 +0x46f7ba2367736093628e9b55d1733e2f6f3c87dc +0xe057b67888715f89f6ad45b372683675c10e2d73 +0x627cc60725b817eff4e7ea4eaf231e2704a1ea82 +0x8f329b644cf562d2424a4577f79595e3263eed69 +0xa86dc52a3826d3e4f42d2425e08d48c46b4f140a +0x4d174fe651ab451a5df41edbc5decef1ba9ab561 +0x6c89385895107fb413e65aef7a37d7d1f7c551c7 +0xe5c2b0102207971b415e45855fc9d99ac29e1c03 +0x71641046052a274b0c4f0ec04398a99581fb399c +0x884af362e1bf2eca247f306ec36babe885e62d61 +0x64f32e915613a9e04dc671860e560efb8c81a73a +0x82985a430f003e1fc62158319fd40f9477bac3cd +0x282a0cebb7a0c015e5d5c313b8534b031a6f73ba +0xca4391e0c99352287a264363d58514de065b1712 +0x6daff9e9e5e24870a0f53b2eccd248093b21b301 +0x607cb9a94b3439948d369efb46e700f35d8a150f +0xac7cf5b38513f145f8840a95b6b88e5ce85fb3b0 +0xa5c6a44c635348e984e77a037e571b73d5e11c7d +0xc1fe95534cd668c9f43ffe8cdc6fd0000a759f76 +0xf6da8b521ff8382f95eb2b542034a22ad348ef9e +0x4910a78b55ce98181a57b88a969ad187cc149b5f +0xa85863bff648d94d5c03f58ed0fa4480478f053d +0x900dfc586ce28f599ec5b83c2e24949792c759e3 +0x95e7e683d3a6e55e0d53d33da3858d8ae75ecff4 +0xcd27268b442583c2084cbd284ab03bfd96d83866 +0x549fb784b704d55a84bb487adaf7e6c37c3490b8 +0x43efe7a6b2647661572990ff642349d8a533ea15 +0x3a2859e9695fce3cc08b291d729f1e52e0a80ff4 +0x299ddf12b4659ab20d5746c146b129dd24add7a8 +0x8afbfe2f10224c99500abeae3f1c0441fefbccd1 +0x27cd5df8ce982886c7b849bab93aaa084074bb48 +0x074664639b6a5d75b6c661fdbeec6fab28c94ad1 +0xd0a7ce0080be9dffd50be7bef8320be58a5f1081 +0x5b8d3dc31b6864842e947cd58c709a25e08d0693 +0xc135c4dce1fb618d52b768713bc7b7cef4739773 +0x8187087a9e73fb687fdd0482a96a5ae817492c95 +0xa9cd74ab9abdaba94fa10b01fa1c16e20509c045 +0x8d7c7cad865b2b59f4ef0436c7b8e2ef3f0b14bb +0xeba5248ac1204cd83a41e029f4395999db2ad8c9 +0x701c7f91cc453c65227ec3a38e85e3d6d3dc733c +0x1341667b098baa405447c276de366ae6a03d196e +0x340a0a0f0a40582e2cfa4715259b34a0aff5a6f2 +0x88534d6f4f3121ac53350492a43c1eec5e246df6 +0x83eb83eb814f825e2254cc4133cf926ca6dd5114 +0xaa34b2d6f749628a3d7fb808702624ad33b1de35 +0x2dda3d6f3dc338f24968062d29d5f1961f2c2f01 +0x3276546f2d79875e06e12f1d2795596e1c2d882c +0x021010d2acfe417de10eb2d2701e400366252f09 +0xe2ce91002ea9d5e63524019711b6ceafb6e1e7ad +0x7bf928e54e84b12ec18a46404b46807f684a1070 +0x78a5adde87b697f5cc78d3c35b9ba541e0d0c8fa +0x4491511f7950d1f2b70a691811dd590a2b8aa535 +0x53931fb466a16d9a9980cb633f5fc24ff9942973 +0xf0800f96fa5700ce987dd2469e18c2fcca09b0ce +0xa9739467aa5d2fc10df4ad8cdb422a89b1e395fb +0xf4d50299ad78ed0df7a55b1adfc931e38c8ae8d7 +0xbad4fa282253c24c3642c5445d8bf435aff9f00f +0xcd498eaa40c06f8ca7ce655af391178d00825060 +0x7bba28378df75e4e6e5dcad3fe21d23ed0a64208 +0x3bacbbd0d0faafe34471fdf6227fec1f024dca9d +0x30431261d6fbe5d8277499d4439ced74bb6053ac +0x45a18fa05c55d43cd54827484e17a60ca96dde45 +0x8714ca29f254bfd6f9ad8425e784b18ddc2e1ff0 +0x82911641a60c16046e431d64f75607e960a394bf +0x3b3103903e2ee2b5475588da0c9fc4424ae2ba92 +0xf915d5e47262ccc3de10536cad63844e2bf3b45c +0x3610739d079d686d862d4dbf7723f785851178fb +0x708fac94e02d49e42ab494ba77800cf07b4082b0 +0xd092eb71d51926c52816f17b96c276d34708d9f1 +0xee6aa6b487c309667a2e0abc350a14b32b196b61 +0x9fa136d65a3cbe32fd451c6b7767c0b2426c99d4 +0xdddc37edae65b1db0d0edee6b1c2b5292620e5f0 +0x1856e8d78aac515b4680c602c35a5a29946af59e +0x01a8bc9613a86914f0d2f01edf6f446dce04e5fb +0xfa4495ffedaeeff1db5bc8a124a307cc6c240b46 +0x3a3b3431b41a74efc62f9d881f47cf5f399408cc +0x075975902d8b4ed81eda1f24f389a8a7f270a7b9 +0x509810702a303da8ec4512b494109aadef6d4c0e +0x86a3ce404a9a8496c4cb04dee8b3602f0240ad20 +0xd660d46c0455a5cb33b9e5ed3e0b8c83e78c9625 +0x99eb107a1d4ecd13b822496ce5de300b8accadaa +0xb31d2d7b1b1c858e8f13b7d62ac70f260df222dd +0x954846f9f34046ca8bfd18d0c3eab39e06323fa2 +0xfbbba2e0bef48d4eccd689579a3f0c3f556474da +0x85188455231305d62cead327f1225ec4ae598b01 +0x753dd619545fab24f7b3d38c46332488efba380b +0x4bf7d713a84d49d41205ba4130bf603fe2c49bdf +0x8e3eccac7f0a1dff66c79eae9fe57c419b5c30cf +0x05bc148a1d3b2399e3156f3e73804006b3ce0dbd +0x04f5ae99faa721c9b2fdd1a76e5363a4952d02da +0xbc484c7b598c760b82b122c0c38907928dc7bf99 +0xef2d7e8cde3896fe2c83ca2240f6de97ce5498b9 +0x3aac3d75bf5ec82e76a6340d1ef706bdcd140d35 +0x45dd3e0e688606ac9b63942785d310756b78ec3c +0x38464d1e58c96b296f790c2b4dcd463bb46282f5 +0x2983a14faff6e06e9726ceb06440879e767196cb +0x3052a52d965e41522dadbfe1fc1abb9cc01e36f3 +0x56ff4a289000866de8ff6788eaeb8f60e423e538 +0x57865679c18fa96d75f7c10d29b050c410520258 +0xfd7b016d76192d4add1fa6380488b8851a264d4f +0xc53635b4e1f7316cf94ea1491fa460adc60bf1d3 +0x294614b231afd55f2cf417dd1cc501ccc945a11b +0x1c1eeb7704d1feed105755f81ef62ea03b2e8c34 +0xf41b3f75333b52abdead094b5392a808db6956a2 +0x5a8a15bcfe0fa1edba866f74f8b24165a4e71cde +0xa69d24364a22a42c1403b666ab0bc6f9cba04c7d +0x92c64e3b1cb49fd27ccd61ea20ad25b6b1149bb6 +0x3688378e63cf0a5a7625261ebc05b55bd093ab93 +0x6d3dfe1c815513ddfa6025f36847ce7dc7fff008 +0xb3acc8b358b80863b5cd6f0266462ac68a241ce9 +0xc5588ab9b93766125d07ab45e2b032ac1fa13b5b +0xd0e24d6cc3a8a6fca7caf73343cd0463340e88b6 +0x89e6ab8abe3babcc26c2d94efa5113ad1039f31e +0x2df65d9e7d0255368d7c16ffbac3c4dd365eb0aa +0x0d9c6b602288c0b0b051513505db90ffce541c50 +0x7735d88afbb4de6653f98a9df0f5b2b41b02d488 +0x2f5c25c7ad89139259a9b68eb9d91ab8da799f18 +0x2a12460f3d82ec3123db9e6aa21f3fb2a73d4d41 +0x6b6ccab8b8c3a84c52ecd0bef0643ca39c4a6371 +0x57090effc73e535bcef424ddbd84f16e25a3ade7 +0xbb91e1aadced3bde8d75209ba3ad809811e029a6 +0xb6deac15dc2cbed2fea302d8cf85072de3235e67 +0xf86543c77324f112e2d3bf179643d7019bc21314 +0xc4a1cc96ad3bcf78f568715c0afbe3df18091527 +0x4be8129df43e15816dbc4f9304ea93c93af4609c +0x4bbf98dfc1602bab3e1e7e17d8c1634f9d08812e +0xa377bce8984107badb4f7ae0f66fcc7d1a315130 +0x8fa3b9d62185a19c862a4b100d687999741fb616 +0x20e9cac605078c51b319f29c98f7efb04b93f335 +0x1c0813c574d7ce03c2e81263b16b80c4b076e32c +0x57b42730abf2f9711770e8b74d8d4e87668b848e +0x7ee902c3dcc93e2ad97af90e54e0c8a847b6e1fc +0x01a5d3aff9278b78499c62810c4b85743ddb7855 +0xc04bf8f3a7331288f53124a2b2780a03141d7774 +0x7c111bfec16fe5b6db556fc5aed8528a76719dfe +0x474d68414ae986cbf20672e9a443e9272f4e2d5e +0x01bc7418e067d3e419f420f9e2415514ef99ece7 +0x8dc2509c5ac278fffddafd455816d3169b2d5260 +0x4bb7189188623fee6d4a3859387a7d86cc382b6e +0xe855a367aeb30d1267b05da413172341aedb9ed0 +0x95d8b7d1fa9cb52960b33270a1b45524551a1ef9 +0x3077e195e02ee442bfea7021a4d656966293a651 +0x3cc2ccab5cc07d939e514919aefdda11c8de4c54 +0xd2a82dfbbc0c298d44bc01cca5e20749246bd549 +0xc7f7ccc6ca8ead1a8b2c6cdd7802da211813b11a +0xde0304a115f3831f238e11ccbfada6db3c20e3b4 +0x1b00d52d74dab1ab60ca05263c718bc5b6af017a +0x333a9c97fc7ae1f127e4736ba60dce1e040e1d80 +0x81780bbb617455cbcf52910fdb4550e24c28880a +0x980ccfa10725c85937e8dfb99c22f23b44f09a43 +0x76ffe2f8ff51ce5a1d69e93537adf96038d75ea9 +0x9124b0c9d33c1ce00e5dd431002233e64184077d +0xcaf7122acc155d44b16296644c9cae5f6bf245ae +0xe894bbcc78bf56069fd101ba8790c32a9c899679 +0xa10929e318da1aa9133ff6e299f0baaa265870fa +0xf4a707c1d9884e5e24e063778775d3c003663209 +0x7f9fa29e3acd4b829655a467c2a9dbfb87eafe6b +0x1acc0d460f24fdff59c57026a6eb0e8cbdce696f +0xd13486af558ac5b4e620abf89bcb71937e2b46c4 +0xdc00d6956dfba44fd20bab0a16dd9c443459ea32 +0x25067a8ede207ecf954cdf2f6c6c770b214eb6b4 +0x07c9c6e52a3cc5983c77b3016383be72e71c6f3e +0x10e615a4669bb568ff3b3776b708520a7f360cfa +0xa607e7ab723fab26b3248eca9a67e950480217ff +0xd5c8648e3527d067ef431c73a95739b03b3b0f2e +0x854447e5707ff771f00faa964f985861c310e797 +0x627c234cd40ed0f0b835f868ea66fa66216af17a +0x6c3ea39b05631e70595953d0c4e4bc5fe9a8295e +0xc81c2f955af26b1778f194fb3d21214689890bac +0xcd5b7905001f17c6e8338c09edec0f4e9fc6e932 +0x1d2e90b618a9a95ab2c7355c6aa6c7b29efbfba7 +0x9fff56a13500ed1f466bc99edf0a8ee6b3d6a788 +0x07dae06d57adf69c42a8a11fd51892a83ab560cb +0x293a2fff5de05305766ea222ca36bb4062480407 +0xff7b70e74ef841f17a8ec3d0ddac3eb571986483 +0xc88bff90738f0d6c787b1e4718c0ba004ede8705 +0x683be9d7bab55b58fab04c28907ac00eefb2ad8c +0xa90eda9f2edbf6f40ac2c87f760cad433fde4bd2 +0x00e8ca1825e464931c2f260ee6dc28ce7ca28dfc +0xcab7ab37bcb462a727365264a4eb8f3079cbec7f +0xdf88e0fc20922751379a8974e77c34f2f661b32a +0x6db015e1a30c0b1d495a58f14396bd1bc850a64a +0x8470b14015475cd0e4e2fbc5f52f79f7d1d74117 +0xb20ab05ac910174b5d6db34f7e028a2f0554a6d7 +0x97da91dc99e309ef7f3d93e495d7ce6a5aa30cf3 +0xf96f23d56b28aacd4cecb17467f9956346abcd93 +0x104f3c431ba075b117ac82d26bafcadda93b96ec +0xb226c412c906961b5c1b3e6205becbc7ee777bcd +0xd934b2b9b1a0fbd88cd2820bd5ff127d2e7178fe +0x1dcaa0bd8551bac8ecdb6a6c780c798b24d2607d +0x0563ee66911e115f045d2c58f841d880d462fbd7 +0x79fc7db24f0b4ea03280805cf763697f45c2fa00 +0x2b1e34bca9b675d84dfe5f6eb165faa3f6058092 +0x77a794d6ac1308f91ec6ce61df3f8eaf58b7cb37 +0x396772ca94d2b7cb2e6aa73934eedda06b2b8c61 +0x392bb8e3be8e92b4b29413e1c9f4c69f08f27eca +0x055b35d7b0e4af80d4bb9dc473cb817b7d2d0508 +0xcf4ffa0aafceecb359b33c14856a64f9c89f39fb +0x43abe7de77a29ed064c8074d2bd3b0ca71a83ae6 +0x8ab9f023d662704beb5e9d3344267c76b712593b +0x2e6bdc5233e952166b3a2024202edf52d42009ad +0x2ebeeb819aa18ce6222c74fdf165d7dccc5ed426 +0x320aa918b29b9a245fc581cf534cdd82ab0e0d8f +0x279464994e9a29be105209fe6c1c6623c9bc5b31 +0xee531288476d8e974662f39c71e7640d8e63935a +0x47732b55907ce5f7dbd907056a52e445c1157969 +0x9b00dec565d9928944da461d152a19d614975249 +0x7e9b4999a328b6b3037972c9a4652bdc5b62f097 +0x1ada742439b2efed27ab166864e01f4ce8cbd128 +0xbc4cedb1dceaba7701ecd2380f47aef2d72f043d +0x50c770a00e659f03080727797eb86280da343366 +0xc09076ca454c29f89cb31bbd6203980783373088 +0x991d6983919d56186509b07517a855d1a8f8dce4 +0x56eaf758e56ad50ac5beb7204b382d501cae3ada +0x3654eb55e18d0373131fa937df4f74708d223625 +0xea97588dd8d97ca781964846e894d2267e62c5d5 +0x54d8c6f7f6d63f42a6ae35501e016c2791a33df1 +0x4538d7af4f43e91cae09b590bcecd37a574ee937 +0xf0c05a926d2c786d92bed5db4dd380e6a6de3306 +0x6fb101086f5def29e0c59b2fa4824da9aa3ae9ba +0xd81d1e804347f9da9f7495fd5bb977b686b0b9ed +0x6c31f9ad62fe0137da9d22f266f4bd429a765271 +0x910af8e4abd630da2dc909e31d6d0002c2f113ad +0x5fa4d4e38ead8b0a7a1327cfaf922588f9c3e221 +0x399a99a3076403533f40f90fbda585f0abfa27f4 +0xedf50ab6c2c1fa073a4ace66dcb5b4d2a1eee18c +0xfff6891f44ab61bc337f27e4299f0c7fe294052a +0x115c93f90e4a98e6408aa126cbfe4b67002b465b +0x6d170d4ee5a3baa4d402ddb7cc1d0d73bbc25e15 +0x70cc506c17b1cfbd1460db9ad443cf98467d056d +0x6d4ec5f3656111d095c89c0e38d453ef9d5a2419 +0xef18fbc15e81e1b3fa75d0a75116edd3efac3a9d +0xe1b5b843540c29b4632c436717ac5dad0c18ab9e +0xb20c3b4b424b76707ef5f0726fdd861bec678acb +0xd8ca925d4b90c29c22a6e8baae40bcdf9f52d831 +0x10b527ae92df2cc90db6f8c458381753b3c8e871 +0x09af69e0f8449aa1255ee99459fcbe3f76775072 +0x072c8bf2cd7120781972f4a1f8b0f69aba8dcae0 +0xa193782723e78557561dbc4c5533015c2d6e5d51 +0x9990220398bb17f4f98da295f6e27956bcd1a257 +0x0367271b0abf039bb5cef62f496e9e4c4bc441d0 +0xc3feee232ec52964714cf68dbcfd8808f6280e90 +0xacaa6ca8c867dd6f4e81385b9a132aa3d347f82a +0xd94ee698b4b36605cd2a6a88c9aa349e3d676eff +0x12b46121f6ed7fc7797756c2a8337ef04e73d04c +0xc78303bec83afb448e30b0bd0262d1236c30fa58 +0x2c3ac724e85466891a42cf458635256d9d97ac39 +0xae92ea73edf60a1a0e92a66c32d2a19c27ee8a30 +0x270ea61dd21140641d6f0f9cc40d7cfd74891e1e +0xa858a89760836bc0e2772961086c213aa169dee9 +0x8fbfc0691945556cac407dc6305ed7c9c3d9bf9d +0x0f2b16407a35f248e8adb79840c8f656aa68e045 +0x3b1d2dc51b7065dbe7f80377041a73da54ae51a6 +0xa511709826a7326fbaf4182f76e7332682296d52 +0xf891dff3f405acc45a1d39c126e0ae46f18995a7 +0x88e9c7a4af3b793953faf261aad7cb404eac5732 +0x736f22a155e4ca767c08b7fe13e5f8cf223fcb94 +0x5a0b51eca21a08f2bafce3937a74eae37b70b1d9 +0xc7298c08aa494d3839de5933ca32959242b0f5d6 +0x4b02e52ffd8c41e37f6065b95b0f6e0bfddccfb2 +0xae202c7b43d7362543a6e2528760df39a7610791 +0x0b1560768b81af0fd1dc03f11eeeead0fff4efa4 +0x530dd9fe3512fcc064dd039f9d25f3d414d24d50 +0x1dadb9b7776aa539989a4fde668478ef4cf2027f +0xc511ee31cdd3eb39322a2821e867ce4af5d15864 +0x581429238c570a2207c62e372d1b39a63f712669 +0x8157e90ecc7a83fb0c5dfbe92ac8b654fde91c41 +0xe0cfbdc0fa5ed8c7355e412d6fe76acd4882bce6 +0x6a72568725d8ea12baf91ac09d26e52c535353d6 +0x20e7227710c2a5fad2263b8fbf9e8cba4395023a +0xa6aedaec50e7941978e04d0505156d36da3e744d +0xc1170bda1088e3320651b830f16283d4c64e1d19 +0xf21741ef3b0868e1d7aed897f77849bca5f4a973 +0x5524d9f7efdea628d0e8b4638f71b1df28edfa4c +0x57aaeb65730fc05fab1df3da7515f0f69a1a69ea +0x7af1f6c16c4cae0dc6c96ff8fb99bdd3de7c43e8 +0xdcdbee0420a708c0cfe0dcee63db95c668691253 +0x280d668221b955396ec4d629c512d8e577e5df88 +0xd81ca9577986b1e12496f6e751f2a29429e20c32 +0x60f5bfc79293b38edc1e94755fbc49d81c8103fb +0x63d4bf2ff71c764b081d91aa7d20e213a5be9af3 +0x176ddd9e23d1ce174841a6e81db8874195d7415f +0x6a2a96ddc4b17099e2ba66229898db3011121418 +0xf4add7489de68b7ffa9f72cdfcc0170132079ef8 +0xd7db43061c95722c5cfdd9d86f97507a50cb440c +0xcc7c05ab7668da6cd9a34662f67f01c6f5cc083b +0x5fc9428203531332134084113c028cf1599e877c +0x0da492f9710ed7bedd07763a409f9cac9b92d377 +0x884582b59fccb0f6acd35c51f42a859aa01eccf8 +0xa0fc3d21d7cf6d25b6b108a6807dd5a058b88447 +0x2c6a95bffb2dc5388e0e9d8af70e053a9d831a27 +0x690a1221fa85da132e33f55f2bc8ec8498bb9bb6 +0xc2a1229336bdf2f7674f16abc63725a9fb20845a +0xf3f29c0ceb711ba5abc56dfff33daa63db754233 +0x9a01f7138295c3dc8748832632b23bbc470d6e25 +0x22ecd36355dfd27279772ca890ae3158aad308dd +0x325cf315c5a6d054949afaf88a84d34e159e005b +0x6e669aaeaabccb56aad0714a8add0e8413eef764 +0x1011cfa4fd695c959c0da9e138a4378ec534297f +0x9790bd9c2946fcba527665a615c9a7fe634bdeb9 +0xec8404b11ee7803336a49d21149f959c3633595b +0x84c5531a44f7d04aeaeba74471928dd96587429a +0x8af184e40c96194ec773fe0b570b9363e52b7312 +0x9af39effde134796362abab1d7be7a49558de856 +0x331f07f875e0b5ac990ca62760aa86d6e3faa8b7 +0xf76189bab2c98a05f90751b9b11a5d8bf4d1cc03 +0x350e11c0b9a7bbd7377100e8bd756c6d8502e0ca +0x054b3b699b0a922565f6e51045ddc4e773593ff8 +0x8afdfada88d9008637811004ba9c66b5da4e8adb +0x74abf7e3765e2271b76f36b903262bc5514de5fb +0x61dfb4c4202b9ddfee4c016a65d7323d7b4d6ed2 +0x88e3fb511f5384e2a2d1c952afbf1423bab3210d +0x44842be14dd18ef79ebc6a9c5f0cfeb68a4868c6 +0x24e48c87b897640e8d4bf0e53cd14fc7bc0a816e +0xbcfc3d41e2b9e9d1588f22f5133df4f2629c2e1a +0x1380f76b991f623061424ba379d80183b9a6628a +0xb53271b2c0d5ceccae1bcf69affcfed7cc9c2f9e +0x2229d9593d4c5ab77c53dae1dff1a0cc0a085dd1 +0x8cec9fc116633a6ab8af4a322f518c4b973d148a +0xe820c7c7267c95e20567bf6d730317f60a439db4 +0x0ce73d2cd4044412d9b17ed0ab4f9eedf71142eb +0x051e8f980c1638dabf8944f1ee945015561d3e51 +0x73625abb06f956d6ac08c097e5dd169416c81838 +0x1db87cc979cffb6904fdf7bc5b0e2a13a8414029 +0xc6d70598b8dea14b49b329ded9319cb5f21fada0 +0x9b24248f21f4be5e4c1585324eced15babcc771d +0x0d500405770a3744b1fc97bb1760e2c3fb384064 +0x66596d8ce4045dfc250afe820f8082dbc3a3f16b +0x097ffa48ff26634a8411f36c8166022df9707e5e +0x71427aabe824d230667c3d5540859d115cf02cd2 +0xc35458cbcf40ed629cf73759219e0c696f0cdaf8 +0x922ad41a66d6fbd8d342b461fc4afd1ad8e36391 +0xab5e26ffac0653faf9c1fc0e0190d61ec5915884 +0x52e474458f716cb4763af260ecc5a1577c476d05 +0xbebb689eb4b37e358cd01bf6d1fdd488285f1c59 +0x0148cab46442b08640e9d4887795dbe048b515b1 +0x1740cdbffe2b574d67b1c5092a0ba095eeb02ee8 +0xf2b99f36ec56b3c12bac7f94ecc63be0a2f61a9d +0xd9890cc45304799d88f53b4eef98abc6b1d0c1f7 +0xced4aed9b1110e578f3d962e4c1072dff29734e6 +0xfa637a3e7ab7356b0b3367381f4647169f7d745b +0xf72a878dcb47cc1f6c842e4e39c1266eec79eeda +0x367a5981af1937519eb2d736f1e76f5b673c8b77 +0x9d50e16c76d884274cc0f5a1abb7682d08dc0ba3 +0x1e6c606511ff5b00a31935e7a54dde95d0d5d2a7 +0x061b101398418ab7c079b6cab855abeda7ec540a +0x758284f0f8cd42ccf8676ab373e1349836b4d2b9 +0x532d9003a3e2d5abf662891961a70f61cd2e2c57 +0xc59fa7137aad5ac6a4ba5493fb88d13b8ba7a51d +0xedcfe4c44ac43be2298463ce38130678e5f637ac +0x279e21a6c313a9402e44479de85f4cf4e81dbbbe +0x34c787a1a0e5a7d328b43ce6dd38160f17bebb62 +0xdc1489b08957ba956c4760ebf4414b5bb69aa063 +0xc27638d830a32ba41387269882cf5b305340c634 +0xd036829268b809025c4bf35fe23ba98f17f4881b +0x8df887fedf073f5c5c1bb6d4020b5983cefb7614 +0x9f80c5d1890cd5808e8872244cf54806fdae4fb4 +0x4913cce9cccfc1c5aa005f4ca918e9a1a8837a3f +0xfa425fd7d002c07fa52dd7bf16935937d9e35ead +0xfb332556507088f93f810614ee41d46f857c1ff4 +0x9d4c8b0bc1e83972385cd8717e056ef71a28a643 +0x66bcaf8bb241e5cde04a43beaa773e06802de0e9 +0x166568436796c1ad41c7b56797a60faadef70c8d +0x1854acf46f1ff01a0ed59c55ccda041cba8e5547 +0xb583a83597302eccb94659a962d8cf825c7159de +0x51f70104298a5db56c67420523ae11a837070955 +0x50b40acb86faefff26fdecfe15344e8e41f720f7 +0x77b972fae34fce71f1ff65cff7b9a70a4be650f2 +0xe87300577e8b54fe51706fa50e8630375085f62b +0x504b7823860b5a4026ec103dfc487dd314859a67 +0x3c0d9fdbb0138877080b12587d9434fe50a78bd3 +0xc4779a0b5afb7574acc5927a8b5334b55f1bf83f +0x0e8b7e1edd183f9f84f68db9999cb9ee26bb3d05 +0xb780a073dd62f4bc61bded5e53eedce2890bcab1 +0xc1a69012c68cde9cae8c9de6113a4ea8e921dc1f +0x58ba1f9c6b612ba51aecb58109af7ed47870cfc1 +0x6f20e90a7985818a6e427c8e00a28353eb182893 +0x8151a0458580dbcc378bc02dee107eeca2b317b1 +0x1105678e32874a137a98afb891baba426d141210 +0xa39afae288c5bf2e4a7e5759efd9badb6d3bdd73 +0xafa7a7c948fdb2bfe3908fc46fc02c22c936170b +0x047ca58c64778b2ebc06ef81dbbaf099a18801cb +0x95dea24fa26fcef4a343e2acf89b39787c185621 +0x43922689ea2838242f4a49b8248ef94be6622590 +0x5cb3aaa39fe2b04bf9d0810f62a6393180f0d9a5 +0x0ebf77f3114806ffb35d5338df3d3cd04648563b +0xa10891692213ec2f36e1f4ea77e076b1818e6ed6 +0x64081446d5186709b35565a421d64fdf5d88b2f4 +0xbf8765253e43cb46e24df4ecd0f9aad9f1ac3ed2 +0xebfa3a600d04d55101285cf9ff5971bb9ce03b83 +0x9b6b9251f139565d56e0247f439f2c9d62dce236 +0x7ccd2d56fda3afddf0c1f5a09a16cf12424cd0dc +0x5d5716c87da253d88253bd9eab23e6032ac71eaa +0x6c3f1031a84661c26995251419eeea8b59a1dbb9 +0x016e5864505e5fac702e122042ffc00cd6cde99f +0x7fef8f36770fe2a33d41c6e252d21ef1eda5af64 +0x70133c50c3c5b04a7661420723560859e274a3d9 +0x0091edc55a0779222b3ca347d027bbd7929bf9b0 +0x767e16bb15c5207e582b8386b15110e6f47eae89 +0x3fdc0a66ca94e43a1e738f1c6ce3174dbe45713d +0xe4259ea1b0f6d0448f2efe445721498464686e16 +0x2c12c5b56a980594abc9173f35a835b1815b2a3f +0xc3feb7e3b3ba7497194dfe265aa491c2ff2a8efa +0xdc832c90a370c6539a41fda465e9f726c6ca2252 +0xc2f3a910b745ca9103a4e2dd5e8ce7e9ffb41926 +0xce4b19cff937e2272adc583727010519b1edec3e +0x27843341f4717f18148ba9b9cac65d99826c5cb3 +0x9fa65ee1210a1dfed96dd2272642b71e0ae2a273 +0x04e848ed11eea259fc5fe08aa716b82867d30590 +0xc1e9663f91594cb801cefbdc8fb4704026cb9e71 +0xe3a3705d93967145c5ac5fc3d1dbf59d26c798ef +0xf4dffba3bb4a25bc67bfe8073a4a18f57447341d +0x89f48bd655faaeb78e848806b4bc6f1a5fa14913 +0x1e54394bab6c4ecfc1426ff24363dcdb64889e2f +0xf30df3cabcb5514e6a7211a2096b469f213d3da0 +0x958c89a424c28cc02f1710f5bb860ce91b29f8b5 +0xaed0a402c4cc21164f4bc285cae4040c8398a614 +0x260f4d5abe336e2250650f5b3e78166e5d2064fd +0x78911753ff424f49e80228dafda9f6ffadeefeb4 +0x6eddb532a39404bc7ba1b96e659edd6192dbdbd9 +0xc8a400391abf1ecfb9cf3627b218045126aaa9bf +0xf31209441f1d95fc2aada95c6b96a12a972ef749 +0xde7c92f782445cb9e74d5b497b714c452be2a746 +0xb8abf5f02491aa9348f68e7c705d9c8112f09d47 +0x6599532508db2655558976b734e1c73b2ed776d6 +0xf367840b3c0942020ab1a213cd1da5a24ea72d78 +0x2967f5b65ac8259fc1ea93713b2b8abeeeaab47d +0xb4f63bfc610f86bfac86ff39f12e075ee4e0003d +0xea6b138a2052a0852dfe50a5dfb1421b514bc2e8 +0xe40101d3c60192cd12f5c34988b001f3104aa7d1 +0xe60f6f95f5228d895af744fe42c48b1e68115ffd +0x83e400310702bd03c88be0d245f3aaab0820f03f +0x40d247df3cf56013124f0a572ff9b690d2011745 +0x13e1188a250083eb475fcb817ce9620d076e993b +0xfc542d7cc4bf2b32c25c2658e7e2a83ee3095bdd +0x75eb7177dd2872f3eb990a0674bea0d276666105 +0xf006202a0b1e77f3b0bc9877366de42a85785725 +0x5ad4c0c5a500872c26477d5c8c4983759116c351 +0x2ea0b4cc30ed46c9645b4607ec2a1f009e498132 +0x2ff8f8cef17e28e2eb8aab4d41a388dcb7d2d108 +0x4aeebb759dd8c7064e279fc70ec96421cc039c68 +0x0f5ef980513ca22faf70243959c92cf5ee1e531b +0xf37e51fd04141d17c5204947121faeb3fd836179 +0x7a8f2437115f6f960bdfb1c2cffdc9860b7943d2 +0x5e822680dcb5048d96323c54004938c295f27e72 +0xaf668521987653f277a02a3d7f4ea84e41458c55 +0x3b7a44330a787880ace47e8fcf98ffa28c2138ce +0x464acfe2da146d89b3c70febb363fb62a4a4ff2e +0x94dc6310b8c7ce494ccd536155177b10f7f8ca28 +0xcc9e3999180cec0aef3ab4858419bff2d1c4b59e +0x253e2173313e9fcaf30b68e1c41e38443cd6c971 +0xd5fe1f7d23fd8ca1eda8dfe62761ced02b02041d +0x8eee2ee4f81f9febff395f4ec7ec83152b07d30b +0x3e4d0804fefd509b73e6ca8fe904e4219372f74b +0xeb94cbc6230556206adca6d14df29ab18d27ff78 +0x309f78510697cf333c7e7d47dcc7cea9ea8c7451 +0xd74e6e634594f95f21e206e7be007439f1626d02 +0xad99cc214707ce1f8f4d52fe1a112aa53a08fe45 +0xd9d0ffce1c164afbf93d94d081326d3de9d653da +0xdd05c4aaaae99936c4ab297c5a4bec87ce659ea6 +0xacea9006b3eed9c5b424dde808b7321822352b9f +0xe4bcf4b963772535f949a8219a0a0fc8436ab82e +0xd76ae3ccb5be394552466d1211b193af4eac4a4a +0x0f95304a61c1508ff480e4b1ffb466db09d20eef +0x19b19fe8b1b881985813a4f736e89323d331b627 +0x7554322d8d09ca93d74f9e38feae032de15416ed +0xe0285e0bac157d4cc419927b1f3b16bc2315e9d3 +0x8e12213108a917aa1390aacc293e2d3fc80bc4d0 +0xebaf6debc8de9c53b1400ef18560d5013ee0b016 +0x1ca5bf373addec0f93e053c2ae8da8e3b139b32c +0x98272a442e8a132c46c0d214a34649e466cee074 +0x810311118c1eddbba1f210e29f8f830a6eee5b86 +0x18eb168c3fa60476d14360ee31b8ebebf223f2f0 +0x357c468e98f793ccd1e7208c52add73566f61e22 +0x0171168f67bb9fdadd8d47f63369487c6165d8ad +0x478eaafab0788559fac9f240a0f2b0d450bab924 +0x1459f805728d58362cb31282f8cc2d5b00bd6215 +0x1ea745df26267f83dc57a45522b7eb88ab03cab7 +0xc7f9afdc32d8980f7586ceb693b76524645aff6b +0xd7798ab60c867b113c6fb711ea00b10475165805 +0xa59f7850678d2f29820eb1fc410bb82865fc4d1e +0x79728db855f68df17383b9834c3e98f4d0d4c053 +0xd354ca9025f9f4212013a3a451f0365368404a35 +0x4f253c9471f6a9ae0fa77f3f3dbcc267dc4c850d +0xd3d43d3ed152dc99cc2def8c1ed4513cf8b6e02b +0x4f2343aed58591de4b34e2502baaf2a566dc7fee +0x0e040adf94643c3aad6be7a4904de33b8b026d4e +0x0ae969fd3ce21aa134b25e2ae1f68ac625385be3 +0x02a9d1b983c279acd49f6a3e9a3ba826a3454593 +0x3536d35780da777ad0d793d2738d8718d5334cd2 +0x84d4d362e8b37bbf28dfe4f7d75e87e461a2dd3e +0x4bf8053a31f0c0a97e8da4e7483b0ea332baa67c +0x8f36546ebe7c32dd2c65e8511cafd4616a7ec738 +0x6e1046915fca88133ebf5b75850b4965074f88c8 +0x39753e94094cdc10d416b950701fa794621837d1 +0x0afdcb6127cbccbaf2a9ff9810bed64a89ee6096 +0x98bfb8042197b4aa5d7769a80496561afac53dfa +0x7b7a0b50aa8b0ffdf1dd3fde775f5680f2ca97f0 +0x75681f555683175ff1a95d8ad40cc72945db7c86 +0x62165732ef2907604ff400758db81fa48c552e31 +0x9b26e32412cfdcee42f9eee91a3b8d06c40ee423 +0xd844801074ec3b97ea9ea98b00ac9fcd7b5a6725 +0x1a7a665e0be29263187542970fe827194dcbf24d +0x57c3683eac7266941aa4fe3847776305c866f110 +0x0e849d9acb13ca300f14c440480a5c6bc7fc096e +0xfd3b7b2e340475479263da80264a17d7ec10ddc6 +0xf06fe090747a0be7270db85a7e1e2b6c9b2da723 +0x75a8fd22c0884cc1949a6dc709b8fbeb07961072 +0x1e09227268a9d196de262b6bb1a77a8ebed87a60 +0xacdb2c09496fa51e2324060122442d989f4e2d1b +0xfb41fb2b8bcd719c1ddf597d2d2bfc12edeb239d +0xc38fcd9b3346739d16e2026a1c6f9485a752c6ae +0x810a036c297b3f61fc620d963081cb626a5d3086 +0xbe161cd453de552a07bdacd1f5d731b14bbdd869 +0xc876eeefa139cff9da9e4feb7ec74940f464b382 +0xa6a1591c366ba3a91743626b04b617f0d0e53bcc +0xb7b1dec13e6854f932c8e9a2aef97057bace4243 +0x42bebc7579406f83b0b8065a84a4e86563b40ad7 +0xa0c9ce6f28669b22086e1d279620ea045f020dc0 +0xc55f28eef11f4dfe80314ccf05d421752f021414 +0xd631cf058b9b30feed3de94b2e7671ce46f87b29 +0x7d9f35054869221cffacea46e692568c4d834356 +0x6c5b9c5969ed4f9dbd052e4d1ea6e20aef9f1917 +0x9cfa7bc5a20d92f146d0224f7aecbec0703c2601 +0xa24d78db47f7231b5108bb57e7dde727f95c8945 +0x5a31b8fbc41aec45d14497ccdc636c9e4b0dee30 +0x5b493ab5ab1ee6ff7a712e239b66494a47d3a219 +0x1986aa2416337e8b522c572bba0c54254e7d256c +0x35fdb0fbc023a779371653626b521e7e865a6748 +0x88ef87a45df20c24cefdb0a7b793de9f0add3f35 +0x624897c3389a7ce31b7fb2ba7f7a7c84b88f226c +0x41190ce81963a4cba301e038d1d3cec9ece8f049 +0x56dc62c08eec31ddecbd5955644b2ee63feff859 +0x6dfdc7813b380e07c6c6830d78f701b6df3e68c9 +0x701fa30652d94d8ff1e4d1e9c116f2ad7e59238d +0xa64f85ce021bd89fd07060d80df2346d5dae9f92 +0x2c6e07175609ee3c32a51538f5aee594ff2ccd0e +0x09dd45f2f6db31938929b3fd4bb433187504443f +0x0b82cd519dd7b3e41114440a004be2767c6eb846 +0x2b8bde4bc0ed7edb0474c4675dcf8c334e28bac9 +0x9ccd4126b39c88d5acd9fc253cd9cf32456a05db +0xaa2a765d2aee8d27102dc12e9c2eeb6e71bb9c6a +0xe15dc14ca6803e7f62dfdb82549d105234cfa69d +0xe62fe1dfaeeb0633f2c3b4a619a5ee35dfea5a65 +0x9275c9e083b2db54375afc68c3943738fb2c51e5 +0x558a4858b97d88c7ca1e5e509c57b3245dbd3870 +0xbe7ab56aab544ae8427ce87a211b161ae02e8566 +0x071799bf5b84f67c715c34fb1d7dae5b50a7ab51 +0x97202bf200a8801614a6c2d18ac0500f36126004 +0x95e93bdd2e80794cfabb59529ec6dd21e0bb9b9c +0x63315ec484f795577fce3bd9d66c405c9ee7d27e +0x458affbe1354d967f5e6f1c1d03747e65799fb96 +0x99e2d901c1bc331f2867983e276ab720d00f3af6 +0xa0e7799d67ca2064b056f19ad0d53d1d61660e0a +0x72ba41a3a9899c5fc53c75f66008c5fe63fc7a25 +0xe90833a3ebffeafa81091466c3b9f58117ebaf9b +0x3edc523d4fa2119a4ce3b8e82f45989b58114183 +0x91a098bed86e673d21ace8e76b82f30718b19b05 +0x2c7ae23aebb6a695dec93cd2aec41f38799c91d5 +0xd7cd28ce297c6be4fe1b072e5d57a9db5668734f +0x4bddda6893200bb7b32061869bd3ddbeef471176 +0xf6641843af4821ff0eec2719c476fcca55cd40f5 +0x7a743b27e7e31429a0011652f02f5f1365fc90d4 +0xa88079630d42625759bf9bb9153b6a5e210a572d +0x83644d65ee372d1c4f258582d77269cfff0d7d6e +0x38eada59a06bb2a0b611724e752189df01ecf55a +0x5dfbd6e6fc891e394102ac3ceb34e0d705915f9d +0x6ef3b706412ea06e594efa8f4321b8afbff75004 +0x3c4f0964de206c454131818e2065a73cabe72483 +0x6429a9d0475d169e60d72540ddf3199af872cd19 +0x1a91cbb73ae4dedea044de2f8fd8623e51bc0db6 +0x9bd21698942e72b6558067b49f4275a6a9a30613 +0x6cf280ce95f3f5a48c994f20b02780083469c478 +0x7d5733dec46a42f7a8f373c68b1b0c875bc0516e +0x3bfb5ff9ddab843761f0c7bc115ec2be0c53c38c +0x7057410a89937e9e3aeb87bf31a8e6862a8db45b +0xce372d9233753e0e2d453d4a3635c3b3bd3ba6a1 +0xfcbacc376e2222b27dd2210595cedf48a39f97cb +0xa9e1f6d89fca0eee14476a786136bad36b64e0c2 +0xc712635988e90d9de726768207103d16f6128d98 +0xa1a4b5983068fc70e365856daad66f5a7e2907b5 +0x20d3d42cc3174606725ba3b9dbeb137329d0221b +0x4f91ec7a39956845228fcc003970589eeb449d34 +0xad00a820ba56de98c9c5d656cea466d6aec718fd +0x921f162fc2bc03f7a10e6c3de8154f551375d4a9 +0x54207cad296ad7e66e6ce3ca625d307f80656d7e +0x0e23fd02f477521091f97764368290bae1ec41da +0x87c5e29ae425921daa3b13e76891371a8e38b155 +0xd90861274ce003d20ca8154670f8caf14087a9a2 +0xa3e0a130ec78507ad7e5ddf0c8ad1e2c3716f35f +0x2cb8f1a074dfbd032993216a16bc27b45d6fc456 +0x86f5009cc24978923357e6fbbec895fe7c5192e8 +0xda397e7aa09e0cdc0de931d466e6d534a0d43b0b +0x61fca03ad043e5acd0d3ff14d9584be162dd84a5 +0x9d66369b6054884ab27432933b89839c8adf4186 +0x32b9cf18712451a65deb72371bfe8fd2f2e1ec1c +0xb1f406556650743e0a4c8a4f3c3b25a3627d1806 +0xbbba1b5fd45fc74e72b04d1c3e24e51073f2bf08 +0xe3f307fb1dbf47dbe3da0657dc49028262a82c7e +0xda9512572b7e8b315c74024fd5918b0cf008848c +0x393a92994a3b9abffebd0585f90c6a29ab076314 +0x47fc1c88e1668163b0a704ebc8b207813376b01c +0x7deb96d92a14b9d1961ad3f868d19b007811139c +0xdac90a428ab3bfe79cd04a176a76268753b489dc +0x779f355c252b050530a47cd3bc186c04ef6ffb0c +0x2f2143362e9e206d199da21d59fc57faf04dd4e6 +0xa8269daabaacd000f838ffc46178bb7cb260ab8b +0xe5fad4c4d84a7671c3e763f31a2fdfebca378d5e +0xa6b511f78682ea07c27e742d6aed0b750d35e65e +0x46fd38a0cac9351df972fd4606544886710e8bdb +0xdfd00be8161930958682dc4eb85ecca7c7a6c14a +0x9d56e846515ce60f4f2b30b8e62ed96a44ccc30d +0xd65c6b4dc3233503466039ea9caee6db89a5513a +0x418867398a0699eab94bd51ddf340221b7ba0108 +0x2014e89004de0acbca0a46492173330df9d5762d +0x12c2f58c37f87926bccb7b0878acbc30b0e1b95e +0x682fb32066d1267f627b3b2e767fdb25c828721f +0x1171209f0928238931e76e2c6cbf43e93db80ff2 +0x671ef84916851c20b175cea34dd266d51b01a5ab +0x9312787edb67f08e4842df8cbf615f826f578b10 +0x6877a9421b90a731de6b0e92ff7ffdbc1bcf1ab0 +0x77cbb0145b6bd7f65dd9af1a0e477b992b35bfe0 +0x239b64a9f6dccaf0a03699744261b618cb82c880 +0xecbd5ceabf9e9bd3eabda315ef591e44d052f294 +0x5ed83d55d780322990e2942968ced298af92f4ee +0x56c9bd71731a1318b577d573b678584ec3b02415 +0xed2e3bece33bc8bcbbe8f6adf9f6ddd7286a5545 +0xd271e84b787302b2c94789167dc169d6d3defc7b +0x923395df7b07b65cef0242ffd59fa61d69a0cfc0 +0x9bdb36580ce1e23e30633ab414a1166c9c00e05a +0xbb7d5f58ce4d1cde9e75dbaa4a3e77df316c6005 +0x27f36dcc65655cb91f10af0531441bcd46722a5d +0x8d9021b43c2ff98a348257453c62f6b8f2293c73 +0x5562e4735a4733b92967723c24aec0e79b045324 +0x0548096a31f3de57552b3f5acdf05ad69fbfd16e +0x96e494658b2b403888db0bb004f3e0501d33bea7 +0x806397e914072fbc379da745b47542096a03fc6a +0x5279128cff8ba7662cad0973c41c963ee7fb2729 +0xaa8e38508de024d736986d99810ac36d2ec0500d +0xa9051d6595a0fa8e698c2c96278d3e2cfa1e5e89 +0xa0072ced6879ced95123dc7d5db4f111990747f6 +0x0da2a92fd1ff167d28a3d9b10d27819317d98b2b +0x2e2dfc588dcd5305b540e75d96022c45f0fc5a02 +0xde5a3d84917f67695722dba28b574fc2c8a3bcb6 +0x14675312ffc2bb47f0f9358a33ac98e07dc786be +0x8b40c1681e4aaa7b607e407002965809580b0175 +0xf31316b6d042332fdc4155448dc30ba9c2f40eca +0xe2562b734df867c577f6b0d70ba8a68446686dc3 +0x94e307344f28c08de5d2060f53ce392fd5f0906d +0xb885df55b5dc9994a89e98eabf5efd9fc0c8f7e9 +0x68de4c8f0772303cac72895eb4578636b84dd8d2 +0x6c3d3d961c77c9185a84da488647266a42d46dc2 +0x713a7956702ef72481eb859bc727cbc566a911ec +0x5b3967036d467e6e93d1f3d3962f26b2cded2e6e +0x02bb48755ad25927ed454a8e470e46e109e21ea7 +0x002f39c7c8bcdfcef3378b6395d618ab25903c37 +0xe249caf1368205b2748f98e5719d5aaf7b6c8b3c +0xed2149b332e2b5b89d8e0ecfab7dc4fa91a690ce +0x7b3c33b2444171fadbf0314c005913d5054860dc +0x905a2881c3252d8adadf3b41d30f12320374bd00 +0xfe745451c51f9bb0a64f3ebe0a70f121348434c1 +0xf906ba76c99d993e2299edcac456b3e42fdb7c8b +0x06864773c6e627cedebc3c1a42d4217ff12e66ca +0xec8481ac136d0b2e802e7984b07cd10f37327506 +0x7ca8fb5dfcc3927f4f6408c5d1695a12a76c1ed1 +0xdc8414200ffdaed717a7c587efb75217c386d148 +0x225892fb7c175ae8c36f5d72a0ff770a52a2aed9 +0x33f69c8e1b33cb73d7cf55d76d8066237be3f624 +0x3055d70c3177315089045ad1400ebc99891def0e +0xd022e43683b4aec0c37d6f8948ca2e302b41e1e3 +0x6f51ba81477fa17edc44642c241876f2c68e060d +0x84bf7c2d19d68d6e22b6af2adf51aea33ab16971 +0x26a4044c7c2dcacbaa2ada942d63e75ce3712400 +0xb8f6bf2a5f2f5c3736eef6089d569b53127f8690 +0x43397b12629e0b6dcba3942fa3f61b5ea0017475 +0x63ae3ed13bea6b6dec083ba1496d68e71bcdf7fa +0x42283dfefbddbcfec7afe94bcd7a01fe34a1cd74 +0x6a593bf58189dedd79e784d943adf5ee1c87c74c +0x90dacbcf0e61c1302c8f6dda069610db6602ab1f +0x9ae5084095d6a54989488ad4d35f2e34dee45222 +0x9a85db554011c3df085517cbc5cef6bc172a554f +0x0f3f82ab3f8219a6b58f4668405720e6bccb0372 +0x6c61b53317c16251e58a04f6874f66e25da80e73 +0x2b7da6923ad37c4d1a130c69ce0a6aff4145e7cc +0xd5cfa390d1016b7090f5f20393fb357584db6647 +0x4e33cd1e9d02a6c78ff7135a9cf0ea851585de0d +0xe96931f635cd76a2cb5c5caca029c79fe257b955 +0x43438742ac1ec6fdc4fdd1323a4a7892471133ea +0xc9198c409b24a78673d0a634f90f3894bf650d45 +0x7c40311a456594fe3dfd2e94ab63aa0cfcf8c9d0 +0x25de20085739092b343b071f31a05e9c01c4ceab +0xb8f73f7257b85a19d2ce5b9a73b92642d2c91e48 +0x2137559ba8c15ed43891d47f4f8a654e774725c8 +0x823a85a99afd487b68f6b9d52cf47deda0fd7dfe +0x51da69e88f336130edbd03049c3b20d349e0a5d1 +0xe7b0030800fb4e834bd039c85f54d1c12cc644e1 +0x76a4afd3964860d31fa2c08cd04824d7d19d1170 +0x53820156fa699a5cabc6f5b19ccb1d28c4d4293f +0xb63d10ee1f59a6d2b20487ab4abaa7c49f9f859e +0xc9cd62c2ab168edebaac1fb08c0a45fc2d13636b +0xc9d812faa1481ec443a36147fe454701088fdd13 +0x1d009c8bb7ce38cc9e3f761d2ab9174372083f24 +0x665276c6b271d38a4c23e9c1f5ca466bdeecb15e +0x500a9668c3a3e8bdd7dd70bf42f343d7d8b9d595 +0x50e8290032dc7fbf1a252146e0df271264f60a3a +0x85d2d660d68b3684c5158d108ad7d94e3f006dc6 +0x83c465788e35b58a1927aa1583fac520a5203d85 +0x604f0ac61237434f8ef2d8480e43e87f517a6345 +0xf94a025df2190ad28a8ded3105f23f5bd78204ea +0x7479666c82ac44347cdfb4be95da3331108e1391 +0xae2523759fd334821963da91cf0c46587e2716ef +0xc66f8f29fcab34e1ba68c67bb74ec87cb537a642 +0x09e3359006ec58d1c5291f3ebb6f8249bea16159 +0xe66f2c59b2114ffa9632e950d42412aa93dc480a +0xd4b839c651b5bd10720b96214b98b2d8063c5e9e +0xa64de8693ead4a451cb7838cb36d179cb937ee39 +0x96a8e4b50e4a7335bae23d9a68bf96ea7edbdb2e +0xe10f2119e73d875e519d8c43eba9d99d105a12c2 +0xb30bab0752ec8d250d586665ea0a52ff008d4ea0 +0x0e7a4efa8413660fc187ec1b3c754b635373108b +0xc95d30a654bb5fc6e11731f36e2e226179b9c6ee +0xd3e946cfcebd04a4e3686ef9461cfcee11f70bfb +0x0024a7545dd25401a095ac7ed8e7a754ce4ce87d +0x197d9de7ee1a41073b1b9dd9e46f7a828ea92f22 +0x76270e6b443c8dfb2ab90f2949bd1af94245543d +0x0423e46287f8249de5a1dde1e0bdbfa4340ab744 +0x19317295516c67cc67b110e9a5a088bae9d59e85 +0x849aaae51ce4adf660d4c2d008251c714c079a6e +0x17d20a44a040d011c354dad261880740e4f3144f +0x829869a666dbd02d9e01ee7f6c7e0186b5001106 +0x9f2e84e5db9e2cc86d54ab56c132a58d959c56d8 +0xdfa672bc0c53ae5d5159dd9b65c7d84636c03632 +0xfba19fb2230006ebe01468617046db64162116fc +0xd8758bb26eabede20369d527aaa10ff5a72d1801 +0xc264b84182cad29ce8b36a640ecabe29b02e5216 +0xe6d874a2c302e729ffbbfb20a1fad2be1c92b45b +0xd0fc55b05526d3fe31b2abb3e49f50adc71500d6 +0x98502621c0d350c4af4285ca7885459889b4b4c0 +0x0ed123e073d66b11ceb9eb726fa280702b3764bf +0x45bb6c8e414500538748450a965bc14854cedbc4 +0x2401781e53826a7f1e48bb7c2b8d7b7cb5da30d2 +0x1ce167012a91a8c056bfcc0d51bfd708d306caab +0x49dff2114a2d81a71a307a2cb5d3fee58b1e4e01 +0xc2de60c8275fa1fbb1125049a2663ae7e3a8d599 +0x1912ec761a498a903b7c0e6badb02d7e0fb6239f +0xc2778551d7ed0a893fd1a6ae3251c27d788d6a73 +0x7638b364daacb230cb1964ad755264ec416747b4 +0xd324e8aebd9194def5f501661ddd897c1602dd20 +0xf4132106484ef294784282d0680dca36338941de +0xd6194cbac74c99c966334b3010d870937993e950 +0xea060d1357304e399c689e3b2f38f00a543e8326 +0x510c13e5f426828e30533cc82f8bcb7fe9d1e378 +0x56e84053a0aee0e2fa0ae8200878dbdf9dc10600 +0xe795de6e3b9b08b88b38b0e48bef7097de514547 +0x4744e966526cf0a83d999ccef4ad32fb526d5e28 +0x25b66c094d5c948d77aca27c8864cfa30101fccd +0x1c406ba11ba40beedca4a604517234fa823f18ac +0x7c8c1a5c2276a8d183fbdf285d1e491fa16be68a +0x9331c55c4dee893083b37224bff7a5250f486f6d +0xa2c914d6c4ac54176e619fc9ffe737a785093a91 +0xc0ebf3143d0ec795de6d2e738f2883b121fd1b1c +0x088c49bb4f4cf61726405e49c8161cbff8aed833 +0x885cc3f902482bfd8a1fc8468b0b6f278a8dc0bf +0x6522479c91352b83e610fa4b9880cd332b41ac4f +0x0a4823c6f8c38fa8def2b407bd20b71f1110cddb +0xe2f370ed8d3aa9fe5c998670a5d3196902ab5a81 +0x8666bfc4dccb786a73fcbfcb45e3a7e01f4c498b +0xebce81546bcb86fa7b2277feb64e2bc81b0e75eb +0xbd477e8d294d3393118de958e29659325fbaf85a +0x2f1bd31de0fbde6e5f30cec3436528ca543a3fb5 +0x176c9181ea901dabc3716f59923ac1f0cbb7577a +0xbc7cc037ce05ca16f4bd55a71cb68fe82f31d854 +0x4ce4fc689d78c61f5bade121a139f1c2aaa8c648 +0x307ef5ef890bcad9e8d0fc65eea938669313bf2a +0x75f65379feb5ec983e0034713b61639c881c4016 +0x16f24d0239e6e6e06951fd412791d7a27c815ea1 +0xaf6eaecb49454574c61a228377f9ed1c68a14539 +0x6e85bbf429eefccce0a4fc090fbcb92a596d79ec +0x035a72a4e289e44565f1ca4a067eb84595bd3e58 +0x436eebded9495621d1cc960556fb0a82e0d15427 +0xe55d1f0a73acafa77bf4ba2fffc02d386542c3cd +0x0f69c83f6eb83bb3e7d4ad5ced5bf424add46eff +0xd002272001a48011f4f4d0e3f8e14cf0d21f76f5 +0x234f5351b9a4ce07b755ab010e8720c93b0948a8 +0xb2b24c94e78fc3fe6e3d4995d27998aeb9bf7e0e +0xfe682cd428af0eed8085b1b6acf9d51d64588a00 +0x0d6ab252535c658d10a88e217bcf401226a717b6 +0xa4368f684ba3874cb497d7cf5a6efaaa1cbbf1c3 +0x9b18b8588b6400f45f2757dfc9049af570b4fea0 +0x2372308be926dfbacdfdff091081bc9ab149f71a +0xaa30c9fee8565368fc5e7188c4ec2b6c82c75203 +0xa5bef1d62d343a456a21196a5bca2c907e92df65 +0x564675865badd97511849e54f2c4f781217f039c +0xcf2e26ea6819886cdc59499250f3cc0da292af28 +0x84331ede9e305a511ec78d4c6506f07aa51c16b6 +0x589e11a70e4dfec5c8bffd7926ac8e99e9aca0e4 +0x19451bad9416f29f5dc6d05764216addab1e96d9 +0xf1d19d236e4c3677492a493180ad6d9c93246c10 +0x250a9a0e32f2eece3e34b8e5f4684d91bf626ec5 +0xba4bdf052e52b7aa786f9c088cfdad3342f2046d +0x6c1eebb25c162ba3f9875c9d7b0fa8016f0dd8f2 +0x9ce293cb46a22417f6db7957e4f65180100dfe40 +0xc4a638e749d3881b25b342e9550bb30e08911e42 +0x492a9b2d48633caa7731ca6d2f42f64ec1571759 +0x7e6754fa837bbb92390a7959fc0d9d97a8ee2f8c +0x4707628e5faa1d4db3ebf0382880c88953cc6df5 +0x87defc51039b6750e6a74292fc44b69f3e57831b +0x46f27cf7c20a019c5af90e72f02a2aee3a422d31 +0xe5c68823e43c057ec02e11d4f78c052040a1ecd6 +0x471fdc378ab3e893b020c550ef3426534b7d2f63 +0xc83501803ee3e2985eca42347ef98dc9e07ed1d8 +0x5a494002d2046d4f43572818b7d3d851d5cd8edb +0x872120b9728678de0f51b58196491b8bd1e76ea4 +0x2ee111be82c99e903d5996948105a021a552a18e +0xd7795af7bd6cc704cb6c6a5f399c6ffc930aaa66 +0x36fe158b1c165c84dfbda0c3665a20218946c6ea +0x67e9061f5ea48c827f4dc721096e766242926cc0 +0x7293493a33d28d46704242413a5098795716dbfd +0xd2ddb4c02bebf52d888114f1e19d08b110e65d7d +0x8fb77cbc72417787e6d243d4839f6b22c8b08000 +0xf1caa131b9ad2bf78d7ce022b64ed0ffef3ec0f3 +0x94095bbbc9029d9eb7980485395af78512d41636 +0xe4a64f5544c4aac091475f0aec9c7987728a7e30 +0xfa454c0d3a9f93273e1868b1adc4c15c3ac7a63c +0x13ff2badcebea604447dd1404f77d70f47afec5e +0x107c1d0dad81759acf2d2a056071e772b393e66b +0xba946541ae2a33bef17f0cecc5c60b077016653b +0x8cd039a86d2c98ef19c550177cba4be2549823cb +0xdd15a17113dc6ffd6e74d82e866113d015baec28 +0xdd89afd9dcef692cb484cfe59573b887ef9c4130 +0x48a4df6bcde6763d79428455b95931f1b5ee44eb +0x741b172a5f901ecbb233d1388d0b0e1b7fb13ca2 +0xf8c3ac31fbb74a80d18bcbc4bb539279a6fb5977 +0x8fc183d95bdedc8c5d649b10876d3d8ccfc1d59a +0x90798f9569e327f20c89496b1b7332ea61ec0b50 +0xdccb38464425d0a5bab5fc12eab3a73d3d01a537 +0x805278d9b8d838f8ba54fb1658b9a4abe424acfc +0x701b9508e43a10db7382bb726062c9ef8a0d63ae +0xa73eb2d8241ddc73f902fdeff80436f09c0301c5 +0x2228f062acd057888d46a5f8c7ca0d237180de37 +0x07e2395d964804e89b1ef2ea7ce00e7671efb52a +0x7e4752160982244f267093772fd32b7899c574f4 +0xdcb0da797bddfba651f58f6916620b8b6265ff9f +0x13acc2f8e6d1a69de99aed6fc3d997a8c6e43535 +0x0f5d4e6f845d89b512d9a28411f833d5e2d5a5d1 +0x0ad9329d48588f7cf70237b6b092d94e0e631aac +0x12986fb151a3e4c0796e4a959d6bafc104200cc3 +0xd16acb00673327c2bd5dd48262f352434e426c73 +0xa4ade70d780de9de8463834fa4506baf5e7c1f75 +0xfaa7a165abe23409939dd125ea420b5c639dd859 +0xb2cdf89db97757d188092d74ee0d579423e91c1a +0x30e49f0c45c4d9f010e813340006355818c27b08 +0xbe5c1f854cc96e0a2bf2ac91baa149d153a7299b +0x41ee75e66ebb74c9121b1caec3562ed269585444 +0x7988dae26fc5c17920d8425583079d505fbe1da9 +0xaa3db64734c5eec44d0e944ce31c5b70451d7b69 +0x86f92a76375f27f30a6f69230008342d3794ccfb +0xd810abd94d4aecfbb2af238f67dbcc582121dd56 +0x3e68fc70d0c3a5a5eb96e7583bfdf723f1967205 +0x052aa0d2fae3556cdbf1e1cb7084e63257d0f648 +0xd0d850ce4acf7208b22f12905d587e033bc68261 +0xd3ac9a7859b0d7344e2ed9974f947344a515ad93 +0x67c859d00a53aca923a3e4f676ca9da4a1081859 +0x0b90082ea5749fcd7e4cd66ad6923e3faa20aeb7 +0xc8797d8f70f81e86eb79055d92b9e12708deca76 +0x0871d4fb8ba92b3e1fab5c76017e0569f4f64d1a +0x2d2d177cd80ef8f36876c67ab5ce7f072aaf2198 +0xd8991fb08b40489f53b58d6f94012a66b18419d2 +0x734c70c812d024490e19c7f1e2ed26a90662c0e3 +0x7e0ef640e6e82cafc1eac9bc4fc7927bb478217e +0x071ac3e665bd6f7dd8edc98511cf140e433b4297 +0x2ae5a3b0c950fea6d410476329ff3ef4ce3ced4c +0x8df1f6089afc5abb51aa92f5327b7c9c67de1f26 +0x64a11c40450d69ef06ba54b4bccb89f79fa9b0ed +0x5ea64e459bf3b550e90b1d38234084d0b9b490c5 +0xc1d3b012649b7ae9de1715f64fa13ad28366fe67 +0xf4a1cfe899bdc2b9e4e7faf79335f6df68d9a96c +0xa89a1d18f6939958b7e2876daf867afe86bd2d3e +0xb9cb44e075fc79337c66d43c66b4ed1881d00472 +0x8b35e5c1082007195740c614040390e1ee3b13df +0x29c9724558559f6116a5a29ed1b475a67f1398c7 +0xcdf0ee3100bfed6a44f78302dc58dfd395de8b9e +0xbc79330e5f922145c54f5e1ca7b64d48dbc9ba00 +0x9d377fcfce8f3fb19089b972134304621725b15c +0x1f467725116dacdf616b709ba6c7cf8afb244bb6 +0x699368bef03621223e01218a73561725b48ca1c0 +0x6b0cd29e04aa71f80732bd02efac53cc4cb5b849 +0x01e6257014bfa0a980b914eb36d9ca50007b2b05 +0x46d22c047ac786b99ae7d37db48b2e3d45563786 +0x091f3d2bb0de0f9a7738a514fa13c36af4efc7d8 +0xf3dab207ff9ede05d0a59233dfc1ad8d51349e37 +0xe0083f4f22fffbe47e80074e164dfc077c5ab095 +0x5502856f28049627e84c577897900346bf2863f3 +0xd203d8da7d76fe50f56067d5c81825a5b47449fa +0x55284b9a9b34096493d85b9c5238e610c59803f3 +0x5fc2a7685d22931694634f9c6cb9ec271047da69 +0xd227253863b5f9fac53b30936b3b77571d821555 +0x87d84b1064de6a58aad4f26e2c8490f6203191bf +0x18e283d0ce08fdeebf435e549a170b4bb9fe700e +0x717211c8ff5a67dacadbc648b0beec0fa443efb7 +0x5f453b6cd71f4e252c2e170b84b8821d63d4568a +0xee0650fa9625cbf15bc581926ec4062628ef3eb9 +0xbf04f139744b247e37e9e62b8a00660746d3a009 +0xfe09a3431c420dc9a47721d878fd70fde3af463e +0x31f1e1b9b30e15ffc8c01e9e50b4926a6ff4e685 +0x381ee12144377651117d9e4b32ab6678dcfc085c +0xfa2bb85543b4ded3809c69db7c52f093b778ef94 +0x979d469ba229f73539344402d5ad471ff6ace9cc +0x6d4016fcbbd66ca111a45a966241db1f4a00f657 +0x1382fa3eaa92227a6ce1cfedb95c45e95c56282d +0x457bd5d48a991eba5d878b1e972c2a58f2d1f945 +0x1e4796eba1b1940be7878f870896d3eba21c4aac +0x10448848c48075222dd0452c17d104474fa21f4d +0xb96e667b14fa6277a983f11b308e522c44d944b4 +0x5dd6f2a1fcd5b5193d19cf0009b440247c78e5f5 +0x5838d7dd0eca984adba04effecd24a404b2bdf44 +0x8db7151ebe65291c68e9a2a4d5a5871896036350 +0xed796288196a73f4594778e3e02e17ab115e743d +0xe739d450e6ab183a67f120ac68ad15c846b23e35 +0x3fe6a7168649613e4c0c6806c63dcc4a889bc855 +0xc6a4601a072006dc5cc14c0aa959f06c4db5a2c6 +0x41565db09b1a2ba51371c843f37d154d2beb0222 +0x11069a7607f1a450eff0d8d0bef9924155f97fa7 +0xa550fc6799743448e4f087a7a7eadc1a20119c9a +0x3764ed67ca0cb690948a6326fe1ce89584ce5138 +0x43fb3ed2b19984538c9d539a595d1a6c6b4e7cc6 +0xfcffc6f4571dfd1422cfff6bc91ca44643b54406 +0x0ae7abad48ca3ecb557d992949c7fb898d4cfd5d +0xf761901d3a8f9dc3e62b84251e8c0a4cfe6c1a0c +0x82b200dd64613dea440a5956a3f892324ffcf8c5 +0x38ee0905a442d8cf093cd309f0ec5b1b22030caf +0xe91c7a91444b2ca55f5072d0d681504137c92f54 +0xf0ba2577af62667d454f796c90657fc95f87b647 +0x813512a0adcb03f93429f661c39c4ec72957231d +0x2825c627c9f1d5267e408dc552416f576b11ece6 +0x025c6e23079af5d7011572517375cf8702454d88 +0x14cc90e89933669b3d45971b47e1b5bee0aea8e6 +0xf0cc200bba1e09f085c07d19adea455a48badbaf +0xad46c74b2b1c6c0aa301cfe616b1e5b1450934ef +0x5ea13a9a193228588947866dbb7d1c745a4c7c20 +0xf37e1fdc4ed675d8a457896d8eae415d01f1eb75 +0x2a277bab5eb251c8d8c74eb51928c380d3772f06 +0x0d32fed70fcf7d52b642120affc00f84d3214e9a +0x83e1919d1b270d25dc6dea0a8d344b6722c30162 +0x9c27c5f38a9d02dfd814cb591b0a94294705b5f0 +0x76fa24d9b97f39618076096923e7c57fc6d13d64 +0x43b16afe1d0bdcfe02801af0dfd472e7557f6b16 +0x74e66ae7349e59bef525ddbc803990c6c3ca5a34 +0xc639a6d7c83f7ae8df35a8b24938056634015c1c +0x48e7c140f3a9f4a1104c25810eabbafb99c756aa +0x548848068ea61fdd4452a235264dc5e6ab826d5d +0xad0474a9041f5e185c076dd1a487007474ffa634 +0x80b6af4eb9f5a3fc8fea14453bf937efe95154e8 +0x593a50202e12a7f23393051920bac946aa12a668 +0x21b548fb6105a4fb86ef07b88a139b2ac4e8667d +0x296db6ad94049496c208248b3735919d81d810d1 +0x7a8f9d0f68a6326a52ee0152d5e9c17fdb9de15c +0x3a03cd61f0590bfe607947d940d1a3c76bbcf544 +0x5cd63abfe717bd1aefa3aa12064484e67af22512 +0xd155ef43600a4676b938640c298cff3b913c24f3 +0x0f358a9b48e5f06e1271815f94b325cfcc8a4517 +0x2b1351ff00731f3dad7733f25382b9c80e4e1bb9 +0x060021733d0859e561cce44b432faba9bbfff205 +0xe8bfd9b09938e51510560a80e0d885ef2932fb34 +0xeafa09cd504e75c18dcf24e4b131d042e3a23f23 +0x2ac4e54ab15c837ca949eb0a1708456a2c7bef0c +0x2017861e35278315bb13503e8e605ad5e2ce4654 +0xf6b604356ed3bcedb4335095330243c7a1e5f562 +0x52181a163b12957f4f49df61acd4bdf411c90723 +0x77e862b31c6361ba03a1d7004e8ca0cda880a869 +0x0c664694907a0d56f428efdfe4c34b46cd512fc2 +0x37c7c43bd49190efe85d342ee7af414228155d72 +0xa373240d67a74a6dbabd69719ddbeacffe9fbcc4 +0xefdb322583b2b18bdb66fbbfae9c1cb0b4c13b28 +0x7d2dac4db623c454fbfc9c69b9d199e6db71cfb2 +0x28504a751d5d98c50d859dff72b0da03129f2364 +0x2047168f967116b0131f7aa0f09517d48694a720 +0xa53b72141161f81468bce474a6e96989fcd29a58 +0xbe658ebfb90adaaeef47b565ed731a76d1253324 +0x4176897ff51bec4986d8544d34c130f9964acf76 +0xf2c915546dd24b539c8f2dbc6f425418f4cbde8a +0x5632a6a755db78c630bbf6527fcc4d95e95c1384 +0x85aa042cb83d25f7c1c27267cbc5d19aad5545ed +0x725ac37614daa739f8ec90c05a388ef88e9adb6a +0xbacf2319d5aa7449182f3a176e832d9d57d29e5e +0x9658eb188e7d96a448506b1bb346ce0a3184f29e +0x60011c124540484b139b52bdff145c493f7ea36e +0xaa226166cd712ab0e8601757c74931fcdbf3a54a +0x6596f807bd534afd77bc63b153bc7792cacef06b +0x622b8d8cc988920e062fe6c987dbba0c03f5c01a +0x8a7f24b3a97561831b9f829661e083e946b59d9f +0x46a4c30e796ab580f91283f025b8c52a255cc01a +0x3a54a82886669c45650b5ae57709511c9920c06e +0xdf64ec784b65a7fa6c4085217ffc8b941c33844b +0xdfd19521c8dc62fbe8e2cd5bd3ade3aebbb13a8a +0xafdad5e88430c1d0fa3fff3147be983f41d52d76 +0xc4ff952f4804c062d144b8a1244ca43f888099a1 +0xa4e21d44839d824b2fbc4de811bec4d3dcefd2fc +0xd49410f2981b566476df01b904972001ad7bc992 +0xc0f9409ff3780193d9a6e09285a7aafaaf12fc01 +0x092c136ab4b462d78066cd501d449cd0e167b069 +0x4e0285824f6eef542538eb01099a16da32eb734a +0xd02e3a84d2a73e9e96e7eddfb4529d5a6afa75fe +0xe82409d2ccb373bce71f3f756da50c20bfe97bec +0xd5a3d932afb44e07314c506630f575bd7cd1032f +0x2d70461dc224d30189aec91b43188b8f2e64dd0a +0xab1fcb3cf8c7130f744bc80f9837f291751660aa +0x6566ff0d3ef5769984f5514ca8ea3099a77fac11 +0xaf9ba801b92964d038b19162058921bc4465c4d1 +0x0634bf94341c6cf2d43a4347d0484e2c7d32040a +0x85e5037fde711c36480f01ac7772a006c9e294ec +0x6638bcb9d89a3fb806a16a1bee6081c62c79dc7f +0xeb1bf39832f73801d274919bc838d07a927ded60 +0x600df51745bc8d255fae5fc8186b8b2ee88ad824 +0x61f7605646b60e94f8ffad85c01d763235655a06 +0xb04e00174d99d5a7306bcbd13db032b962944ed7 +0xea4a8c2a758bd6998964723d93c1f33c6e461d68 +0x4a18e0be94d5fbae0e46658bd3ce9191e3b794f8 +0x1560438c4820a965caf169ad76ef29c60b69d954 +0x4ecba4d4ec5de5a0d3efb2e95a789ecdebb933db +0x3365ea0ccea748056b87119150373c140849e0bd +0x79ca67e348f3375661dd7470dbca4dc40c25438f +0x5dce92e26941af2c305e352758f67d9a986d7234 +0x67b3b03a6510f3dd563c54219c4f5f77981a5740 +0xe8c131259c04fa8ce0b4de32e569b75312142fd5 +0x9258972f587bade2756845b38c31e55c8c7cddf8 +0xf6ae25d68a53c01656063a46ffa1352b2a4179ed +0x5bd848725a7a7bf4b5a69c0ceba73d693f89ff02 +0x5c6576ea0209cb86df3420c33f10b38fe0bcbc16 +0x515b4cab1d9e8aa58b5215876bff62392b3a428b +0xbb4c3076c22f75b8b891a7a082687fa3b946033a +0xa5c9823a2a17c98ff0b81cd4ad664c1fb7bab059 +0xf4c4109d4be8f9cbf830d6c4bd810c6da91936cd +0x3f78310d118764a11e032f53a81955de7e7f05eb +0xf3a1a09fdbfaabec619304ac7401172cbf5a1a8d +0xacfb814791c37e3f06fa0b2a57ba5c257e829812 +0x5fa6d369db299dafb0c486848ca1ca5836286009 +0xdfcebca0278a040731bd98a574e81e05e00d8c86 +0xfe521bb44fdfa1f6ae994b682957b29d06d6ee70 +0xb79a639597f6df0d38105271181029de34beb75d +0xa83df9de04409477106957ae30c5ba369d7c79ca +0x2b2ae0b7cf6e510a73840fcc948b7b4bcbe5ac93 +0xc37f674c06077d37e76b047943dfbaec2b8c8573 +0x36a150585a080d6b343e8fc8f15573dfcb633f49 +0xc4958b99d8c2321de63f336f95fd05f038d9cfd0 +0x2e5f820c8a30c4d6bc8a0eeed6c147bd7efee15c +0x6e1644535d4b9607122bcd55ecc6cdb20cd50d87 +0x71023a1fb1956a5a00a3517151345b2232d30cc9 +0x9d8ab07921172c2ac34c8cca97f012245ce046de +0xba93271a8a0ed894448ba29a3f674c9fa2f6f9ef +0x2383c729b3d77f62c27357d9b9e113802570b0e6 +0xc45faae070ee8e47d21f5ea804917d01b083c4de +0x2a752ac9d961970e981433db23979bd055ed574e +0x011799e9e440764ddb097b479d25c5aeb301fc86 +0x590d4afb872a7742dbbb6c14cb29cc3a3aebf88b +0x8c2991d884804c08ccdad13c3525078b847603b7 +0xc8735e0e5a97805d73088cdcbb2870f3b97871c9 +0x8931adab51028e09c73552bee5e95e37a7c4267c +0x064457f765924292a723ce16f5432295bfac371e +0x58cf751b2f8051f1a2f9d3b4ff7e4220fb15da14 +0xce082212a1f965744e56b8ea326f3c3c3f1c4938 +0xd53442e9b35c8abd5cbea644c02e1e5974c74b81 +0xc200046a809da5e9fb33d0fc2d55d8f6499924ed +0xc4c973a381e3f3510372eee2b8c1b2cbf0568f18 +0x4a26eb06998eea619de41bf03a195abdb746fbe5 +0xc64a95869f65e37797c0cbc270812ce2ad213625 +0x78bda97f4d10cd294b471fbda5d9182f1b92c263 +0x3e5fbf7829703a741ef52896fe46a3f659fffa99 +0x1ef9cfce41eebb82181dc0b40adf2a1f4f702a87 +0xfa9abd86d84d00967a41ddeb1b7e24db865dfeb3 +0xf0d1a96073d86a56147c22fd3a0e65c1efd76e7e +0x0c4887ca52e412b9b60ab0354e1e71ec303c897a +0xb551adbc7a9af46be2f0ac53ff888cac32b5dc93 +0xcce37ff0367073f78b3aacdf52fac732eeed083b +0x6917d5fd0e04c183678dfd1992dc8fdfa0effa99 +0xac7ca1561d15ba0c0d61ecf6e787537d8654982e +0x321e24dd3ad44874b341253499ab1e28bec8dfa1 +0xe18879b80b9c8bdcf93f4676a0420650c90dfc46 +0xded91e85f54416b5dd5f63470670b89de0258abb +0xd9aef69d31b90254811dbee2237e05f29e7655b3 +0xbfbce3c2aebf995b807e4598e2f1e9e0cd69d6f2 +0x782a7cedab1de7257e993cae7a85cd8236134647 +0x786bca159da532e8052d60a02c2cb1be47f07479 +0x9bbfa105346cae726908843afe1a578fee5a68e9 +0xac041005d8404ef25f9d6636f3586e5a818fc5cc +0xad36a9facc83ab8d273acac91cc2a68934e0dbd4 +0xb11114894ff46e214c8efc33ab04036f6f16a532 +0x2839787dd8b82195c6cc98a589c87bd77a694b6f +0xaa90a441de741604a8759380046092683326b09a +0xf95ee71f5f1c2463eb0956d2abbccede37713e9b +0xc09425f7288d9f307c5dfb1cbd5092bb62eab4bd +0x6115288eeb94719133d53eda0dce6af233a4742a +0xd1ffb505b6a52125c1a6c8ac9983022977b0e986 +0x235af76539e2258a9edb484eea59011444b194cc +0x43a0a3f39d577a5a4d50754c300298aff5f9473b +0xa1912ba9409b1eb04f9167e14b6fcecbddd0eae1 +0x606d4e20b25f0111408d17f70e9312f8fcea02d6 +0x4074a8203ce0bfd267b9e658dcad176332b33ef6 +0x8aac2c06709f2794f6d2ac9370c7e975981aff7f +0xee280b34ec6913d4acba811b6831fe4c6cabccdb +0xae0a69870447f97ffdcdf8b74861a13cc00bc5f3 +0x321c0594eebdd55ee2c107405a751f0af8b64aa3 +0x90865efeff02d2baab2e4f7f6453096ad1ac19f4 +0x4ac62e2b37c71197a6f1127190bd60519dad54eb +0xb7540114a30d57b4c90bb1b7671bbccb760c085f +0x84e404413261b1eaddd0d42d9efdf3cabe7dcfb9 +0x95e55a2fe8415ef66a03c38c59ab37eea8540e3e +0xbc94a091c358aad03a0371f1d20cd9977eb875c8 +0x6d42b10a726bd075c0c83833285f5ee91afcc675 +0x545ddc7366e03637fd9c228b431dd5b143b4c4f7 +0x2d9fb7ca6f823d6dde872860e1fe2cf76636e4db +0xf53d85e3d04a80b700d64aa5174a09a5c09ee2fa +0x3072b63fd04495a6ccefae6126c9251f2a08b205 +0x030c03e22e6751e2d9ebd80cb854bb8f295cb9ab +0x916e8caf03c2633cf6ba48a2bde4b3829b2e5f8f +0x4a1432d1e1e80bdbe4c6d7dc22bec175fd7f8dcf +0x9ba8db8c778184fff8cb6831bd9190109177b0c2 +0x61030c0663c29df6ed9af8a4306fc5e117fb7063 +0x69978ea18bb83d28cad9657125af520a37c29d4d +0xabceb411f6250f8e9da8130dc2a5d77422d36fbf +0x4c8ae828360e4f9be1fd036f6f93aa20d47e87f1 +0x78030335ce673621600e455a47333990c4747cad +0x01a3c1c58f662f984eef0b219e6f158322372def +0x679bfdd326ac29d1eb8a699f1c5a4f630c17ad77 +0x5c9887684e6fdde3d2e3aaf232eddcec8b422100 +0x9183824ff8479d30fafce41f11e61bb1103c098c +0xccb38876ec172c9615ea5c515ca7237d2989f472 +0x3feb1b309d99f667cfea18994720b598c06f320e +0x607445c78750c9c6173ff52690b5183b85099c6d +0x9e971f7c4d97d189acd196678119d010fb31abda +0x97900fe9f43f178c9a5d81a873bcd8648c6998ea +0x24fd870ec267662e08cca8defa521a84c6a24fb4 +0x7bc2844f97bc40f3080af5327a5a8fe423c334c0 +0x3bd09b0ed2f44f42975a0cf3d583d9f5aed377bf +0x5031a659dfa0d618f7500535b05a5c0fce66290c +0x63c839e2ddb25194194dc860b779aea761df304f +0xcbb64b01e9f1d5227fca8085ec08931681daf69d +0x98097c06054488b7a35a36b09523c01dcaf24098 +0xf89dca884620a6b9889fcec5d9e2a20ae25182e5 +0xb3d801789b42fb2a9aa43dd680045472ab094d0a +0x45df9e92e0179177a710f3de4c5326a842e14e3a +0xc117f96ee0ee7c329d365a78587cf31e2cce9ef1 +0x6c2eae3aa97ef193ff6ab111f9a582b627268ba5 +0xbd03806626a6f10f8646ff2779a7849479a366cd +0x996ebc4279b8cbdace0106a3b6c47afefb414fb4 +0x6e463f98d251dd6f94f0d1f8150850c3dba99bad +0x0494a6ee1defdf2117d2c21db0ef1bb39c57ff4d +0x95012d8ad68f94267cfe42602f438be260dd787e +0xdcfeef5c36c4f56207274de7119b1bdec531be5d +0x7cd6d113fbff0cb78f4ce663f9d4d37716b40230 +0x59b31cad49b084aaa2964803ff3d6dd659e483e2 +0x90a1ab5cc3334d10c634a7bfc823e8b75d692b72 +0x74d11bb22ec8f5eb0ab43c50c9750b8264319243 +0x9a44e06d9cabc7dd9f6d133bf7428ee2363d7e15 +0x63db69c5fbae57a789bd2acf5af883a85d1ba9aa +0xdb9b4991331057e0961fd5fa4232e64dab79a92a +0x27c23cec395560ebd6f2af71a7b9496fdf423a91 +0x4a782714d94bae37de6225e0325ff1f19f27491c +0xd1533374bc80d7fd9ee57bd747f6a09b6dc665b3 +0x89e2d2fa8fd535371ae96e5db83a5e5d304b64b0 +0x41f90daacd8f23c63c676a7250e8b911b7f23584 +0xbb869db85d0ec66ee49a175318f2f7d1fe755ca9 +0x573ea2dc4bf9ecd6d0d425e90fcca4c73e2732dd +0xddffd42fb0a464e2db1d9ce5a9cb9d2cdffd6b26 +0xa34ebc49b2ab90d562ad4423601ad4eed80a36bf +0xc4c6dc58029567e7f9ec09421c1c663e4ae5324b +0x4590a422a75571f9ef533b4fea544778b12592e4 +0x1c5729fdd607d507e76e09e45fa7033d2064eb5f +0xef3e26842e534d9b3460c35a74b09aa24570e2cc +0x4eac5052f2b49d8c919db04889601ba2df2e378f +0x584431572490f106ca69bb3c407f9c3c410fbee6 +0xcb071e31b81ca054c3a0359909e1c3255058ce0c +0x107068e45f5284e28ee753bff31b24babfb908e2 +0xbe2cf0be29b1c2fdea8e3252c068ef68b500d85f +0xc67270c9c10fb80f03ea9d75b74cd4accf6009da +0xc7ad5ef01472d3b50a798bdfaf4274a9b955bda2 +0x7282e48c4a9b5bdf33337f74cb7ef264a300a03c +0xc954dfc5609f3b3346d6de1d24cc9ec698dfe37c +0xb91369de5d619c8467e523b8f08160b83934500a +0xe6da9f76f25041703137cd0497bbf0200f545742 +0x3864db8e5657dd3ca5eafc8b12c50aca801c0746 +0x1d554481bd79fe41708978477a8c8987c9016c68 +0xc987981ac23f6175234a605d5f167e0d5582c188 +0x19cd9ef0ec05ea10b835c81180432ca1a34160da +0xdcc7dbb7b63eb7d2b5a1e6a1abb5e9717b0a785e +0x1f45e43460354e219bce5e6af72f29167780bb70 +0x038909978df73418f84640fc97cbe7d04c213f45 +0x7b19507d085dda6d964effd160af7b84313c10c2 +0x2d61da3effd2cbad12e153382af2fd758742d8d4 +0x53ba50eba11bb2fcb00fae78765689ef047f6d55 +0x8b1fd428a3fa289cb300aabcee72b87883880fe5 +0xdab0b4406f5a92a2c8190074803a9612cfcebd3c +0x39c514ce886770fb267be5e5384a990057f5d6ff +0x1a21a01a51b86976425dd8baf6e8e3fa29e7e9b2 +0xcd4c98f7b9f1756909f9059c979629d0ffb1b884 +0xe6dd166df246a82d67ff81854e1adc598aced455 +0x7efca28091df48c9ca4ca5fcbca24651c1e43871 +0x8e930122d0649ea132bd5f8632796f89b5f4563d +0x42d52935c3bd7a86850ec961bcdef683d91d91bd +0x39696e6f5b48cb6e1cc8d989fd2d54218cef2973 +0x137e3b57334871fa1c49d77329df824684a74598 +0xbf004937759e3c8c6ba971cae850c0809ba5f2c8 +0x0d0402d9f7f22ba02e5a4f7eefb12c0305cdf9d7 +0xf3b341b98947ea0f6efa1ccddb0e1b019d966948 +0x199b315f3a5f0cb5b00147a647466dea87f6d38b +0x2ffd4e86c08a410fb8b83064946de01610ef12fb +0xcbc1b41c6accd6de5d60583da08e92da5a4f8ae2 +0xee03ec2278e395376bd8c29d0f16325bee97b026 +0x43eb1e35d17ab202853bcdb4c3749dbe214893d8 +0x64cc7e8a316f4be4e0e1291f7c822dd11eafc87f +0xbf74b6e26ab771ee352c978f4cb054be5aa33758 +0xf7e086246e3476ec4f82b3d3b50611c3865605c4 +0x6b9609d47c3fc2ae0b47b371f31ee2b6ed0b6732 +0xa72ae299d1dfc8a9d237bad6a908db7bd90a2516 +0x5842a7d430f5364111b00c62121180f32d2d59d6 +0xd11512164cc651839faba76e39084396976b8dfa +0xa9afe9019c39badd8d187648c92b187a48d147db +0x3b8a81af2be6f17ea2762cabe336e47555368d8a +0xa6bf4e87cf4baaea20c26fedc611e293ad2afb65 +0x0dd3533f6d91ba67db5bfb253dd960d75fe54096 +0x082830cb8f6a000eb7cd0ad874406ccd98237ca8 +0xa044c4c8b757d3ad10553e7218a470266f4d02a8 +0xe54a155f95ef596342618c5c1fc674065dfd1d61 +0xc1f3cb788bd27944a2f0902d78a90e5e57a9ed11 +0xf75bca6504f2ae4f23cca509ff84b1c27b583a9f +0xe72dec02db98d0e88647f05f52854112c446b267 +0xae6809180da58c06541ddbedb77a71ad2a8252e3 +0x335eaf5c39906b4d8dfd7905f3b4d034d32d5b41 +0x1281334b288f7335096097827ef968d4ec9805d1 +0xaa8479fabec444bade0582de036b7da52f8dd596 +0xf983dbdd16f26bb20f8c4a44d769d10a634fe66c +0x29cfd33603f39ade9d6c0f8b529cd386561765b3 +0xb5e9fd415c24e4f3a32fee193d0575214a80b2b2 +0xc731375d8ca2e6cc6ffd4d6dd9652285b22abeed +0x8e8435f872fa26106d73a80329a5e7e9408152f1 +0x204a1f3000ba646d303b0a02355120b371a2b085 +0x5fd125b1a4fbf6189e2bf9900018c28bb7b53989 +0x600f9b9ecb9aca7d296750d6302e6cff42877834 +0xf4ed89520a597f00f9434823ab44e5718eabc7b5 +0x3b043fcfe11d5d5b6f60d2b14ff47803fbac3911 +0x43b2a5591107faa3925cdd5a6f3e26de55320b37 +0x3306bec50e1a5070283d900c886de11ecc3ab74e +0xc8274bdb86c3f47680f5a54e853c7832fca7d8fb +0xacc5d63427f79f55b7912b1947dea6a6e7fc00c2 +0xb1f85694501354579d5a464a8ba83c785986d358 +0xe95338d3b53e2bf8449a0ca446fa34d51365d034 +0xb94d525040b70465652537a0b7166e6d9a3a2682 +0xcd12768bcaea0acb9466739029c6a97805269090 +0x568d2d0e72e4456abea5a201888fd4f4db5d1afc +0xe9eee3acc39c4a4e4a8c38d0418e2b0365d1352f +0xa51a59fbf33032d8c902005c7dc396cd99799d3f +0x191baf3d93f12181c89caa043da7f6aa92f1316b +0x0315e2b2d876e3f310fc2661082ae7353f65d205 +0x7ce8b53429a170b53ac157baaff98987394b895a +0xb13a91a1b9a3e8428547abe0fb1e2cc6e9f1440e +0x3a938d44b975b21caf6a7254d3eecefd2465b849 +0x1a062c71eb7a13f1d219538f34f63b09bb9081a0 +0xdaeced46b69411cc2c85793179476a923957bcc7 +0x9db64d8dd20986fdc7684df6d27f2d7501827666 +0x713cafc59fbb7fda4196ed099eced1064b32eefa +0x67200748338c6fa31abdeb436a23bd7286b42fee +0x2adae558ea07dbfed49f66a7ca3f584f3ce81c31 +0x31e65189ab8e625509aa72de5f27a04692ce578c +0xbcd091f39ae03fcc554a0e9ff1f0fd2be4146b74 +0x57947dcbbf4c57f1eed585de6ec0dbdd2e231d8b +0xa02b849715d35250c4fda2f402bde48c186166cf +0x96621bef13e55ef84a4bcbf1b01182adba17c282 +0xe5f95d1cf57b5bfe688e3c5f54999aad28ce6440 +0xf275406bc5e5aa3848eae8c96d58ffe21a5830d8 +0x22d088bd6de9c506a451b65efc591279c4afb4c5 +0xe83d8c8410efeea34181c65e978b9cc25dbe02e6 +0xb96131264408240dea0a0d9d3cbf78737b50ef1f +0x967aedfa0ffa8c6f7360ef29081226db0bd569b2 +0xd3d149e651bf14a68faadb499a0cb88fea4c89c8 +0xaf7665c90152ebfb1cba439db2a1307794e4e54e +0xd8085fac245b087aeec2022d926cc1335b3f8f3d +0xde150b6b531853a3e66211bf3521632a739a8514 +0xf8860437b4736e3e97ec122e1c339206936c053b +0x0417fce7de820cbbc9f7447d128675b3ed59c09c +0x8d703306368448bc3cf6a18d016a30bd6f731e87 +0xe259b9cb529169d275e274ea5e8f86bf33114b66 +0x46c6ae654129374f662231c97d9b21081dc17247 +0x77553d2e0998edb4da9e1c7db8e396a37f350385 +0x942779922ff93698dd6f31bd567676d8d398a0d8 +0x35930f54cbba7cf2098b5d30abd8eaec2c74def4 +0xfc48632fc36c11ccd441f011ad27544ca26e06e1 +0xee0464b91096a981901f57745e1ae23262ad1bd3 +0xee530170873255bc4bc165ce458df05696a58253 +0x32f5a72da7d68a88171d241bd801252c372580b7 +0xdfa52da957a60112506835c1a0798b80ddc84a44 +0x215fd0a801f7dae7fdc9dd5193e190705cf39a4b +0x8a5378b4b41ff64eca3f2ee2cd17490a6771338b +0xf39cc140f8ac2c940888dcc69cbdc7eca0343d56 +0x8c601a2bedec15a561422186b351da7976dd0caa +0xed2543e2b54de4a466410153bc107077952251a1 +0x9754066c8725c7072beef7147c373b69d29478b7 +0x75afb5659ed0949079109d9ecf3d38ac418e8727 +0x7c1bca8aff8e84dfdae29cd3c2fcd37eba6c5204 +0x54f137687dbd81dc6d8c9e9189be61b05035fc78 +0x701bfee1ed2ba2481c2ebba27cee701a73ca6df2 +0xe8ede209167c0e233d8a925d3ef9749bf6bb29cf +0x866f78b27f0466038b5404a8d448278b9e1b76f1 +0xfe82e100b39d3d39ec713407490e250af9d5808b +0x66a8240f0ebdad2c6913983686cd6596eccc8274 +0x82416db4a18b1a9f3bf55be51ef90f72536b42aa +0x8f16ba9f3420c742b403a48ffe150d285abe5146 +0xa234df9cb186f32fb15adca48029379b2e71a1c3 +0x06ec7e205a5ded056780b795d1a5079f8e14f114 +0x7b64598b723c5c83e6939fa8e94c59e13f33de58 +0xaa1a147ad25241bc5fc32880c4d554957a68ec75 +0x2fc2d6eb64732d5838fb6fb3ed862460be196bc9 +0x666fc91fbd56a7c613231f07ae96d09fa8e78353 +0x4be5c436aa0db285faf0169e11673edfa302b79d +0x0a5feeb365b37406f53496aa95e901fde5dd8285 +0x486add597047ba96c75fbea1c11df556b634deb0 +0x7ea7c5cefcfff30a9632f2fef9fdb9c39247e32b +0xbf6b2e67b94641f6993d123c0bd3d8ea2ccc680c +0x0225e0aa9f0dd0110283c4aa46761ee96c0a2059 +0x8509fe133b463a23ada5ce842df3f9cab8f2e3e8 +0x4698f3c767819b2131ad6dcb7f2c086ff08c5d04 +0x061a0aa0fa376af8aa47d3fc4dbf148f11a70af7 +0xffae3befb584616a4c3b3951b6a43551ec0e7985 +0x4d357e5d64134234a4f2490f8cfc0fd51d998506 +0xba244b820a40224f6dc94f967063bbf2c89fd3fd +0xcb74cc32fd5c8b6e2bc273a1de6bb9cd38f77060 +0xe2bcc9052dd93bc9ac80b2538f6726b2453875d0 +0x6ef3683b874d80b594b0e8ec52cd834fe5997a33 +0xfb1b441c18cc44b1480904bed7050d305c8a1de5 +0x67d8cf2975a97a3e99061306d6cf289552778747 +0x50258b734a217d37fa700742faeadc7a5b16fd4b +0x84fb154dbbfb665c52382cb954cd1bd692190616 +0x78d0d4c08e352fb4ecfa69da53b1fd6941d90d88 +0x5d9838754b503e0a8313aa8edc5ed2c17e4f7a93 +0x2249580f20707c6661835772941ea353727234eb +0x770b08ea52d19c919fbfd5c235d88a57bf37e35c +0x580ac1923d82c58f1e8ea1a2923fd735da39b0a4 +0x0286239395815b8a9bf83fea0715f9433bde66c7 +0x4d51d16fb97422b72f28f297079e85e9644348ed +0xb5d29012887fa272062a4c19316af3bb35cad2c5 +0x7ad05863caa866688ff8cb98cda8ca30835d8db8 +0x481297ceea5007739f3925d6d89003d2f6853107 +0x5558306641335f80a800fab86affd15223e7f4c3 +0xacb021020dba23d00d2b44987c1faf69fbe19aa9 +0x964eca8d69ee1ba5780bb51d7e2c33a0824b7750 +0xc0134c2740114fab5e10f1bba6020c0db4411491 +0xd7e17f8fa8a694b78d83fb8fa3d19bec78bf48b6 +0xfd2e11460867981d2a6e3438e372abe59f709758 +0x366eb9468db297f8327d1e980ea7e54b59fd13ef +0x2b9c8500f05f5dc976ef808b4c947674d4c3aa23 +0x5c4925c088cb880169a960f4002ce500e6c63ea9 +0x5372b4bfb34de830b89880531af840480efa0e62 +0x30654a862a84ca579fb612961d17ebfe63a9b58f +0x57f70650cf4286233e4e4d7b64e67d1636b5884b +0x77d6a9da457a9921a7efb34477027e974cd5c774 +0xab182401cbd5e24230c13af15d9c8b63aa76a84f +0x044888c210a9c57feb6f57d7c72f46ce137cf543 +0xaddb889126ba40a25e423f2eb53903db5c29a33b +0xdf54765d3664f5c07ae451cecc988d7fb7fb6fac +0x3c5aa8b3e5a42fe6b001cc85dd5b1fcde1f5ef1f +0x293a1fd7e89710b4318cdb873993dab88099af9c +0xdd32243cf8bca854059de61f0c9248807c521703 +0x49d68b41eb7a151c4af4bb822d2645fd7e7919fc +0xdd1f905058236c7dd9d390cc183ccf4953ef826e +0xc4c97ef8b0a955b292dca65ecb7fb3517cafd2c4 +0xef383701e2621e1e5d32afc622e29d9bef64fdc6 +0x6639bb00436dc2b1f7cba4750067f5a19991e754 +0x155d448779770a0ddce2fe543f3dd449dd4ab308 +0xc2244f81b7f0137b979c0619632a3cb81a6ed72a +0x07a5fe8403711047abd1ffe6056c412ca898ad2c +0x8b6535d58265579c74923c091b2a14a9b0994df1 +0xb6a74d5e9effa513f2a656b16685a8da27e5ff0c +0xdce718aceaecd72277c4b26cdfd46b712fdf1e57 +0xc4a824af34b63ff8b901a0b1ff96644225d2a763 +0xeeadcf6cec4c63174058a03c02690fafb21d4a95 +0x1a51b86f0d59d748bb8bb7685eb575a11a6147db +0xb380fc4a818d7076052c683ca11e22d29e42a0be +0x96bd34c2c6fbf1e24165aaa674dcc14191e8623e +0x5e2a109f1919df27df6d603d8b5b27788d87a22f +0x89e9c21ca783c9166b63b366ba558b599ccf4fa1 +0xe6dd7c4dcfaefadef52bc33812efe71b0fc05dfb +0x633bf53363744d3a0493cff0736f056fb1c1408f +0xf87b7bd6f5275468e612141ae33a5000a0be010b +0xff4db02518ef1250f10e28fb07a7bec54cae1273 +0x894ae195f6ccb4b4ffa0dc3fcf73af7db6319d9f +0x0e352ee34bf48535c7db65e5462ca4f5b35b1f20 +0xc8399ab545776089aa159a57b17cd80559b6b48b +0x65d67d49d725ab631997b03700f7f4e2d6136648 +0x442667a2f0c30f6bd6de162717c928765d0199d9 +0xbbb1f447b4a9f8f01eda8e7149670e1b1aa74c46 +0x6ca96ce68b4119a3a53fd9c9f88d76a22f0ac283 +0x165ce7fe427cc7d85a83e3f6c9f4f4fe743c1be1 +0x6b2b97147a87407bd825c1bc36056df6dabe3e53 +0x9d8f53465c1a082b745ac33d63be94420dfe992f +0x119669dd5e03df3aac29b6e0582454f7de7faac6 +0x6c5e99b5fccef47c8d9ee26a99a866b3566c1c3a +0x19af100f194224bb95ed00baf42ca8080b32bc35 +0xe6ebe48f41875208b521c01bbe17756db926dae6 +0x1a9ac9901f572fc6b07f31fd2c47303f4315948a +0xbdf91fda8996e5a5645aebf1211176c8545a5dc7 +0x3656a0e43c8ecd8b9f50fb7ca07a1c528b24868d +0x26b37280c413b35b11f28e0865731f8713b3c33d +0x5576ef803b7a8218fef0e30605eb2a0bac274dd1 +0xeb7e64f20f7fb1b4a1b026148be3399f91e806f0 +0x486ca26fdd5fb3d613691b664acb19b169957653 +0x9f8b4aac7e4a4810a437c726f1ebd1de39815dd4 +0xa14acb3a87c5b34076a5b4f7741409d3c1848612 +0x2eece36d9f70d11ca74a18f52a4153adc97a4d94 +0x8e6a87965548a95e5791b3c58a2e6d099de0a4a2 +0x99f24a5f8fd1a64e1d60178d2c80c4dccefef305 +0x64cfafcf6f0a3aee5e15e9a76542e6d4ae24706a +0xcc26a0ed1c34eb9dde1ef10f0667fe02559e5ba9 +0xb3de73aaac3fe8e1ce7977831ff83d58c964e094 +0x7b8bc0e4cc9d00310598a656f29a79f9ccf4397e +0xdbc5a864e05b49f4de1c3f0331fc50e553e89f80 +0xafb4d9567a8f1f1142a350e24c7e1fc273795a9c +0xc1a2574e29f2166b2d00794053afd060d37f210e +0x0556df4e26adaf9f0b8149738d8059ed0ab05033 +0x440d343b1708f571feca48fb7c11ba1f3895d343 +0xdcd87dc853de369813f2ff12561522dec08bbf0e +0x2db71900c620d201d77dba76511d1db3a35ca590 +0x190e553d765453e47c2f494c5b0ade85cc3efb67 +0x3d3aa7d9bcc1ff6fe6bcfdce441115a8bca1e531 +0x6db887d2672a281609fae68a573280afc9958ea7 +0x0f54e840364f9ee022b75eefa06442f038acd60d +0xed48cbafff734bd91163f433b107cf691234d342 +0x9765c0d13177d114430c2b1b9061a25491d49b1e +0x48e02cb6b6b3b2616016c58c779193f957b37504 +0x4af7c842fd4443a5b705568c5021a5fa0abf2244 +0xbaec84908378cbb2af17c62b8c2732e51ade3837 +0x6bcd07eac967128837cbb6b03af1f84ae9a75464 +0x6690ab59de6571adc68fdd52e1b1f37d438add0e +0x64ef850e4a224aa121b3c298077e236b10a70cfd +0xfb44a37cb74253c47fbc3da5bc2d1416b9cf8249 +0x4c41fb53cd5b18a0250d0ca7c2e8b77e6f4461cc +0xec15163cb14d51a756ca8b78a8d2250a3cd04448 +0xe3a9bc8fb4ba8ea54288df8f2912058dd2b1287c +0x6b036a9f001c297c7c7dc45039fce9e21cfb6256 +0x4b48bdeb1414be388c1cdbda826b08aa2b3f4bc7 +0xa8e11bec928bbb36c9309a6f83565accb1db1a1c +0x69313045a4e7b08318bb202f5fa4dafe801f58de +0x54707778c4eed8dae5b9e9cda29e7dc087107cc6 +0x3beb269fb33332036831f6d66aa932b5671fd266 +0x60290ab2b9d8a0c926bd22ec586c2c9989704e7a +0x3bb97bb7d719ffcbe25b526034f866fb8bf4082a +0xc63c5fdc669e42078094a7542ee49c0d8215dda8 +0xb9cc08dd2f50d2f8f78a5d71fcd370076ae43244 +0xbc792d977ea7bc08dc5c1c220359f5f4f79a0375 +0x7cf9a139dd2afd5ca301115c0f185c29c1074def +0x63721a6bd2c7341fbaa203d403f5d849465db806 +0x09b4a33abdc34642b9be3b92b00a4c7f5693b0ca +0x82350e79a144765430b2648c85aa93b9203de4c4 +0xbccb0ae2de1635146ae235909a145628bdebfcba +0xab9e8aaad4ca589e7c6d04e8cbe02f983c55f5d1 +0x24971aef84811264798375cf5a9399b7ef70d0ec +0x76f8db239be8fdf928c74f38af039a8bd9bf44f0 +0xb9e9aeebbbd4ddcf3bd8114575cd6d01c05ed92b +0x37fc8de93b10b7c33f70ea731b40fc7f85e10887 +0x6db36ada36f9c2113177b14215f16b91b034d6e6 +0x1a9f609654cb68d80fd4b78672e72798f86d0188 +0x7719d52bdbd88254e5e1396062299d68e7e0b293 +0xd63471dbe606b6fbf548ac116c54d19767855ef1 +0x4f5819c26c88969f529263775ae8627872ec36b5 +0x59c5ccbea833061ff341794b4a32903ccc93151e +0x48ac428f7c77c6b5c9fa6e74535ef5629eeb95a0 +0xaaa540b159d7c4eeb82310e46067122b519d0399 +0x921a5808734327d3e47e1782ff983377a0534a78 +0xce575f08ead7541729cdc1c35d9884422d0b87f2 +0xc700eb6cb795ee3e01d14b6237738aed4e8de33a +0x75af28b52d817db7772d18e68b28cea750217ffd +0xc33efa73b5464235192a7d10e43bd3011856a776 +0x66d621576566a85e0e6508557e61f816b40a8e2e +0x2834e922a069468edb5b072d2972ef6a52cca479 +0x38eabcde2b9904454ae72aff32c66d75aec51241 +0xad787842b7beac2be2edb969acfdb1e139179011 +0x39293090e9684f7ec4f28da26b515c7b5a5131b2 +0x6c57216cf9f83c3464ac9f73cf325bf8a6524238 +0xa7eda99bc1a3ace999277a80b53daf8c6dbc1ba3 +0x9867ae1f25b35a1bce62435cfbfbd7280fe35701 +0x3c95d2e6e370cabb895329410d62eee0adb5b279 +0xa938b7da8d6f1c2604b0ba3cc2d095bcc1062f22 +0x05c81715988249f33e94ed66ba7febe6a56a89e2 +0x6d9901c38d72749c8aae06ed8d4beeb41603920d +0xbb50cefd65c70fb909b38146ee8eed30166c742b +0xae171f5c8bfc3c1967fc9c6dc4c7ee178f720f04 +0xc64985bac604c183b90d8161e732b60ffca67e9a +0xe0361c2a4574fcb6e2fd062d8c92791a13ff21ed +0xb82d5e68ecb1bd6b6b320cd1381db5905878bbf3 +0x89928f179460dc8cd7e1cb806cf6419923baf88a +0x6ebb2134ada2beba664282bc734780a03afa8966 +0x753855a95e47dd92edc2bdc27efbbbc2e222f9fc +0x03ec4835c11c7a03a841c3cc4bde953df7864b17 +0x439ec4b715d9d5220b4b4fdfe94091ecf7b4dd9e +0x5f55c3c83a4da7d3044bb272122f0c15dae3b016 +0xba475def5163e0c8bd91abc62c7d6ede77820392 +0xb7cde7c051f07d529413e318ec21ec2edadce3db +0xdf8f476e3b03b378c936e3948fb1969bcabe45d2 +0x7083f2b09c6d2bc852d29efb2bcf9050fcda343d +0xa4a5813a2cf2dc120fa95ea1a5a306baca19c04e +0xabbf764988283c6e72abeef15dfdcb450c24eaa7 +0x4c062d01264abd3af63b652db078d79cede3c61d +0xed09e2b097c8993436039c27060f63e31351cbb2 +0xf261b181262574a12c223a77c9ec528b9213770f +0x1fd7b0392286f6b802dcc463b3289fdc6cdbe72a +0x63506638983c9ef65a5d52c73801b0fbefacf173 +0x171b02a138cf5649eafedc8b5362b1d5bc7f4580 +0xbd7a30fcbc89c478d5c749c8d36120c25bb18cab +0x241a4be876b3aa8b19df0f2c6aab0ce9c47f5081 +0xc58072b32e807c59e72771063e72c1850bf6527d +0xaabaa08f560e635e860b3030265b2cfc79fe9b56 +0xfbfeee86bdfc1a0b8978d8ccda805ca49a720070 +0xe3dd8737f7d80d37c2b07aaee73e876e06f80dc7 +0xea66310e885b75690e72e0080b17134e9b50da7b +0x94fe7a1591a75d6eb708598b9bb6200fd2abc7c9 +0x9bc17b7c5302277ba174239f05c6e57b60b88a06 +0xb0d596a43e68a71911d8437c5712bab95028ab82 +0xa42bf09adf3867be41a5c53a37a31d5f8162a6d7 +0xf9cf57c2832a7d0fbe1a03f94c70034e5b8ecf64 +0x470bf7eebe3e4d6241a9ccc77356b5fa38fe9a90 +0x83c35f5a10435be34fcc286d7fe9e1a66f91a98b +0x9255f118d491b10514c6b4cbad8ce59f514a2ac2 +0x42e806ec9b6688004bff57a4ca5f2b5fba551d58 +0x6760d8f1af7ee8a440677b57f6728ac71954061e +0xd591461817bdb08eb1c353d3e0e84625d7056bb4 +0x0968d0075c5f9875bd8ddb57086e304ed1cffeb8 +0x95978e53383a88704934e95c9d66c52967e92efd +0xca611f7b8bc00019d49f48da0c5460835d39b3df +0x904398b6e438a3f1d5fb9c009abcbeee12a662c1 +0xf772ec8a3bbdb1cef91d76c2b557a5b95a36c02b +0xef769ee0c5474bff0d3920ed80dcf15d6dc3341f +0x1b479fbe27115c66c1a715e8ad3f6548d326afcc +0x6e6e196683d6c3568ceccface0ab716beab7ea05 +0xd8dfbe79bc2b531c0c4ae7d2edea5ff87ee38b94 +0x4b10ed99aebe7f5642ef4dd80c101feb806d63aa +0x95ce0d244a58156cf15d9f6f31a03350cb6024e1 +0x2e8262032a20141d5dd1910ea0aa2918ac1380e7 +0x8340feda75afc1966b8ca20ef2aeb6182cb6cd77 +0xbba99d030d369296a9e23fd34b41c3197e37324f +0xaf3d507f96d06c0b2eb18b16b521adc6f2c618ed +0xfc984906809e9bba148fb7f1ba0428621d6440b1 +0xd4e3887fce15c4191d3b1e0a767f673ac5f3bd18 +0x455ee62371007b039fbfb0a041fa950d714b47e2 +0x1e212dd1f36175c1fb08757d8cc769a02927a25f +0x4268ef88ae49e2d32db53bdee3ecf526060ace2e +0x04a6ede1bef6cb67130d5a7cd1aa77a32c98f921 +0x80b6290c3b34bdbbb7a56f3891ba98c1044ff66b +0xc6c7eb24692a9f439f75fdf2e4c66b32f0e4bab1 +0x48e9df5efffdc85c121a364f594b9a292b46dac6 +0x5a9d45caf3bae805e1ac6bd5806ecb6fd93165b3 +0xe6336eb819babbcb98a1b38daac4400b2f1fd79f +0xb3b3ef594d9b7442e60ff527c69ab1fbe6a87cd2 +0x10ac89c85bbdf43c8e5b8e769265cdfb875d58ef +0x9aa68032b29b01084d6fd5942e732bfa30c6355e +0xd0705148af4b8df3b3f4419266818b5d84af6772 +0x611006cea684ccc747cd488be9219dad56b8a576 +0xd03cf40a7c20afc9b636e1e967bfcbe3a724d278 +0x03bf84067327410d5d91cef51fd323e569e5008c +0xa9a2eac044e20ad83d673522d9d1bbb963017c56 +0xe3e75ca041784346990fad6fc036baa07dd4a139 +0xc15e2be30fb88010c54995503514382819a116e0 +0x854dc7713fedc62faa8f2c2ea6d970450664a010 +0xd41c8657e19b7e7a8160ca95e981dfcb104d0dc8 +0x54e6d662f907ec42b37100b855d6745e73834ccc +0x725a10f19ea3d0f3725a1c4e1ad724b0a17622e7 +0x6c36bf6e78bc001114d3fa92fb95dba831d9c3f4 +0xf2223537f0103ff4bb78f78a88ce8b4540fc09d5 +0x9d67cc19ae912eb7242186b90a08628ce69b6616 +0x4c774964ce5167c53d3f5c126b48276c49a86d46 +0x6b83e6305f58df9dc3794ee6c2faf2ed336f475a +0x54e9fe1e21072883f553fb17bbac69bb5c1ca58d +0x563978bdbdde664e7506af385f9c892a0bf0d157 +0x7ac1af6920856b03237aa1742c88f60d907631fb +0xfd782d751244ffaf6e07c267847297932a814033 +0x52919655014394fb5b2a86465fdac9045074c6e6 +0x4b7f88317a169ff603a2ab33abc3b370caf4b209 +0xc110d144ae70084cb3a99867e2b5b82b42e343b0 +0x12db4223856b08a27a06afd3fd4af6fb529d378b +0x216083ff662357779459c1c773be3c55bc456ece +0xc1dba408161a7ff471704f869c97f193815d4159 +0xcb6539c9828e3fe429a1b75d5aebf0fd4973fe5f +0xb5100160523653b8e74ed15706ded37d6a5436ae +0x2bd770facafb6233a50faf8863ad70e65c42ebcb +0xc984154414531d62304dc3f7b5491bdf3bb39cb8 +0x9ae59ff1f189b4279ca36c29fb71ee9cb7b8c637 +0xb96cdd11ef243f841a855e61c8edd3f1076d09fb +0x4e78474314c8506336b0782bd028f6caec311a33 +0x79e145e6aca6b0bf00f32a5f9d8b80b64e8236e0 +0x42bedcce54ba9fe57ea373827b0739f11686c25a +0x0205bc5db386e07c83f148f2efec320544095329 +0x2dc8ac21fbc8c8663fe5c9222398db521d95884f +0x91dbf3ac334ffd92f521416cc74f4f975533e227 +0x7264f1279fe6ebce16a8636baea0e34e57ce1d7c +0x1ff5881c1ab5721024f35cd689a61fdeeac3f28e +0x0d048cd0c5e91d5718f7e74cff01f118bec5c23a +0x3afddd634bdec62a4d32e97c05d3c037f9d8be78 +0xdf6969ed24c80be0b2fbd3523f15465d11561d9c +0x6a3a7bf6bef14e4080e4f3965385f255a7be1ce2 +0x0de25ea3bb1e6157c6151f07ecb76bd31adcfb92 +0xd54e868cdaaa07600ddf68b15807fe81f91c8fe2 +0xb59c1ad0f18c3c69668556bd3301c419c1f22d2b +0x9fbc74269fef62619d95b1c29c688af008e15fc8 +0x9adbb35bfd5bde770da0ae257d3d09a2edc7b77e +0xfc58e3c058c4e320fc07c278321a1ff5dbaf74cf +0xa17b707215d942786e0b6e892d59171a5a0bfaec +0x6b7453d0c77073a2069530beaab6604400787f45 +0xd5d4d1211258cb1ae643684e4962d0d1a58d476e +0x8afcb03fa89dae1649493b82ef65eef510cc0677 +0x82538e8bab0ae130c63699dc1b3039bfa7a4d2ac +0x84b9c77c63954f5855a692f53c06ae5c2c6bb447 +0x149ee36a377a3293207e7cbed9404a6e772a8cd9 +0x74ee7c22b14058f34c0472142f4561ad038c6982 +0x0259b9cd1226a7d15051e9ced0f8bd98dc2bc757 +0x6ab6c66a0bfdb9704b7e976c023f20653a888a08 +0x177b6079d8f124285bd1e955af2279e0a6185e6a +0xad0f98280935fea27de57948ba5d5bf18be4f28c +0x3254ad5c2d49afd2f40f23f1131d07ad32fd2dcf +0xacf2f3b06e030b8489b813692bb310a67d3b9f24 +0x68bcd8168018424c2b1b63f017877dcae49b654f +0xc3f906a7f673181b7be42c02aee78c634cb3245e +0x2e9e73494e82a05d62f9d4c6a6c7fa436bf82732 +0xfe03e2e7a027abc6906a604fd226fafc2a974e11 +0xc64d416ce06c9ee56c28166a8b7db8bcb0a0f9dc +0xb38e290cb9982ca91f6605c2edd442cc4e4df685 +0x72ebd3f09488a7d44d9d481fa3d4bf50d1d48553 +0x3fa60a75615d4d2d598e2734f74deb66181de7af +0x204c36abbca17deb6e544d9ecf61e56cdfbf649c +0x8708e6a1f79cc560854e59e74c735137ef513eb2 +0x93d12efa1d6b954ff228757b4381646d59621f1f +0xf995f170b41fffb36042071c385527cae0f10467 +0x5d01a1108849e31236ed8a766c08eac4b400741f +0x67265facf0e2d653137d480aa043e0c671acede9 +0x35e216380af0eed8b36a53c3a28829a6b0ba7c51 +0x84f21c4feb674de0c6dcff820785df2b06f77fa3 +0x86443160c0cdcdf18c2a90c9641cb67a5bf194ea +0xeeeb8c1957d1642ca6cf28fbdb1305cfa85beb0d +0xbc5f23bbcb74ef3cb16e323e754dce14edce8e5e +0x3f4e40bd164ba15b7f71edc67c39a7b2f96b9671 +0x4eaabbe59b331dfa7411e3a0a7d531e049004825 +0x004093bfa678d2cca96858492d9e64c59c8753da +0xe60e440d2ee44f441f489ee4a5a4c7ce91850c38 +0x6da3f24096051f3c989044bc0981e8a897a0ad59 +0x22d92fde87f605fb3c364cf8e205fe5beb6ccc31 +0xfaff67c467b81729e0c0a319043c2b039ffc4a92 +0xb06bc306e8edcaa946ea297b9b8bc4c24372b647 +0x439da1bd89cf86eb513d05d81a1657edd74b3368 +0x0c65573736d6bd7ef333c6d312fba73e49d930c9 +0xa63cab53badeb28896bd83843d7d4b424c89c8f1 +0x1bdcf3638cb2d6d5caa127a88edf7bb77c67f7f1 +0x6ec0f875c6159a0de61a34fa40df9d586771c9fb +0x13a08509b279e9e15e73b2dc887b58b30281f353 +0xade84fee3ec093468f9715ac2874c983532925fe +0x7cc5f362d45f663fe983e79ec81f06d0382e88f9 +0xe6a6d06e47e04f7bac945cbf7116ea71d43034bd +0xb99f2d65b8ba418e34448a0a9f5b9b28beee3135 +0x2f6a2fa0a458c79bd5b1e01f25a722fd1ad0703c +0x63441e7769a9110f11094e4f68393b23f9f50286 +0xba32e9ec605741ccbb1053936f35732814b38415 +0x8e1e393482a58be6ac3907c0842a07aa8d536050 +0xf5a6d1a634d68727eb397e1bfea6778987b14645 +0xef69143285d92882d36df7d0941692fadf9173a7 +0xb3705c02f5f431349fa68e6d5d785c308293ed25 +0xc2290eafcdb553a24242c9f2619032d0413898f9 +0xac94a1b09353dc6d8c2b2dd331ee917ea9a03bac +0x24ce8069c831d564e64432da047aced89d5c68a4 +0x932da768257f7fa3c3a4084e15e607f749898a72 +0x5f043bb20731f82f989189dfb099d7f0ac003baf +0xedfb75e923e305f9afba53da1a396a3217327cc0 +0x8018a0de6bc32d69bc6ca6ebd573f0bdd2fb3bf2 +0xf67d610e3f350bd431468eea6a85acd7a4f4c250 +0x827e45499a2ff5af0d2d5d202add7c68e5ac59ab +0x11c64da2ce7df34d16db89ef8ecbd51f98d3fe51 +0xe2e50f8b1f53664a58b90337f9b58440b283d5e0 +0x8dae0b4d1a2d69d993c4cf8f125dff4f78309527 +0x4472b0d0b385c998b07076dd33ad9a3fc7b53ca7 +0xf0aebd40e74e69e90b87c773a3f43bcd79fc29d0 +0xea31f51ca2357b9f4c6ba431e2d48a7f88fdfad9 +0x186e7a5f3ba0240c3f14c4e643b94249dbbef0a1 +0x282cbd6067c8e670dce538cdab90b7b34f7a7db6 +0x27ebdaed2545660e7be3c0a962134c5e4f8780b3 +0xd873ec2f186562c108bee5b5bb8b5e1d1fa5db14 +0xac898b94a324219f94a0ae9200ad793c25bc9107 +0x9c6cd753373a2c8540e5b8b51c5ce7976e649543 +0x56b6f20b8d0d6d3102aa0c3fb5fe77a928e36e3a +0x076fe794b8c9772435f7309fbd3e38589e873346 +0x775bf41ca05657f962c7a08ee461ba86de9dd9f8 +0x4865097d33a8cf4278ea88bcab100b95d3dbb2ad +0xf0d5568257c97a60a1afd2186714ba94a171420d +0x1955645f7fc90cd66fa91c4a17c37081f1ecc1f1 +0xd28d9eac205f184f9aec9ac8479b85b8bcd6b65d +0x1aab14adecf650b5da541b5b3848e6578dceda99 +0x3cdb0e7a9d302fcd9f6f311f0354b8ec745daf42 +0x8c1add4c2daa944f3c11402558a62dd6c0d2ca6d +0xc4addd0dd7752809b00778047566b7158a8245bf +0x81d16357a0b7d190f3ae96abab1dfcfd54a6d9eb +0x8f949fa39664d5019dd1fcfe5ca6324a30c45cb2 +0x362781af12a0850f0cdb6a6d8f7e5f5fd377fb88 +0xa519ad24d24b8933c41a49a30ad89d0954424ed5 diff --git a/scripts/repadmin.js b/scripts/repadmin.js new file mode 100644 index 0000000..7d7c3ac --- /dev/null +++ b/scripts/repadmin.js @@ -0,0 +1,70 @@ +'use strict'; +require('dotenv').config(); +if (process.env.provider === undefined) { + console.log("please define network provider at .env file"); + process.exit(1); +} + +if (process.env.privateKey === undefined) { + console.log("please define privateKey at .env file"); + process.exit(1); +} + +if (process.env.startIndex === undefined) { + console.log("please define startIndex of the array at .env file"); + process.exit(1); +} + +if (process.env.reputationAdminAddress === undefined) { + console.log("please define reputationAdminAddress at .env file"); + process.exit(1); +} + +if (process.env.amountOfRepToMint === undefined) { + console.log("please define amountOfRepToMint at .env file"); + process.exit(1); +} + +var fs = require('fs'); + + +const Web3 = require('web3'); +const web3 = new Web3(process.env.provider); + + +async function start() { + try { + const account = await web3.eth.accounts.privateKeyToAccount(process.env.privateKey); + await web3.eth.accounts.wallet.add(account); + web3.eth.defaultAccount = account.address; + } catch (e) { + spinner.fail(`Could not obtain an account for migration. Please specify a valid 'private-key' or 'mnemonic'`); + console.error(e); + process.exit(1); +} +console.log("default",web3.eth.defaultAccount); + +var beneficiaries = fs.readFileSync('scripts/beneficiaries.txt').toString().split("\n"); +const ReputationAdmin = require("./ReputationAdmin.json"); +var reputationAdmin = new web3.eth.Contract(ReputationAdmin.abi, process.env.reputationAdminAddress); + +var amountArray = new Array(1000); + +amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "wei")); +var startIndex = parseInt(process.env.startIndex); + +for (var i= startIndex;i< beneficiaries.length;i=i+100) { + console.log("send from index", i ,"to",i+100); + await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) + .send({ + from: web3.eth.defaultAccount, + gasLimit: 8000000, + gasPrice: 10000000000, + }); + console.log("done"); + } +} + +module.exports = { + start +}; From 8af54440c57325bd0ecbee278d2477a54e5c7b28 Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sat, 8 Feb 2020 22:52:21 +0200 Subject: [PATCH 2/8] ether --- scripts/repadmin.js | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/scripts/repadmin.js b/scripts/repadmin.js index 7d7c3ac..6c79a91 100644 --- a/scripts/repadmin.js +++ b/scripts/repadmin.js @@ -50,19 +50,20 @@ var reputationAdmin = new web3.eth.Contract(ReputationAdmin.abi, process.env.re var amountArray = new Array(1000); -amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "wei")); +amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "ether")); +console.log(amountArray) var startIndex = parseInt(process.env.startIndex); -for (var i= startIndex;i< beneficiaries.length;i=i+100) { - console.log("send from index", i ,"to",i+100); - await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) - .send({ - from: web3.eth.defaultAccount, - gasLimit: 8000000, - gasPrice: 10000000000, - }); - console.log("done"); - } +// for (var i= startIndex;i< beneficiaries.length;i=i+100) { +// console.log("send from index", i ,"to",i+100); +// await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) +// .send({ +// from: web3.eth.defaultAccount, +// gasLimit: 8000000, +// gasPrice: 10000000000, +// }); +// console.log("done"); +// } } module.exports = { From 068ebb9fbd5c3a9c4421bde46c005a637b562e12 Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sat, 8 Feb 2020 22:53:03 +0200 Subject: [PATCH 3/8] . --- scripts/repadmin.js | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/scripts/repadmin.js b/scripts/repadmin.js index 6c79a91..e4e08b2 100644 --- a/scripts/repadmin.js +++ b/scripts/repadmin.js @@ -51,19 +51,18 @@ var reputationAdmin = new web3.eth.Contract(ReputationAdmin.abi, process.env.re var amountArray = new Array(1000); amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "ether")); -console.log(amountArray) var startIndex = parseInt(process.env.startIndex); -// for (var i= startIndex;i< beneficiaries.length;i=i+100) { -// console.log("send from index", i ,"to",i+100); -// await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) -// .send({ -// from: web3.eth.defaultAccount, -// gasLimit: 8000000, -// gasPrice: 10000000000, -// }); -// console.log("done"); -// } +for (var i= startIndex;i< beneficiaries.length;i=i+100) { + console.log("send from index", i ,"to",i+100); + await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) + .send({ + from: web3.eth.defaultAccount, + gasLimit: 8000000, + gasPrice: 10000000000, + }); + console.log("done"); + } } module.exports = { From 47a6247a22c2a6e3d7dc1deae939e4b6f9a5c2db Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sat, 8 Feb 2020 23:44:40 +0200 Subject: [PATCH 4/8] fix gas limit --- scripts/repadmin.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scripts/repadmin.js b/scripts/repadmin.js index e4e08b2..9bfb413 100644 --- a/scripts/repadmin.js +++ b/scripts/repadmin.js @@ -47,6 +47,7 @@ console.log("default",web3.eth.defaultAccount); var beneficiaries = fs.readFileSync('scripts/beneficiaries.txt').toString().split("\n"); const ReputationAdmin = require("./ReputationAdmin.json"); var reputationAdmin = new web3.eth.Contract(ReputationAdmin.abi, process.env.reputationAdminAddress); +console.log(reputationAdmin) var amountArray = new Array(1000); @@ -58,12 +59,12 @@ for (var i= startIndex;i< beneficiaries.length;i=i+100) { await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) .send({ from: web3.eth.defaultAccount, - gasLimit: 8000000, - gasPrice: 10000000000, + gasLimit: 7900000, + gasPrice: 1000000000, }); console.log("done"); } -} + } module.exports = { start From 65c22db1601679a88430553130aa678959efe291 Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sat, 8 Feb 2020 23:46:56 +0200 Subject: [PATCH 5/8] m --- scripts/repadmin.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/repadmin.js b/scripts/repadmin.js index 9bfb413..f202110 100644 --- a/scripts/repadmin.js +++ b/scripts/repadmin.js @@ -59,7 +59,7 @@ for (var i= startIndex;i< beneficiaries.length;i=i+100) { await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) .send({ from: web3.eth.defaultAccount, - gasLimit: 7900000, + gasLimit: 10000000, gasPrice: 1000000000, }); console.log("done"); From a5d7f1096af9713d59eb64735b8906100953a94a Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sat, 8 Feb 2020 23:55:28 +0200 Subject: [PATCH 6/8] fix amountsArray --- scripts/repadmin.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/scripts/repadmin.js b/scripts/repadmin.js index f202110..1a0b251 100644 --- a/scripts/repadmin.js +++ b/scripts/repadmin.js @@ -47,16 +47,15 @@ console.log("default",web3.eth.defaultAccount); var beneficiaries = fs.readFileSync('scripts/beneficiaries.txt').toString().split("\n"); const ReputationAdmin = require("./ReputationAdmin.json"); var reputationAdmin = new web3.eth.Contract(ReputationAdmin.abi, process.env.reputationAdminAddress); -console.log(reputationAdmin) -var amountArray = new Array(1000); - -amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "ether")); var startIndex = parseInt(process.env.startIndex); for (var i= startIndex;i< beneficiaries.length;i=i+100) { console.log("send from index", i ,"to",i+100); - await reputationAdmin.methods.reputationMint(beneficiaries.slice(i,i+100),amountArray) + var beneficiariesArray = beneficiaries.slice(i,i+100); + var amountArray = new Array(beneficiariesArray.length); + amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "wei")); + await reputationAdmin.methods.reputationMint(beneficiariesArray,amountArray) .send({ from: web3.eth.defaultAccount, gasLimit: 10000000, From 4820d30ca2682b8b210b390f573df136595f86f4 Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sun, 9 Feb 2020 00:07:10 +0200 Subject: [PATCH 7/8] bartchSize --- scripts/repadmin.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/scripts/repadmin.js b/scripts/repadmin.js index 1a0b251..d9dbaa0 100644 --- a/scripts/repadmin.js +++ b/scripts/repadmin.js @@ -49,10 +49,13 @@ const ReputationAdmin = require("./ReputationAdmin.json"); var reputationAdmin = new web3.eth.Contract(ReputationAdmin.abi, process.env.reputationAdminAddress); var startIndex = parseInt(process.env.startIndex); - -for (var i= startIndex;i< beneficiaries.length;i=i+100) { - console.log("send from index", i ,"to",i+100); - var beneficiariesArray = beneficiaries.slice(i,i+100); +var batchSize = 100; +for (var i= startIndex;i< beneficiaries.length;i=i+batchSize) { + console.log("send from index", i ,"to",i+batchSize); + if (i+batchSize > beneficiaries.length) { + batchSize = beneficiaries.length - i; + } + var beneficiariesArray = beneficiaries.slice(i,i+batchSize); var amountArray = new Array(beneficiariesArray.length); amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "wei")); await reputationAdmin.methods.reputationMint(beneficiariesArray,amountArray) From 132169a5b6eeb371c11146903a6bf98bedff79c0 Mon Sep 17 00:00:00 2001 From: Oren Sokolowsky Date: Sun, 9 Feb 2020 00:28:02 +0200 Subject: [PATCH 8/8] git push --- scripts/repadmin.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/repadmin.js b/scripts/repadmin.js index d9dbaa0..82b094e 100644 --- a/scripts/repadmin.js +++ b/scripts/repadmin.js @@ -57,7 +57,7 @@ for (var i= startIndex;i< beneficiaries.length;i=i+batchSize) { } var beneficiariesArray = beneficiaries.slice(i,i+batchSize); var amountArray = new Array(beneficiariesArray.length); - amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "wei")); + amountArray.fill(web3.utils.toWei(process.env.amountOfRepToMint, "ether")); await reputationAdmin.methods.reputationMint(beneficiariesArray,amountArray) .send({ from: web3.eth.defaultAccount,